[Gardeners] requirements for beginner's Lisp-based UI toolkit
Jack Unrue
jdunrue at gmail.com
Tue Dec 13 22:50:53 CST 2005
I thought it would be good to start a separate thread to
continue the discussion about UI toolkits, and to see if
we can document some requirements against which we
can evaluate the various choices.
Even if we can't come to a consensus, at least this info
could go into one of those "Consumer Reports" that
Peter suggests at the Gardeners website.
The goal as I see it is to provide Lisp newbies with a
relatively convenient way to try doing some GUI
programming in CL, so the requirements I list below
are tailored with that in mind.
The following is a strawman list. Please feel free
to rip it apart:
1) embeddable - we want to package the toolkit as
part of a "beginner's package". Peter Seibel's
Lispbox project is the default choice (maybe we debate
that as a separate topic, but I'll make this a working
assumption for now), so the toolkit should be relatively
easy to package along with Lispbox, and as Brad Beveridge
mentioned, not require overly many external dependencies.
Otherwise, it gets more difficult to stay within the download/install
profile that Lispbox has established.
2) free - primarily "as in beer" for our purposes. This is
sort of a sub-requirement of being embeddable in
Lispbox. Free as in "libre" would be preferred but is
not a hard requirement.
3) portable - the toolkit should be available on all of the
popular platforms (including Windows!); the issue of
native vs. emulated is only relevant insofar as we just
want to avoid ugly looking toolkits that would give people
the wrong impression of what can be done in CL.
Portability also refers to support for multiple CL
implementations. We would favor a toolkit that on more
than CLISP, but it would be acceptable if CLISP was the
only supported platform (at least for now).
4) approachable - the newbie will be looking for
comprehendable examples and will probably not have
much patience for jumping through hoops to get a window
up on the screen, especially if they are used to UI toolkits
in other languages that have a lot of tool support.
So the toolkit should favor simplicity in its API over
sophistication. The more advanced folks will move on once
their needs outgrow this beginner's toolkit.
What do you think?
--
Jack
More information about the Gardeners
mailing list