Thanks for the clarification. I'll try and make this work. Thanks also to Gabe Garza who mailed me personally with further commentary.
BTW, what I'm working on is an interface to ncurses. People have talked about this in the past, but I've not seen it done. I have the raw alien definitions working so I can screw up the terminal quite nicely from Lisp and do all the things documented in *every* ncurses manpage (take a look at the ncurses.h header file to see how much of a chore this was). But the ncurses library feels nothing like Lisp programming so I'm writing a 'Lisp friendly' interface to it that maintains a bunch of Lisp datastructures that for things like character attributes, pads, windows, terminal flags, etc, and a bunch of Lisp functions to operate on them. The intent is to hide the ncurses alien definitions completely from the programmer. One of these days I'll put up a project page for it and make it available to the public. It's not quite ready for that though. My meter for readiness is when I quit changing things in the ncurses alien interface and stick to only writing Lisp front-end functions. Once it's basically stable I'll look into creating a simple widget library for drawing non-overlapping windows (ie East-Coast style windowing) and various input dialogs, scrolling lists, checkboxes, and such. I did a similar job (but in C) at my previous place of employment, so I know what sort of improvements should be made upon the crude widget set that is included with ncurses. For overlapping windows (West-Coast style windowing) there is a library called 'libpanel' included with ncurses that does most of what one wants. But I honestly think that overlapping windows are a lose on terminals because of the space they take up, so I'm not going to bother implementing an interface to libpanel. If someone really wants to do so the scaffolding will all be there to do it. Of course, once some basic widgets are available a CLIM-like interface should be built, or maybe port (some of) McCLIM to it... And a curses-based REPL... And then maybe port it to UFFI (which of course doesn't have FINALIZE, sigh)... 'james -- James A. Crippen <[EMAIL PROTECTED]> ,-./-. Anchorage, Alaska, Lambda Unlimited: Recursion 'R' Us | |/ | USA, 61.20939N, -149.767W Y = \f.(\x.f(xx)) (\x.f(xx)) | |\ | Earth, Sol System, Y(F) = F(Y(F)) \_,-_/ Milky Way.
