November marked the 40th anniversary of Turbo Pascal, the first Integrated Development Environment (or IDE), which allowed a user to quickly and easily write a program in the Pascal programming language and see it compiled and linked — all in one go — with an executable dropped to disk at the end. Much simpler a process than the traditional model of programming in a text editor, using a compiler to convert the source into object code (often over several passes), and running a linker to integrate any required libraries, Turbo Pascal was friendly, fast, and cheap. Created by Anders Hejlsberg, the development package was released by Borland in November 1983 at a price of $49.99 for both CP/M and DOS-based systems.
Created by Niklaus Wirth in 1970, Pascal is a small and efficient procedural programming language that is easy to use and, thanks to its structured programming nature, was often employed as a language for learning programming concepts at a level higher than traditional, early BASIC. It is in this capacity that I had my first hands-on experiences with the language in an A.P. Computer Science class I took in high school during the late ’80s. Here, at its 40th anniversary, I thought I would share the memories I have of spending time with Turbo Pascal.
Having joined the ranks of the home computing at age 10 on Christmas 1982 and become instantly swept up in all of it, I quickly learned BASIC (in the backroom of a Singer sewing machine store down at the mall, which is a story on its own) and was poring over computer books and magazines constantly. So, I had heard of Pascal. In fact, Texas Instruments offered a UCSD Pascal p-System for my beloved TI-99/4A, which allowed the system to access a large library of Pascal programs out there via their P-Code card which provided a virtual machine for running these platform-agnostic programs, though I never owned that hardware.
Flash forward to my junior year of high school when I took the aforementioned A.P. Computer Science class, taught by the late Col. Ken Jenkins, at Hampton Roads Academy in Newport News, Virginia. At the time, the school had a computer lab full of Apple IIe computers used for teaching BASIC programming and for typing classes. For the APCS class, four or five DOS PCs were setup along the back wall, featuring lovely, amber MDA displays (pictured). These were the systems our small APCS class (I think there were only about five or six of us) used for Pascal classwork, which was done in Turbo Pascal v4 for DOS. (In retrospect, they should also have dropped Z-80 cards in a few of those Apple IIes — the CP/M version of Borland’s IDE ran well in that environment.) The class was a lot of fun and it was great getting my first taste of procedural programming. (And there was a particularly memorable anecdote about a lesson on the unary minus, I recall — but that’s a story for another time.)
I was so enamored by procedural programming and the ease of putting together little projects that could be written, compiled, and tested so easily that I sold my Atari Mega ST2 system and replaced it with a DOS machine, a Tandy 1000TL, in order to be able to use Turbo Pascal at home and to my heart’s content. That’s a fun time to think back on, writing little widget programs doing nothing of consequence just for fun and uploading them to local BBSs.
A couple of years later I had moved on to an Amiga 2000 and was attending college at Christopher Newport University pursuing a Computer Science degree. One of the first programming classes I found myself in used a Pascal compiler running on a PR1ME minicomputer that students dialed into on a 7-bit connection, using Kermit to transfer files, as I recall. Wanting to be able to work on my Pascal programs locally rather than waiting for the mini’s modem pool to be free, I purchased the Macintosh version of Turbo Pascal in hopes of running it on the A-Max Mac emulator I had for my Amiga. It ended up working rather well for me, though the short-lived Mac version was limited in some ways.
Continue reading