Friday, June 9, 2006

away from the REPL for a week

Next week, I'll be in Maine on vacation and then attending my brother's wedding, so Graphic-Forms work will be interrupted briefly.

There are yet loose ends needing to be tied up before I can make the next release. I might spend some more time on preparations (which are already underway) for implementing the equivalent of GroupLayout that is going to be part of the next JDK/NetBeans release. There are some folks implementing this for SWT as well. And so I want something like it in Graphic-Forms, too. I want to revamp my existing layout-tester program to look and feel more like a GUI layout tool, as a more scalable and robust way of testing the layout managers I've written. Maybe layout-tester ought to evolve into such a tool for real instead of just being happy as a test program. Continuing down my todo list, there are some remaining issues with keyboard navigation in dialogs. I'd also like to implement at least one more common dialog and some controls (especially the edit control). And I'd like to change the graphics package to depend on ImageMagick only if the app developer explicitly chooses to.

The 0.2.0 and 0.3.0 releases saw a decent number of downloads, certainly more than I expected, which is really cool. Unfortunately for me as the lead developer, there has been practically no feedback on the dev mailing list. I'm not working very hard at building `community' around this code, for one thing. I suspect not many folks are getting past the `open the tarball and look at the code' stage. And maybe there aren't that many folks interested in a Windows-only UI library for Common Lisp.

Another possibility is that people are reluctant to invest time and effort in a brand new API that has no appreciable mindshare. I can sympathize with that and every day I think about what the best solution is. Forget about Graphic-Forms for a second, and consider my personal requirements for a UI library: must support Windows as a first-class target, must leverage platform-specific features wherever possible as opposed to compromising in the name of platform portability, must not have too many intermediate layers (especially not some toolkit in another language), and must (eventually, if not already) support multiple Lisp implementations. Right now, I'm not aware of any other UI library for CL that meets those requirements, aside from what I can build myself.

I just hope somebody gets some value out of the code besides me.


Xach said...

Maine, home of Planet Lisp! Welcome!

Jack Unrue said...

Thanks Zach! I haven't been to Maine before, but I'm looking forward to it. Portland for a few days, and then up to Jackman.

Oops, time to catch the plane :-)