minilisp in a single package, originally by Leon Bottou
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Files and in directory implement the basic data structure of a lisp interpreter: s-expressions.

S-expressions can be viewed as a simple and powerful alternative to XML. They are used in DjVu to handle annotations. Both the decoding api and program use s-expressions to describe the hidden text information and the navigation information (bookmarks.)

Comments in file describe which s-expressions are supported, how they are represented in text files, and which functions are available to handle them.

During the development of and it appeared that the best way to test s-expressions was to make the last step and program a complete lisp interpreter.
This also makes a perfect example of using .

The core interpreter is in file . Startup definitions are in file . Just type to compile it.

Exercise: speed up the interpreter by accelerating the function lookup().

  • Leon Bottou, September 2005