[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Symbolics compatibility package.

In the process of porting our CL code from Lisp Machines to Suns and Vaxen,
we (TMC) found it necessary to do a fair amount of environment hacking.  We
are putting this work in the public domain.  This package consists of code
for Gnu Emacs and for Lucid Lisp.  Our goal was to make some of the most
important environmental features of Lisp Machines work on Suns.  Of course,
this stuff won't transform your Sun into a 3600, but it will make it much
more bearable.

However, before we give it away to everyone who asks, we could use a couple
test sites that are willing to verify that the code works at sites other
than Thinking Machines.  Any volunteers?

Here is a partial description of the package:

1) Sun 3 keyboard hacking under X (version 10).  Remaps the keys to be the
same as a lisp machine keyboard.  Also causes all combinations of bucky
bits (shift, control, and meta) and any other key to generate a unique
Ascii sequence.  Although this stuff is not necessary for the remainder of
the package, it allows the binding of standard Zmacs chord keys.  It is
also psychologically important!

2) Gmacs and Lucid Lisp code to do certain standard Zmacs commands.  We are
assuming that users are running Lucid Lisp as a subshell of Gmacs (meta-x
run-lisp or run-remote-lisp).  Some of the commands we've implemented are
control-shift-a, c, e, and m.  Meta-point and Edit Callers also work.
There are a number of other enhancements.

3) Lucid Lisp enhancements.  Includes an almost Symbolics compatible error
system complete with proceed options, macros for easily creating proceed
cases (works on Lisp machines as well), initialization lists, the LOOP
macro, and finally startup banner manipulation.


Ps: We chose to do our work on Gnu Emacs because it has a number of
significant advantages over the Lucid Lisp editor.  Some of those
advantages are: free and complete sources, robustness, and the ability to
run the editor on a small local Sun while the Lisp process is running on
another, bigger machine.  Besides being low on features, the Lucid editor
has the very nasty property of losing all your buffers when the Lisp
process becomes corrupted.  Also, we are especially frustrated with Lucid's
source code policy and we will do as little enhancing of Lucid Lisp as we
can get away with.  On the other hand, Gnu Emacs is becoming an industry
standard and is a wonderful program to use and play with.