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

preprocessor-based Common Lisps



In the majority of Common Lisp systems that I know of, DEFUN inserts the
named block around the body of the lambda form before saving it away.
So in this minimal sense, almost everyone does some pre-processing in
the interpreter.

A lot of systems save macro-expansions inline (more or less) after the
first expansion occurs.  This is usually a feature that you can turn on
and off, and in the better systems you can undo such actions if the
macro is redefined.  I think that systems that expand macros or do other
optimizations at DEFUN time are in the minority, however.

-- Scott