Allowing only a single letter for string variable names was a pain though ;)
GO SUB line number isn't the same as using GOTO?
Your memory is a little hazy because the ZX Spectrum had both subroutines and for loops (I believe all Sinclair machines did).
Indeed. But it was a long time ago. I didn't mean to snark. It's forgiveable.
Timex Basic featured on the "clones" they produced is said to be a a superset of Sinclair basic, in which case then Timex Basic has the same features.
I am not 100% when it comes to the ZX81. I did most of my programming on the ZX Spectrum.
I wrote a database engine and front end on it. (There really was no backend and frontend it was all just one program. But the engine was versatile and easy to build a new front end on top of. I tried selling it for a while without luck. (Which was probably a good thing).
Looking back on it now its embarrassing. I had no real idea what a database was, or how to functioned inside. But given my age and tools available it was ok-
It was harder to structure the code because there were no functions and subroutines, just line numbers and goto.
No while, no fors. Just ifs.
When I've learned x86 assembly later, it didn't seem too different to me.
This variant of Basic is more close to Pascal for me than the Basic I've learned.