From: Frode Vatvedt Fjeld
Subject: inspect
Date: 
Message-ID: <2hu2kiyuac.fsf@dslab7.cs.uit.no>
Are there functions to access the same information that I can dig up
interactively with INSPECT?

For example, in ACL, I can (interactively) inspect a compiled
function, and retrieve its machine-code (vector) object through the
function's CODE cell. Is there some function I can use to obtain the
same information programmatically, like

  (get-cell-or-something #'myfun 'code) => #<CODE vector object>

Thanks,
-- 
Frode Vatvedt Fjeld
From: Erik Naggum
Subject: Re: inspect
Date: 
Message-ID: <3156777199553156@naggum.no>
* Frode Vatvedt Fjeld <······@acm.org>
| Are there functions to access the same information that I can dig up
| interactively with INSPECT?

  usually, but not necessarily.

| For example, in ACL, I can (interactively) inspect a compiled function,
| and retrieve its machine-code (vector) object through the function's CODE
| cell. Is there some function I can use to obtain the same information
| programmatically, like
| 
|   (get-cell-or-something #'myfun 'code) => #<CODE vector object>

  some of these slots are so low-level that there aren't any regular
  CL-level code to access them.  however, the code for the inspector is
  part of the source code offering that comes with a regular license.

  it seems that you're digging so deep into Allegro CL that you would
  benefit from Franz Inc's excellent support, and I think it's fair to pay
  for a license.  I could argue that it's not in the best interest of the
  continued existence free versions that people reverse-engineer a free
  product -- it may turn out to be hostile to the commercial operation
  whose profitability spawned the ability to give something away...

  however, you should check out the results of (apropos "_CODE").

#:Erik