[HN Gopher] Coding a new BASIC interpreter in 2025 to replace a ...
___________________________________________________________________
Coding a new BASIC interpreter in 2025 to replace a slow one
Author : nanochess
Score : 32 points
Date : 2025-09-28 18:28 UTC (2 days ago)
(HTM) web link (nanochess.org)
(TXT) w3m dump (nanochess.org)
| codazoda wrote:
| I applied for a job about 12 years ago where the company was
| still using BASIC for some of their software. If I remember
| correctly it was numbered BASIC, not the more modern stuff. I
| think the software was doing some type of accounting--stuff that
| worked and they didn't want to change.
| Joker_vD wrote:
| > I discovered the pointer to the next line wasn't a good idea,
| because it needed to move every pointer after a line insertion.
|
| Huh? Don't you need to only change the "next-line-pointer" for
| the line that's right before the inserted line?
|
| > but the NEXT changed the line, but on the next statement it
| would lost track and get back to the line following the NEXT. The
| loops also require their own stack, but including the counter
| variable address, a pointer to the TO expression, and a pointer
| to the STEP expression (5 words in total).
|
| Mmm. IIRC, usually the compiled NEXT statement would store the
| pointer to the corresponding FOR statement, so you don't need an
| additional stack for loop depth during the execution. But you
| still need it (or some other sort of chaining) during the program
| input so whatever.
|
| > Typing the program was difficult, as the keyboard bounced a
| lot. This happens when you read too fast the keyboard, so fast
| you can see that effectively the key contact isn't perfect.
|
| Yeah... I've read that keyboard microcontrollers has to deal with
| contact bounce even today.
| analog8374 wrote:
| I love basic
|
| Can you OOPize it?
___________________________________________________________________
(page generated 2025-09-30 23:00 UTC)