The image that runs Interlisp-D and Medley on Linux seems to actually be a Workbench for Lexical Functional Grammar. I can only guess that this is a customisation of the Medley programming environment ...
-
Install or download VirtualBox
-
Download Debian 3 VDI
- Create a new VM in VirtualBox
- Attach the downloaded VDI as an IDE disk.
- Virtual box will automatically associate the .vmi drive you create for this as a SATA drive; add a new IDE device and associate the VMI with this instead. Then remove the VMI from the SATA device (SATA errors out on boot)
- Also, make sure the pointing device is set to PS/2 Mouse (in the "System" tab at "Pointing Device")
- Start the VM
- log in as
root
/toor
. - edit
/etc/apt/sources.list
- comment out everything
- add
deb http://archive.debian.org/debian/ sarge contrib main non-free
- run
apt-get update
- run
apt-get install x-window-system
- answer install prompts (for mouse, use
/dev/psaux
and thenPS/2
)
- To download the LFG software
- go to: https://archive.org/download/2014.01.ftp.parc.xerox.com
- examine
2014.01.ftp.parc.xerox.com.zip.txt
and make sure thatlfg.sysout
andlfg/linux
are present in this manifest - download the zip'ed archive:
2014.01.ftp.parc.xerox.com.zip
(~ 1GB) andunzip
- you want the
ftp.parc.xerox.com/pub/lfg
directory ... either download it to your VM or SCP from a machine using the VBox NAT'ed network connection- if you ssh to a local, modern machine, you may get a Kex error
- if so, update your server to support connections from older clients, e.g., edit your
/etc/ssh/sshd_config
to include this and then restartsshd
:KexAlgorithms diffie-hellman-group1-sha1,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1
chmod 755 lfg/linux/intel/*
- Start up Medley
startx
- open up a terminal (e.g., left-click anywhere and select Debian -> XShells -> XTerm)
- at the terminal, enter
lfg/linux/intel/ldex lfg/lfg.sysout
- Play
- After a while, the workbench will come up; the 'EXEC' window is the INTERLISP REPL.
- If you're looking for The Answer, try typing
(TIMES 2 (+ 1 2 3 4 5 6))
- Or, if you're feeling more adventurous:
(DEFINEQ (REDUCE (FUNC ACC ALIST)
(COND ((NULL ALIST) ACC)
(T (REDUCE FUNC (APPLY FUNC (LIST ACC (CAR ALIST))) (CDR ALIST))))))
(DEFINEQ (DBL (X) (TIMES 2 X)))
(REDUCE '+ (MAPCAR '(1 2 3 4 5 6) 'DBL))
- Download Medley documentation:
- http://bitsavers.org/pdf/xerox/parc/techReports/CSL-77-3_A_Display_Oriented_Programmers_Assistant.pdf
- http://bitsavers.trailing-edge.com/pdf/xerox/interlisp/Interlisp_Reference_Manual_1974.pdf
- https://larrymasinter.net/86-interlisp-manual-opt.pdf
- http://larry.masinter.net/interlisp-ieee.pdf
- Learn!