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 on Christmas morning in 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.
Given the circuitous route I took to get my beloved Turbo Pascal running on the Amiga, doubtless you have concluded that there was no Amiga version of the package. And, you’re right — however, it is a little known fact that at some point Borland planned an Amiga version of Turbo Pascal and even ran a particularly enthusiastic advertisement for it in the premier issue of AmigaWorld magazine back in 1985. Sadly, though, this release never materialized.
Later, I moved on to Turbo C++ for my college coursework (which I ran under the PC-Task PC emulator on my Amiga 1200HD at the time) and, later still, did some of my first professional programming for a local NASA Langley aerospace contractor using the more full-featured Borland C++ package to control a software-driven serial port switcher for a realtime general aviation pilot weather advisor system.
It’s been a long time since I wrote a line of Pascal, perhaps sadly. But, that’s not to say others aren’t doing so, daily. And, I’m not just referring to likeminded retro computing aficionados enjoying Turbo Pascal on their vintage systems. Borland’s Turbo Pascal has evolved into the rapid application development (RAD) environment Delphi, which uses the Object Pascal language. Embarcadero’s Delphi is a modern RAD that deploys native applications to all major desktop and mobile operating systems from a single code-base. It’s worth mentioning that another popular option for Pascal programmers is Free Pascal, which features a text-mode IDE similar to that of Turbo Pascal and supports a graphical IDE similar to that of Delphi. It compiles and deploys to a dizzying array of both modern and not-so-modern targets.
So, Turbo Pascal lives on in spirit, and these are my experiences with it. I hope you’ve enjoyed my little stroll down memory lane, here as the product turns forty. (There’s a programming pun in there, somewhere…)
UPDATE 01/03/2024: It seemed appropriate to return to this post, less than a month after its publication, to mention that on the first of January, creator of the Pascal programming language and software engineering pioneer, Niklaus Wirth, passed away at the age of 89.
Related and informative links:
- Turbo Pascal turns 40 [ Marco Tech Blog ]
- 50 Years of Pascal and Delphi is In Power [ Marco Tech Blog ]
- I first met Philippe Kahn and Turbo Pascal 40 years ago this month [ Embarcadero ]
- 40 years of Turbo Pascal, the coding dinosaur that revolutionized IDEs [ Register]