EndBASIC 0.10: Core language, evolved
jmmv.dev
jmmv.dev
As dang writes, this hit the front page a couple of times before, and in particular some months ago in https://news.ycombinator.com/item?id=31651881 . I answered a lot of questions back then and received the obvious feedback: "There is no GOTO, so this is not BASIC". Well, that has been fixed now in this release :) Be warned that there still are a lot of new/different rough edges...
Please keep the questions/feedback/comments coming and have a happy new year!
ON ERROR RESUME NEXT
... do something ...
IF ERRMSG <> "" THEN RETURN
... do something else ...
IF ERRMSG <> "" THEN RETURN
"""
doesn't seem very different to what that other famous language does (:
I like FreeBasic.. unfortunately no official support for MacOS (only Windows, Linux, DOS).
What I have in mind at the moment is building a better IR and VM, along with a simplified memory model, so that the “assembly language” can be inspected from within the environment and so that PEEK and POKE can become a reality. It’d be nice to have a simplified "full stack" machine in which to play with all levels of abstraction—from high level programming to its assembly counterpart.
But compiling to WASM has also crossed my mind… so I’m not yet sure what I’ll do.
For releases and other content, the endbasic tag in my blog is the best source of information: https://jmmv.dev/tags/endbasic/
Thanks!
In 1983, just out of college, I moved to Seattle with my wife and started working for a firm ("TOM Software") that was porting the Wang Basic-2 language to the then-emerging line of 16 bit microprocessor systems running some variant of UNIX.
I invested a lot of time and effort in the project. It was a great project and I learned a lot about language systems.
I hope this project is similarly rewarding for you. I wish you success and a lot of fun with it!
EndBASIC - https://news.ycombinator.com/item?id=31651881 - June 2022 (118 comments)
EndBASIC [video] - https://news.ycombinator.com/item?id=29317048 - Nov 2021 (4 comments)
Show HN: I've built a BASIC interpreter with DOS-like features for the web - https://news.ycombinator.com/item?id=27744370 - July 2021 (1 comment)
Why am I wasting time on EndBASIC? - https://news.ycombinator.com/item?id=25884859 - Jan 2021 (45 comments)
2022-08-04 https://news.ycombinator.com/item?id=32349516 All about QBasic and QuickBasic
That book is digitized at Archive.org (because of course it is), so I can quote https://archive.org/details/dannydunnhomewor00will/page/136/... after the kids have gotten an award for doing more and harder homework than the rest of the class, through the use of the "Miniac" computer, which they had programmed to do their homework. Professor Bullfich starts,
"Naturally, in order to feed information into the computer you had to know it yourselves. And in order to give the machine the proper instructions for solving problems, you had to know how to solve them yourselves. So, of course, you had to do homework -- and plenty of it."
"Why, simply programming a problem is homework," Dr. Grimes put in.
Looking through it now, they got help from a couple of people affiliated with IBM. The authors also write "In all fairness to Professor Bullfich and Dr. Grimes, we wish to point out their position on homework is supported by Bulletin 1248-3 of the Education Service Bureau, University of Pennsylvania."
For what it's worth, I can't find that bulletin. https://archive.org/details/sim_childhood-education_1957-01_... informs me the title was "What About Homework?"
Thank you for bringing up that old memory!
I tested it and it works. Pretty neat.
There is a little too few keybindings for the editor to be pleasurable to use, and I wish for syntax highlighting and some auto complete.
but overall, lovely work, I particularly enjoyed how you solved editing the current program in memory (edit/list)
I was not aware of this. Will have to do some reading for inspiration!