lisp.icn: Program to interpret LISP programs

April 16, 2012; Stephen B. Wampler
This file is in the public domain.
   This program is a simple interpreter for pure Lisp. It takes the
name of the Lisp program as a command-line argument.

   The syntax and semantics are based on EV-LISP, as described in
Laurent Siklossy's "Let's Talk LISP" (Prentice-Hall, 1976, ISBN
0-13-532762-8).  Functions that have been predefined match those
described in Chapters 1-4 of the book.

   No attempt at improving efficiency has been made, this is
rather an example of how a simple LISP interpreter might be
implemented in Icon.

   The language implemented is case-insensitive.

   It only reads enough input lines at one time to produce at least
one LISP-expression, but continues to read input until a valid
LISP-expression is found.

   It first reads in files listed on command line, switches
to reading standard input, and terminates with the first (exit)
instruction.

Errors:

   Fails with error message if current input cannot be made into
a valid LISP-expression (i.e. more right than left parens).

See HELP function at end of file for syntax summary/examples.

Source code | Program Library Page | Icon Home Page