Hi Erik,

> I imagine something like CL's 'disassemble' that, given an arbitrary lisp
> expression, returns the sequence of VM instructions the expression maps to.

To extend a little what Tomas and Andreas said:

I think it is not so very useful to look at the generated native ASM
code, as it more or less maps 1:1 to the PicoLisp assembly, and the
latter is more readable.

Still, you can easily disassemble the executable:

   $ objdump -S bin/picolisp |view -

When looking at the sources with 'vi', e.g. extending Andreas' example

   $ pil +
   : (vi 'vi)

you can navigate by moving the cursor to some identifier and hit Shift-K. Then
vi will jump to *that* source. This will give access to all Lisp and ASM code
reachable from that point.

In case of the 'vi' code above, you may press Shift-K on 'call', then move down
to 'execArgsE_SXZ' and press Shift-K again

With Shift-Q you can pop back.

♪♫ Alex
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to