Completing a Basic Language Interpreter in 2025
Posted3 months agoActive3 months ago
nanochess.orgTechstory
supportivepositive
Debate
10/100
Basic InterpreterRetrocomputingProgramming Languages
Key topics
Basic Interpreter
Retrocomputing
Programming Languages
The author completes a BASIC interpreter for the 1983 Mattel ECS add-on for Intellivision, sparking nostalgia and admiration from the HN community for the technical achievement and retrocomputing history.
Snapshot generated from the HN discussion
Discussion Activity
Moderate engagementFirst comment
24m
Peak period
6
6-12h
Avg / period
2.6
Comment distribution21 data points
Loading chart...
Based on 21 loaded comments
Key moments
- 01Story posted
Oct 12, 2025 at 3:19 PM EDT
3 months ago
Step 01 - 02First comment
Oct 12, 2025 at 3:43 PM EDT
24m after posting
Step 02 - 03Peak activity
6 comments in 6-12h
Hottest window of the conversation
Step 03 - 04Latest activity
Oct 15, 2025 at 12:24 PM EDT
3 months ago
Step 04
Generating AI Summary...
Analyzing up to 500 comments to identify key contributors and discussion patterns
ID: 45560974Type: storyLast synced: 11/20/2025, 7:45:36 PM
Want the full context?
Jump to the original sources
Read the primary article or dive into the live Hacker News thread when you're ready.
Sure it wasn't meant to teach typing? (Maybe I'm thinking of a different game...)
I was really into VR at the time and had been working on live-programmable VR environments, primarily through a text editor component that could render to a 3D object texture. As a demo of the component, I wrote a good-enough BASIC interpreter to ruin the Oregon Trail code.
Writing the interpreter was actually a lot of fun and not that hard, considering I already had a lot of code for processing code syntax for the syntax highlighting feature of the code editor.
Sadly, Web standards have changed a bit too much, I couldn't get traction on my project after Mozilla's AFrame released, so now it's some broken code sitting in a GitHub repo somewhere.
subset?
Fun fact: Hal Finney (yes, that Hal) wrote a BASIC interpreter for the Intellivision back in 1978 or so in a weekend. It was 2K of code. Mattel shipped it on a cartridge.
ROM space was so tight, the only error message it produced was:
Which Hal was very proud of. He showed it to me to make me laugh. At the time I was programming the Mattel Intellivision Roulette cartridge.I don't know that any listings were kept. It never occurred to me to save any of mine. Oh well.
One of the more interesting projects was to make an annotated listing of the 6809 version of MS Basic for the Dragon 32. We learned so much just by studying that code. It was only 16K and yet we spent months on that.
And for stuff we wrote ourselves, a real-time 3D renderer for simple 3D models in 6502 assembly was probably the pinnacle.
Another epiphany was when I was reading the source code for ADVENT (the original Adventure game). There was a comment in the listing "A troll is a modified dwarf". And voila! I discovered inheritance.
https://github.com/slviajero/tinybasic
BootOS, the 512-byte OS written by Oscar Toledo (author of this article), also has a single error message, "Oops".
It was a lot of fun. The assembler I used was really powerful; I used its macro facilities to create ‘rule’ macros that defined the BNF of the language.
Congrats on your own implementation!