The Vanilla Lisp Shell (VLS) is designed to provide an Emacs interface
to a Lisp process that from the user's perspective works basically the
same way for every flavor of Lisp. For example
an expression and
C-c C-b produces a back-trace regardless of the
type of Lisp. VLS will work with any Lisp specification such as Common
Lisp or Scheme and any Lisp implementation such as Allegro Common Lisp
or CMU Common Lisp.
This flexibility is achieved by Lisp type specifics files that have a simple syntax for associating common symbols with specific Lisp command strings. Those common symbol values are then used by VLS commands in forming a dialog with a specific Lisp process. VLS provides a comprehensive set of type specifics files based on current Lisp implementations, but the user can have his own set of type specifics files and edit them for customized effects.
VLS tries as much as possible to make the VLS commands work exactly the same way whether in the Lisp shell buffer or in a Lisp source code file buffer. This philosophy allows the Lisp shell buffer to work more like a free form scratch pad rather than a sequential prompt enter paradigm; although the user may operate that way also if that is what they are accustomed to.
VLS tries to be as intelligent as possible. For example when evaluating a form in a Common Lisp file VLS will search the source file and automatically put the Lisp process in the correct package before evaluating the form.
Along with the expected Lisp shell capabilities VLS also provides sophisticated Lisp tools. One such tool is generalized source code instrumenting. Conditional breakpoints are just one example of a source code instrument. VLS provides a small useful set of instruments and a facility to make it easy for the user to add custom instruments.
Go to the first, previous, next, last section, table of contents.