Thanks for this interesting project! I tried to modify it for MBASIC, a Basic dialect from the CP/M times, and had some success after adding support for a few things such as "ON .. GOTO/GOSUB" and "DATA" & "READ" statements. However, I also found a major issue: whenever there is a GOTO inside a loop (before NEXT), execution flow breaks on JS as we'll have a return statement inside the loop. I couldn't figure out any easy way to solve this (especially as labeled continue and break only work backwards in JS). Perhaps you have some ideas how to fix this?