LISP and Symbolic Computation, 4(4)371-398
Critique of DIN Kernel Lisp Definition Version 1.2
Henry G. Baker, Nimble Computer Corporation, 16231 Meadow Ridge Way, Encino, CA 91436
|
Abstract: A critique of DIN Kernel Lisp is presented which
argues for greater emphasis on implementation efficiency and language
cleanliness, and a greater emphasis on parallel and persistent Lisp
environments. Specific recommendations include standardizing the
S-expression rather than the character form of a program, using
lexical scoping and shadowing to enhance subsystem modularity, relying
on macros and compiler-macros for more pleasant syntax and greater
modularity, requiring immutable/functional bindings, strings, vectors
and lists; using object-oriented capabilities to build basic
capabilities--e.g., generic arithmetic, streams and pathnames, relying
on defstruct instead of defclass, and standardizing on defmethod for
all function definitions. A virtual/synthetic class mechanism is
presented to solve certain technical problems analogous to those
solved by the "virtual function" mechanism of C++. Finally, we
recommend the inclusion of futures as DKLisp's fundamental mechanism
for the introduction of multiple parallel threads of computation.
|
This article is not available online.
|
|