Play all my records, keep dancing all night

The BASIC programming language turned fifty on the first of May, that date being the anniversary of professor John Kemeny executing the very first BASIC program on a timesharing system at Dartmouth College in New Hampshire. That first version was a project developed by Kemeny with fellow professor Thomas Kurtz, both of whom wanted to build a programming language that could be picked up and used by students who didn’t necessarily have the mathematical background previously required to learn programming. Since Kemeny and Kurtz wanted BASIC to be easily available, the college copyrighted it but allowed free distribution to anyone who wanted it. That first BASIC program was executed at 4am, setting a precedent for late night programming that continues even now.

BASIC at 50

Happy birthday BASIC, you don’t look a day over 49!

BASIC made the jump to home computing not long after the machines themselves began appearing in the mid 1970s; the MITS Altair 8800 was the first microcomputer to market and, despite shipping without a BASIC onboard, ended up with two notable dialects, one from a barely pubescent Microsoft (which was part of the Altair product catalogue and co-authored by Bill Gates himself) and the other being Tiny BASIC, developed by Dennis Allison and far less expensive. The floodgates opened soon afterwards, with almost every 8-bit computer shipped with some flavour of BASIC in ROM and Microsoft being a popular supplier of interpreters to the manufacturers.

BASIC at 50

Whoops, didn’t use the POKE!

Looking at BASIC’s history from C64CD’s home computing-oriented perspective, it’s interesting to note that Kemeny and Kurtz weren’t happy with any of the home computer implementations of BASIC in part because there was no standardisation between them, meaning that all of the dialects that the author has previously been championing were insufficient in the eyes of the people who created the original language. That lack of standardisation is still a reasonably serious problem to this day with the various implementations such as Dark BASIC, BlitzMax and Visual BASIC all taking elements from their forebears and then ramping up the incompatibility further with specialist commands for graphics, sound and I/O; programs using the graphical features of one dialect of BASIC still aren’t directly compatible with any other dialect in much the same way that BBC BASIC programs need translating for an Amstrad CPC.

BASIC at 50

A terrible misuse of the GOTO command.

There were a few other “haters” around too, noted computer scientist Edsger Dijkstra is quoted as saying that it would be “practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration”[1]. But it was still ROM-based BASIC on microcomputers which introduced a huge number of people to “bedroom” programming in the 1970s and 1980s before giving some of them a leg up into computer industry careers whilst leaving many more with surprisingly happy memories of 10 PRINT in Dixons or magazine type-in listings.

BASIC at 50

It’s my party and I’ll PRINT if I want to.

Your correspondent doesn’t usually “do” birthdays (which pretty much explains why this post was late) but will make an exception here. Happy 50th birthday BASIC! You were an unruly teenager who upset your peers and didn’t do what your parents expected, but your heart was in the right place. Thanks very much for making the early computing experiences of this correspondent and many others so memorable. Now… did anybody bring cake?

[1] Dijkstra was equally harsh about other languages and concepts, noting that he considered object-oriented programming to be an “exceptionally bad idea which could only have originated in California” whilst using COBOL apparently “cripples the mind”.

This entry was posted in Meta Discussion and tagged , , . Bookmark the permalink.