My first encounter with a real computer was an HP 9830 series desktop mini computer, sometimes round about 1978. It played a game called 23 matches (a variant of NIM) and it beat me. It beat me the 2nd time too, then I started to think… Then I beat it, then the teacher showed me the program. That looks easy, I thought…

And so I learned to write computer programmes. I started in BASIC on that HP 9830 desktop machine, then via 110 baud dial-up on a thundering old Teletype ASR-33 to the local computing centre (Moray House, Edinburgh), then Apple ][, BBC Micro, etc., etc., etc….

However in a fit of nostalgia, I decided to resurrect some of my old BASIC programs of that era (late 1970s, early 80s) and so I bought an Apple ][ europlus for that authentic experience then decided to write a BASIC interpreter – (How hard can it be?), so I did, and it’s called Return to BASICS – or RTB.

At the time I really wasn’t thinking of what to do with it, then this Raspberry Pi thing started to gather interest, so I decided to order one and see if it would port to their Debian image running in QEMU. And it did. It was as simple as typing ‘make’. That’s the beauty of Linux (and Unix) code – with a few small limitations, everything “just works”.

So now what… I think BASIC is fun and quick – it’s not a “real-world” programming language, and I don’t intend it to be that either, but as something to get some nice graphics going, or as an easy way to interface to hardware like an Arduino, then it’s great!

RTB is a modern programming language inspired by BASIC. It has while/until looping constructs and named functions and procedures which can have local variables and be called recursively. It has  simplified colour scheme (or you can use all 24-bits if you like), and the usual point, line and shape drawing primitives as well as some nice turtle graphics commands.