[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)