Monday, September 17, 2018

Home Computers and Line Numbered BASIC Interpreters

If you're like me, you started using computers back in the early days when a computer was something you could hook up to your television set.  Turn it on and immediately it would greet you with something like:

Super Duper BASIC v2.02
28467 bytes free
Ready
_

This was the most typical way a computer would start up.  You are then in BASIC, ready to explore programming more or less instantly.  There was nothing to download or install.  There was no antivirus software to harass you before you could proceed, and you did not need to boot your computer from a hard disk, log in, and then use a menu system to launch your programming language.

Your computer came with a book (yes, really) that started you on your programming journey in friendly terms, and happy looking cartoons.

In a few minutes you could have a simple example program from the book typed in and then typed RUN to see it in action.  A couple of hours into the book and you were a budding programmer.

There was no need to learn large volumes of functions just to put anything on the screen.  Was it primitive?  You bet.  The good thing about it was that mastery was attainable without going to school.

With computers today?  Forget all that.  I guess you could say that only the most determined people will learn to program now because they have to go exploring into the expanses of the Internet to figure out how to start.

Home computers.  Yup, we called them that before the term personal computer became popular.

The built in BASIC language in these machines is like clay in your hands.
  • Turn on the computer and start coding in seconds.
  • Execute code without a program.  Just type some code by itself and press Enter.
  • Add code to your program one line at a time and just type RUN to try it.
  • Stop and restart a running program.  Change it and resume running.
  • Type a program in from one of many popular magazines.  Learn to program by changing the program to make it your own.  Copying and pasting code from the Internet is just not the same.
People like to say unkind things about that era and all the messy looking code that BASIC encouraged.  I say that interpreted BASIC was a natural fit for that time.  It probably would have been hard to do it any other way.

I think that there are lessons to be learned from all this.  The kinds of computer literacy that we have today is only enough to use the computer to consume.  We only think that we know how to use the computer, but we really only know enough to run apps.

How do we make the real power of computers accessible again?  How can we restore the immediacy and interactivity of a BASIC interpreter to the end user?

You know what?  You can go on ebay and just buy one of these computers.  Prepare to be charmed.  :-)

3 comments:

Stephane Richard said...

Nice article, I have a project that just might be good for you once i'm done. InteractBASIC is it's name and it aims to be a notch beyond what was available to BASIC to this day. I don't have a website for it, or anything close, But I did start on the interact command processor and seeing how it can all integrate with and IDE I'm planning to create just for it.

Carl Gundel said...

Hi, yes I wish you success with that. I agree with this as a concept.

I also want to add some more interactivity to Liberty BASIC. Now you can only evaluate a line of code dynamically while in the debugger, and I would love to expand this idea to give it more of a sandbox feel.

Bart Snell said...

Great article. It reminded me of how much fun I had so many years ago, poking here and there on my 64 and writing simple BASIC programs. In fact I have now set up my old C64 (and C=128 because it has better BASIC) and begun writing a program that will help me count silver coins and return their values based on the current silver spot price and the percentage of silver per coin, etc, etc... It's very cludgy and no doubt could be "cleaned up" but you have no idea how much enjoyment I've received from getting back into programming BASIC code on these old 8 Bit wonders! It's challenging, rewarding and fun while at the same time frustrating and infuriating. What's not to like about that?