Running old Lisp editors to learn their behavior by experience.
A working Interlisp command-line emulator can be found at:
https://github.com/blakemcbride/LISPF4
The repo includes binaries for windows, mac, and linux. Building is also painless.
Run Interlisp command prompt on Mac:
brew install rlwrap # lets us use arrow keys in the Interlisp prompt
cd Mac
rlwrap ./lispf4 BASIC.IMG
Run the editor for an arbitrary expression:
_(EDITS '(A B (C D) E F G))
*PP
(A B
(C D)
E F G)
*(BO 3)
*PP
(A B C D E F G)
Exiting:
OK
exits the editor(EXIT)
exits the Interlisp emulator
Unfortunately, I do not know how to run DEdit, since the only publicly available Interlisp-D environment runs only SEdit, which replaced DEdit:
The list structure editor, DEdit, is not part of the Lisp environment. It is now a Lisp Library Module.
—Medley Release Notes chapter 16
Running an emulated SEdit is trickier than the teletype editor since it requires the Interlisp-D graphical environment.
Xerox has published a free Interlisp-D environment (for research and education), described here. It is bundled with programs for allowing linguists to create "Lexical Functional Grammars", but we are using it only to discover the behavior of Interlisp's SEdit.
The last binaries were built in 2003, so we must run it in a supported OS from that time. We can do this by running Debian 3.1 + X11 inside VirtualBox.
You can build it yourself with these instructions, or use our prepackaged image below.
Run the VM:
- Download our prepackaged debian image
- Open VirtualBox
- Create a new VirtualBox VM (Linux 2.4, 32 bit)
- Point it to an existing disk (the vdi file from step 1)
- In Settings, ensure pointing device is a PS/2 Mouse
- In Settings, ensure that the disc is mounted as an IDE device
- Start
Once inside Debian, run Interlisp:
- Login as
root
/toor
- Hold click on Debian's desktop (and keep holding)
- Hover on Debian's right menu icon
- Hover on XShells's right menu icon
- Release click on XTerm
cd lfg
./ldex lfg.sysout
Once inside InterLisp, run SEdit:
- Close the open windows by holding right-click on each window head > close
- Hold right-click on Interlisp's desktop > EXEC
- Type
(ED 'FOO)
> click "Functions" > click "Defun" - You are now in an SEdit window.
Z:\>mount c: ~/nokolisp
Z:\>c:
C:\>noko
You can display and edit the packaged fib
function to try it out:
0> fib
1> (edit fib)