Subject: Re: Quoting disassemble's lambda argument.
From: Erik Naggum <>
Date: 1999/01/10
Newsgroups: comp.lang.lisp
Message-ID: <>

| Consider these two expressions:
| (disassemble '(lambda (x) x))
| (disassemble #'(lambda (x) x))
| The first one works with ACL, but fails with CMUCL.

  that's a bug in CMUCL.

| The second one works with CMUCL, but fails with ACL.

  that's a bug in Allegro CL.

| I'm leaning towards thinking that CMUCL has the correct behavior.

  why?  the standard explicitly says `lambda expression'.

  if DISASSEMBLE should indeed accept an interpreted function as arugment,
  this is a fix for DISASSEMBLE in Allegro CL:

(advise disassemble :before allow-interpreted-function nil
  (when (interpreted-function-p (first arglist))
    (setf (first arglist)
      (func_code (first arglist)))))