Addendum to Jeff Shrager's CoRecursive Podcast Interview

Adam Gordon Bell who creates the CoRecursive Podcast recently interviewed Jeff Shrager (founder of ElizaGen.org) about the discovery of the ELIZA code. He did a great job of turning what started out as two hours of making our work fascinating and mysterious! 

For fun, here's a short list of mostly minor errors that we've noticed: 

Adam confused The University of Pennsylvania (UPenn) with Penn State at one point, but mostly got it right. (This is a common confusion; UPenn used to have t-shirts that said "Not Penn State"! :-) 

Jeff called the author of the educational version of ELIZA "Paul Howard". His name is actually "Paul Hayward". 

Adam says at one point that Bernie Cosell worked at Raytheon, and at another point that he worked at BBN. Bernie worked at BBN at the time of the events under discussion; BBN was acquired by Raytheon much later. 

Jeff calls one of the missing functions "MATCH"; it's actually "YMATCH".  

Adam says that SLIP was written in MAD. Actually, SLIP was what we would now call a package that added list processing functionality to MAD. It was written (in this case) in a language (unfortunately) called FAP: the "Fortran Assembly Program".

Jeff claims that MAD weirdly allows you to abbreviate "END" as "E'D". It's true that MAD permits this sort of abbreviation, but there is no "END" keyword; Jeff appears to be referring to the abbreviation: "E'L", which is used where conditional blocks end, and so could me misinterpreted as an abbreviation for "END", but it's really an abbreviation for "End Conditional". (Not that that makes the language any less weird!)

Adam calls the ENIAC "the first general purpose electric computer". ENIAC actually stands for "Electronic Numerical Integrator and Computer", so it was probably best described as the first general purpose ELECTRONIC computer. (I know -- picky picky picky! :-)

Adam implies that ELIZAGen.Org can AUTOMATICALLY tell you something about ELIZA lineages. Would that it were so! There are some notes here and there about what came from what, but the problem that I set out to work on -- building a phylogeny of ELIZA implementations (whether manually or automatically)  -- hasn't been achieved. (If you want to work on this problem, lmk!)  

Adam implies that Anthony Hay started working on his C++ ELIZA in order to understand the rediscovered MAD-SLIP code. Actually, Anthony had been working on his version for some time before he and Jeff even met. It's true that he improved his version based on the discovered code, and that he was instrumental in understanding what the discovered code did. [Jeff did not make this clear in the interview.]

At the very beginning, Jeff says that in a party of philosophers, he'd probably be a linguist. In fact, Jeff has very little reason to fairly call himself a linguist. It would have made much more sense to call himself a molecular biologist in that setting.

Jeff hypothesizes that Bernie Cosell's ELIZA would have been written "at BBN in Maclisp, I guess would be… Well, it was BBN LISP at the time." This is a bit confused (and confusing). Both MacLisp and BBN Lisp were forks from PDP-6 Lisp 1.5, but whatever BBN used at the time (mid 1960s), it apparently wasn't called BBN Lisp until the early 1970s. These details are just messily confusing, and irrelevant. Let's  just say that it was written at BBN in some non-MacLisp branch of Lisp 1.5, whatever it was called at the time at the time. (Note that Bernie's original code is over on the "Commony Know ELIZA Clones" page on this site.)

Adam says: "everybody thought ELIZA was written in LISP [bacause] Snippets of it were published in the original paper, and they looked like LISP S-expressions". This is slightly misleading. The "snippets" Adam is referring to is the DOCTOR conversation driver script, which is published in full in the CACM paper, and, indeed, looks exactly like a Lisp s-expression. And this almost certainly had a part to play in folks thinking that ELIZA was written in Lisp. However, that's not a snippet of ELIZA; It's the ELIZA conversation driver script. Another, probably more important, reason that people thought that ELIZA was written in LISP was that the only known version, until we rediscovered the MAD-SLIP version, was Bernie Cosell's LISP version. 

There is a tiny confusion about Geoff Hinton, who was indeed a newly-minted assistant professor at CMU when Jeff Shrager was a grad student. In the next sentence, however, Adam lumps Hinton together with Simon, Newell, etc. saying "This group, they were the leaders of symbolic AI, what we now call GOFAI. Good old fashioned AI. " This is an unintentional mis-classification; Hinton is definitely not among the leaders of GOFAI; he's one of the leaders of the neo-connectionism, which is the antithesis of GOFAI.

Jeff implies that Simon won his Nobel based on the work that he and Newell did on proving mathematical theorems. This is a gross (and unintentional) minimization of  Simon and Newell's contribution to cognitive science and AI (as well as behavioral economics, which is what Simon actually won the Nobel for). If one had to put a shorthand description to what they were working on it would be "human problem-solving", not merely mathematical theorem-proving.

Speaking of which, it is implied the Simon and Newell were Jeff's advisors at CMU. They were indeed among his advisors, but his committee chair was David Klahr, who built computational models of child development, and the committee included developmental psychologist Bob Siegler, and cognitive scientist John Anderson.

In the outro, Adam makes an interesting connection, pointing out that Ron Garret, who was interviewed on a previous CoRecursive, helped Jeff "retrieve an old LISP version [of ELIZA] from an Apple II floppy." It's true that Ron did this quite amazing piece of vintage hacking, but he did it well before Jeff was collecting ELIZAs, so the causality didn't work in the implied direction; Ron didn't do it on Jeff's behalf.