Educational path
July 27th, 2007 at 5:44 pmIn anticipation of needing a simple graphical drawing utility for the next batch of SICP exercises, I fired up Google to find out what Common Lisp provides in terms of GUI libraries for Windows. Not much, it appears - at least not for the free CL implementations (like CLISP, which I’m using).
After a few misfires, I finally managed to get wxCL to work, kinda. In order to sort out the “kinda” I want to understand in some depth how wxCL actually works, and this sets me on a long educational path:
- In order to understand wxCL, I must understand CFFI
- In order to understand CFFI, I must understand ASDF.
- In order to understand ASDF I must learn about:
- How CL packages work
- How CL pathnames work
Quite a quest, at the end of which I hope to report full success
I think that a good understanding of these topics is essential for industrial strength CL programming.
Update: it also wouldn’t hurt to understand exactly how the memory images of CLISP work. I think this can be useful for easily adding common packages (like ASDF) into CLISP and improving loading performances of large packages like CFFI.
No related posts.

July 27th, 2007 at 8:03 pm
Stuart Shapiro’s book forces you to get fluent with packages fairly quickly. Exercise after exercise requires you to continually alter and reuse packages from almost the very beginning.
http://www.cse.buffalo.edu/pub/WWW/faculty/shapiro/Commonlisp/
July 28th, 2007 at 7:00 am
Thanks for the tip.
Practical Common Lisp also goes over packages, and gives a good drill on pathnames. I think I’ll take this direction first.
August 7th, 2007 at 11:52 pm
Why not use PLT Scheme for SICP graphics problems? I am starting a SICP study group in Seattle and am keen to know if you are choosing to do SICP in CL or if PLT has some issues.
http://www.plt-scheme.org/
For CL, I like ltk. I was able to use it on Mac, Linux, and Win. The underlying Tcl/TK is free, stable, and well documented. Pick up a Perl/Tk book as well as the LTK pdf and you’re set.
http://www.peter-herth.de/ltk/