[toronto-lisp] Fwd: Development helpers
tarvydas at visualframeworksinc.com
Thu Oct 7 14:49:58 UTC 2010
> Since doit-3 "lives" inside the vm via Repl , it seems logical that somehow
> one should be able to "dump it" to file or to the console etc. Copy into a
> clipboard would be good too.
It's my understanding that there is "no" VM in most of the CL's. What you type at the repl is (jit) compiled to machine code, then executed.
In LW, there are cases where the code is interpreted, though. I've seen this occur when I set a breakpoint using the GUI debugger.
Doug mentioned "describe" and that, in some implementations the original source code is attached to the function symbol, accessible to describe, but, AFAIK, this is not required by the spec.
So, you have to tell us which CL implementation you are using, and hope that someone is familiar with it. I think you mentioned LW personal, iirc. If you are using LW, then it appears that most LW'ers don't use the listener in the way you intend to, and there are ways to do the same thing in LW that are more convenient (already mentioned).
If you wish to use the repl, dribble is part of the spec. It appears that if you say (dribble "filename") at the beginning of you session, you will get a file that you can edit later. Some implementations allow emacs keystrokes at the command prompt that allow you access to the undo history.
Now that I mention it, the LW listener uses ALT-P in the listener repl to go backwards in time. Likewise, the listener is a stream buffer - just use the scroll bar to go backwards, position your cursor on a line and hit RETURN to bring it down to the current prompt. Some of that stuff may be documented in the LW User Guide.
More information about the toronto-lisp