- Notifications
You must be signed in to change notification settings - Fork24
The main repo for the Medley Interlisp project. Wiki, Issues are here. Other repositories include maiko (the VM implementation) and Interlisp.github.io (web site sources)
License
Interlisp/medley
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This repository is for the Lisp environment ofMedley.
Install and Run covers ways to install and start up Medley on Linux systems, MacOS, and Windows (with or without WSL).
Using Medley has an overview and pointers to documentation.
Interlisp/maiko, is the repo for the implementation (in C) of the Medley virtual machine.
While there are installers for popular platforms, this section may be useful in some circumstances.
Get the Maiko releasehere. You'll need the .tgz file corresponding to your operating system and processor. For Windows with WSL or Intel Linux, uselinux.x86_64
; for Macs usedarwin.x86_64
for Intel anddarwin.aarch64
for Mac silicon. Windows without WSL usescygwin
instead.
Or, build your own maiko (the binarieslde
,ldex
ORldesdl
, andldeinit
).You can also build for other architectures
The medley release image and sources come in two parts, foundhere
- The "loadups" (download
medley-
YYMMDD-XXXXX-loadups.tgz
) - The "runtime" (download
medley-
YYMMDD-XXXXX-runtime.tgz
)
whereYYMMDD is the date andXXXXX is the GitHub commit ID.
The "runtime" isn't needed if you've cloned the (medley) repo--you have all the files. The "runtime" has extra fonts, unicode tables, and source code that aren't part of the loadups but may be called on.
From a shell/terminal window:
- Choose a directoryparent where you want to install medley and maiko.
- Unpack the medley loadups file
cd
parenttar xvzf medley-
YYMMDD-XXXXX-loadups.tgz
- Unpack the medley runtime OR clone the Medley repo(the "medley runtime" is just a subset of the whole repo)
tar xvzf medley-
YYMMDD-runtime.tgz
OR
git clone https://github.com/Interlisp/medley
Unpack the maiko file for your operating system and CPU type, e.g.,
tar xvzf maiko-210823.linux.x86_64.tgz
This should leave you with two directories,
medley
andmaiko
.
In many configurations, Medley uses an X-Server to manage its display. Most Linux desktops have one. Windows 11 with WSL includes an X-Server. For Windows 10 with WSL2, there are a number of open-source X servers; for example vcxsrv.
Mac users should getXQuartz from XQuartz.org.
Medley manages the display entirely, doesn't use X fonts and manages it's own window system.
If you have a high-resolution display, note that much of the graphics was designed for a low-resolution display, so an X-server that does "pixel doubling" is best. (E.g., Raspberry Pi does pixel doubling on 4K displays.)
Medley presumes you have a 3-button mouse; the scroll-wheel on some mice acts as one, with some difficulty. Go into XQuartz Preferences/Input and check "Emulate three button mouse" option.
Therun-medley
script in this repo sets up some convenient defaults. Running Medley can be done by typing:
$ cd medley$ ./run-medley
Or, if you wish to start Medley up with a different SYSOUT:
$ cd medley$ ./run-medley <SYSOUT-file-name>
The first time the system is run it loads the system image that comeswith the system. When you exit the system (or "do aSaveVM
" menuoption) the state of your machine is saved in a file named~/lisp.virtualmem
. Subsequent system startups load the~/lisp.virtualmem
image by default.
The system may be exited from the Interlisp prompt by typing:
(LOGOUT)
Or from the Common Lisp prompt with:
(IL:LOGOUT)
When you log out of the system, Medley automatically creates a binarydump of your system located in your home directory namedlisp.virtualmem
. The next time you run the system, if you don'tspecify a specific image to run, Medley restores that image so thatyou can continue right where you left off.
File Names and Extensions: Most Interlisp source file names areUPPERCASE and Interlisp didn't use file extensions for its sourcefiles. A .TEDIT or .TXT file is probably documentationfor the package of the same name, at least in the library and lispusersdirectories.
The current repo has both Lisp sources and compiled .LCOM and .DFASLfiles.
Each directory should have a README.md, but briefly
- BUILDING.md -- instructions on how to make your own loadups
- clos -- early implementation of Common Lisp Object System
- CLTL2 -- files submitted to bring Medley up to the conformance to "Common Lisp, the Language" 2nd edition. Not enough to conform to the ANSI standard lisp.
- docs -- Documentation files (in TEdit format, PDFs, or online help; lookhere)
- fonts -- raster fonts (or font widths) in various resolutions for display, postscript, interpress, press formats
- greetfiles -- various configuration setups
- internal -- Thesewere internal to Venue
- library -- packages that were supported (30 years ago)
- lispusers -- User contributed packages that were only half supported (ditto)
- loadups -- has sysouts and other builds plus a few remnants
- obsolete -- files we should remove from the repo
- rooms -- implementation of ROOMS window/desktop manager
- run-medley -- script to enhance the options of running medley
- scripts -- some scripts for fixing up things, building and running medley
- sources -- sources for Interlisp and Common Lisp implementations
- unicode -- data files for support of XCCS to and from Unicode mappings
About
The main repo for the Medley Interlisp project. Wiki, Issues are here. Other repositories include maiko (the VM implementation) and Interlisp.github.io (web site sources)