Ask HN: Seeking an IPL-V Interpreter

50 points · abrax3141 · 18 hours ago

(Part of) the team who recently reanimated the original ELIZA (https://news.ycombinator.com/item?id=42746506) is now working to reanimate what are often considered the first AIs -- the symbolic heuristic programs built by Newell and co at RAND in the 1950. Most of these programs were written in IPL-V, the fascinating (if ugly) machine level language for a stack machine that was the first to introduce list processing, recursion, and symbolic computing, among other innovations that we take for granted today.

There were many implementations of IPL-V. According to the manual (https://bitsavers.org/pdf/rand/ipl/Information_Processing_La...) implementations existed for at least these machines: B220, CDC 1604 and G-20, Ferranti Mercury, IBM 650, 704, 709-7090, 1620, Philco 2000, UNIVAC 1105 and 1107, and the AN/FSQ-32 (whatever that was). And we know that it was also on the IBM 360 and 7094.

If you have access to a code archive for any of these machines, and can search it for the IPL-V interpreter, we would greatly appreciate it. (A print out is fine -- preferred in fact!) We are building one ourselves in (ironically) Lisp, but it would be amazing to be able to run an original stack, as we did with the 7094->CTSS->MAD stack in reanimating ELIZA.

We (obviously) open source everything we do.

You can post here, or DM me (my email is in my "HN about"). Thanks!


10 comments
retrac · 17 hours ago
There are references to the IBM 7090/7094 version under IBSYS online.

In this 7094 emulator package on Github: https://github.com/Bertoid1311/B7094 (in the zipped distribution files unfortunately) I think there is a copy that is runnable? see: Docs/Bamberger-MAMOS_docs/BAMBSYSLB1_patch_for_IPLV.txt

It describes patching the available binary to make it work, with the caveat that it's unclear if the interpreter is correct/intact (but it does run the demo programs).

On the provenance of the tape: https://retrocomputingforum.com/t/umes-resurrected-sort-of/3...

Show replies

Rochus · 15 hours ago
Why do you need the old code if you implement your own interpreter anyway? Why "(ironically) Lisp"?

Show replies