Tuesday, December 05, 2006


Not infrequently people will post questions in our community forums (http://libertybasic.conforums.com and http://groups.yahoo.com/group/libertybasic) asking how to implement a programming language. Usually someone will chime in with a link to some very detailed tutorials hundreds of pages long. This is fine if the reader is sufficiently well motivated.

The other day I stumbled on a very cool page on Wikipedia about Tiny BASIC, a language implemented many years ago and published in the seminal Dr. Dobbs Journal magazine. I realized that budding language implementors would really go bonkers for this!


Check out the links at the bottom. There are a couple of implementations there written in BASIC with source code. What better way to get your feet wet but to port Tiny BASIC to Liberty BASIC or to your favorite BASIC? Doing the port shouldn't be too hard, and you'll learn enough to venture adding some new commands. :-)


Anonymous said...

This looks neat.

Although it's going to be a pain to convert these to Just Basic's BASIC.

Anonymous said...

A time ago I have came across with Baltie ( http://www.baltie.com ). He's a small magican for teaching programming not by writing text-code but using images as commands. We have started using it in our school 3 years ago and we have a huge response - (see what my son has done http://www.sgp.cz/cz/video/4BaltiesMsg.wmv ).

Carl Gundel said...

Without actually downloading and trying Baltie, I'll say that it looks very cool. I think that there is definitely a place for this kind of programming.

Squeak (http://www.squeakland.org) also has similar ideas except that it is more open ended, so that learners can move from the visual programming to the world of symbolic programming world when they're ready. I think that ultimately that's where it should lead because real programming is extensible using words about ideas, and programming is about modeling ideas. Icons are too limited because if you have a new idea about programming you need a new word or icon. Anyone can type a word, but not so with icons. Not everyone is an artist. ;-)

Thanks for the comment.