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

Bug in walker under KCL

There's a slight bug in the walker under KCL (so locally defined
functions are ignored).  The definition of
with-augmented-environment-internal in walk.lsp should be:

  (defun with-augmented-environment-internal (env functions macros)
    (unless env  (setq env (list nil nil nil)))
    (dolist (f functions)
      (push `(,(car f) .  (function  . (,#'unbound-lexical-function . nil)))
          (second env)))
    (dolist (m macros)
      (push `(,(car m)  .  (macro . ( ,(cadr m) . nil))) (second env)))

By the way, macroexpand-1 in KCL ignores the environment argument.
This has been more-or-less fixed in AKCL (version 1.50), Bill
Schelter's "Altered KCL".

	- Penny