I was wrong - it was not Peter Deutsch who ported Eliza to Lisp, it was Bernie Cossell at BBN (one of the famous IMP Guys a few years later!). And it is here:
https://github.com/jeffshrager/elizagen.org/tree/master/1966...
That makes a PDP-1 Lisp backport very tempting... amazing how ancient code comes back from presumed extinction.
Kind of a non sequitur: I bought "The Genius of Lisp"[0] and it is not what I thought (a book entirely devoted to the history of Lisp - from MIT to Common Lisp and then to Clojure). Would anyone recommend another book?
[0]: https://www.amazon.com/Genius-Lisp-Cees-Groot/dp/1069886416/
I was puzzled by this: (rplacd (quote tt) (quote ...)) and later (print (cdr (quote tt))).
But it appears to be valid in PDP-1 Lisp (though not in either Lisp 1.5 or modern Lisps). From https://s3data.computerhistory.org/pdp-1/DEC.pdp_1.1964.1026...
"Doing a CDR of an atom is permissible and will get the atom's property list. Doing a CAR of an atom may very easily wreck the system."
> To iterate is human, to recurse divine.
But only if your language has tail recursion resolution!
Written by Peter Deutsch, then a then-high school student on a tiny 4K (admittedly, 4K 18-bit words) machine. Amazingly usable - and lives on in the Python REPL concept.
Our PiDP-1 simulator on github lets you try it out on any Linux machine (not just a Raspberry PI): https://github.com/obsolescence/pidp1
Posting this in the hope that someone will feel triggered to backport Eliza, it was done in the 1960s but it's been lost :-)