Glenn Ehrlich

I, Glenn Ehrlich, do solemnly offer these my responses to The Road to Lisp Survey:

When did you first try Lisp seriously, and which Lisp family member was it?

Well, I'm not the oldest Lisper in the survey (kudos to you, Drew), but I do go quite a ways back. Here's my story.

Wow, this goes back a long way (jostles ancient neurons...). In the mid 1970s as a teen, I was swept up in the new personal computer revolution. I still have my copy of the January 1975 issue of Popular Electronics, introducing the MITS Altair 8800. Two magazines at that time, Creative Computing, and Byte would often have interesting articles about cool and exciting things going on with computers. One such activity, artificial intelligence really caught my imagination. The ability to program a computer to really be like HAL 9000 or the computers of Star Trek was very compelling to a young boy.

In particular, Byte magizine of that time would sometimes have one or two articles devoted to Lisp. Then, in August 1979, in their third language-themed issue, they covered Lisp. These articles were hard to understand for someone still in high school and no education in computer science. But I voraciously read everything I could get my hands on. At the same time, I had a strong interest in Smalltalk, and in September 1977's Scientific American where Alan Kay described the Dynabook and Smalltalk, he also prominently mentioned Lisp as a significant inspiration.

I just had to learn more!

When I got into Arizona State University in 1980, I immediately sought out the computers there and everything in the library I could find about artificial intelligence and Lisp. Unfortunately, ASU didn't have any professors that knew anything about AI, so I was on my own for AI and Lisp. Searching our library, the only book I found was Laurent Siklossy's Let's Talk Lisp. This was a very hard book to read. It did describe the basic structure of Lisp, circa 1976, but it all seemed pretty mysterious to me. For example, there was no quote operator ("'") and the modern style of indented code hadn't been invented yet (see for example, the uncut version of Evolution of Lisp, page 20 , where member is defined in this style).

The other book I was able to track down that year was John Allen's Anatomy of Lisp. This turned out to be extremely influential to me. The best way of describing it was as a primordial version of Structure and Interpretation of Computer Programs (which wouldn't be published until 1984). I still have my copy of Anatomy of Lisp from that time and consider it one of my most prized book posessions.

Unlike the Siklossy book that just seemed to be a mish-mash of CAR, CDR, CONS, and QUOTE without making any sense, Anatomy of Lisp was a beautifully written book. The book concerned itself with data driven programming, data structures and their representation, interface vs. implementation, and how Lisp is implemented. It developed several meta-circular interpreters and compilers in a style very similar to that of SICP. This was pretty heady stuff.

Anyway, I was reading this my first year of college before I even took a computer science course, so when I finally took Intro to Computer Science where we learned Pascal, I had already gotten a very modern treatment of the fundamental issues of computer science, and even had a basic understanding of how a Lisp interpreter and compiler worked.

This proved to be a very powerful mental lever for me, so while everyone else was struggling with Pascal and where the semi-colons go and how to deal with pointers and what not, I had a very solid grounding of what happens behind the scenes. I considered myself very, very lucky that I had innoculated my mind with Lisp before it was calcified by Pascal and the stultifying comp-sci education of the day. I was literally light years ahead of everyone else in my understanding of what "computer science" really means.

Anatomy of Lisp was also important in showing that Lisp just wasn't for AI, that it could be used as a general purpose language.

As far as actually using Lisp, instead of just reading about it, I was able to get the DECUS version of Lisp installed on the math department's PDP-11/70. It was one of those funky Lisp 1.5 inspired implementations that was close enough to Lisp 1.5 to be recognizeable as a Lisp, but different enough from Lisp 1.5 that the Lisp 1.5 manual wasn't really useful in helping me understand how to use it.

It was extraordinarily painful to use. It didn't have macros, the quote read macro, a debugger, inspector, or anything else that we expect in a Lisp today. It did have a rather primitive REPL, but that was about it. Input was via printer terminals, so there was no assistance for matching parenthesis or indentation. I'm really amazed and impressed with all of the Lispers who used punched cards. I can't imagine it.

I pretty much gave up on programming in Lisp because of that primitive, non-standard Lisp, however I kept reading whatever I could get my hands on. A notable book that I read after Anatomy of Lisp was Patrick Henry Winston's first edition of Lisp. It described MacLisp, and a little about Emacs and its integration with Lisp. This sounded really cool to me, and I was bummed that I didn't have access to it. It also was well written and quickly became the standard for learn


This page is linked from:

Glenn Ehrlich Road to Lisp

Other pages sharing this page's categories:

Abhijit Rao Albert Krewinkel's Road to Lisp Alejandro Guillen Road to LISP Alexander Lehmann's Road to Lisp AlexPeake AlexTibbles Andrew Jones-Gonzales's Road to Lisp Andrew Main's Road to Lisp Andrew Philpot's Road to Lisp Artie Gold's Road to LISP Arto Bendiken's Road to Lisp August Sigov's Road to Lisp Ben Holm's Road to Lisp Bill Birch's Road to Lisp Bob Bane's Road to Lisp Bob Bechtel BobHutchison Brad Beveridge - Road to Lisp Bradford W Miller BradMight Brandon Corfman Brendan Van Horn Brian Mastenbrook - Road to Lisp Brian T. Rice Bruce Durling's Road to Lisp Bruce Woodward's Road to Lisp Bulent Murtezaoglu C E C Artime Charlie McMackin Chris Laux's Road to Lisp Chris Smith's Road to Lisp Chris Sonnack's Road to Lisp Chris Van Dusen Chris-Perkins Christian Lynbechs Road to Lisp Christian Nybø Coby Beck Conrad Barski Constantine Vetoshev Damien Sullivan's Road to Lisp Dan Muller Daniel Barlow's Road to Lisp Daniel Pezely's Road to Lisp DARose Dave Fayram's Road to Lisp Dave Pearson Dave Roberts David Douthitt David Golden's Road to Lisp David Mercer David Rush David Thompson's Road to Lisp Denes Cselovszky's Road to Lisp Dirk Gerrits's Road to Lisp DJ Clark's Road to Lisp Donald Fisk's Road to Lisp Donnie Cameron's Road to Lisp Doug Tolton's Road to LIsp Drew Crampsie Drew McDermott Duane Rettig's Road To Lisp Edi Weitz' Road to Lisp Eduardo Muñoz Emre Sevinc Erann Gat's Road to Lisp Eric Hanchrow Erik Enge's Road to Lisp Erik Winkels's Road to Lisp Espen Vestre's Road to Lisp Gabor Melis's Road to Lisp Gareth McCaughan's Road to Lisp Gary King's Road to Lisp Gary Klimowicz's Road to Lisp Geoff Wozniak's Road to Lisp GeoffCant GeoffKnauth George Rogers Road to Lisp Glenn Ehrlich Road to Lisp Gordon Weakliem Heow's Road to Lisp Hoan Ton-That's Road to Lisp Ivan Toshkov's Road To Lisp Jacek Generowicz James Fleming's Road to Lisp Jeff Shrager's Road to Lisp Jimmy Miller's Road to Lisp Jochen Schmidt's Road to Lisp Jock Cooper Joel Ray Holveck John Pallister's road to Lisp John Sturdy John Williams JP Massar Justin Dubs Justin Heyes-Jones's Road To Lisp Kamen Tomov Karl K.'s Road to Lisp Kean Lau's Road to Lisp Kenny Tilton's Road to Lisp KevinZzz Larry Clapp's Road to Lisp Lars Brinkhoff's Road to Lisp Lars Wirzenius Lasse Rasinen Lennart Staflin Louis Theran Mackram Raydan's Road to Lisp Marc Mertens's Road to Lisp Marco Baringer's Road to Lisp Mark Hurd Mark Triggs Mark Wilson MarkBrady Marko Kocic Martin Mikelsons Matthias Benkard's Road to Lisp MattKnox Michael J Forster Michael Naunton's Road to Lisp Mikael Jansson's Road to Lisp Mike Travers Mikel Evins' Road to Lisp Mostafa Razavi's Road to Lisp Myron Wu's Road to LISP Nathan Bloomfield's Road to Lisp Naveen Garg Nick Levine Nicolas Sceaux's Road to Lisp Nikodemus Siivola'a Road to Lisp Nonya B's Road to Lisp Ola Rinta-Koski Ora Lassila's Road to Lisp Pascal Costanza's Road To Lisp Patrick Logan Paul Clevett Paul Foleys Road To Lisp Paul Graham's Road to Lisp Paul Potts Paul Snively PaulKhuong's Road To Lisp Peder O Klingenberg's Road to Lisp Pekka P Pirinen Pete Kirkham Peter Housel's Road to Lisp Peter Lewerin's Road to Lisp Peter Santoro Peter Seibel's Road to Lisp Peter Van Eynde's Road to Lisp Pierre Thierry's Road to Lisp Rainer Joswig's Road to Lisp Ralph Richard Cook Randall Randall's Road to Lisp Reini Urban Robbie Sedgewick's Road to Lisp Robert Marlow Robin Felix's Road to Lisp Robin Kåveland Hansen's Road to Lisp RtL Brian Cully RtL Russell Snow RtLMartinGinkel Sanjay Pande Scott L Burson's Road to Lisp Scott McIntire Scott Michel's Road to Lisp Sean Champ Sebastian Stern's Road to Lisp SimonHeath Sivaram N Slobodan Stephane Belmon's Road To Lisp Steven Harris' Road to Lisp Tage Stabell-Kulø Tayssir John Gabbour's Road to Lisp The Road Jeff Caldwell Took The Road to Lisp Questions Thomas F Burdick's Road to Lisp Thomas M. Hermann's Road to Lisp Thomas Müller Thomas Munro's Road to Lisp Thomas Stenhaug's Road to Lisp Tim Kerchmar TimHaynes Toby Davies' Road to Lisp Tomer Altman tony yelacic VikasGP Vladimir Sedach William Maddox Yuri Niyazov Zach Beane's Road to Lisp Zachery Bir