How do lispers do their GUI programming anyway? (was Re: Curses alternative for Lisp?)
- From: "Peter Hildebrandt" <peter.hildebrandt@xxxxxxxxx>
- Date: Mon, 31 Dec 2007 17:57:29 +0100
On Mon, 31 Dec 2007 16:20:33 +0100, Andreas Davour <anteRUN@xxxxxxxxxxxxxxxxxxxx> wrote:
As it is low-level stuff I guess FFI is the way to go, but I'm beginning
to wonder how lispers do their (G)UI programming anyway.
I've been wondering about this for a while. For most environments there seem to be canonical triples of platform, language, and library that people use (for instance Linux-C-GTK, Linux-Python-PyGTK, Windows-C++-MSVC, Windows-C#-.NET, etc).
But what do lispers use who work on real applications that are not implemented as web-services? Do they just fall back to the command line?
The reason I'm asking is that I am working on a project which relies heavily on a dynamic, interactive GUI. I am aware that I will need non-standard functionality, and I am willing to put in some effort to extend the toolkit to meet my needs. However, after looking at the various options I find it very hard to judge which one is a good choice to build on. I should add that I am quite new to the lisp world, so please correct me if I am missing something obvious. To an outsider the GUI toolkit landscape for lisp is a little ... err ... confusing.
My wish list goes like this:
- available on linux
- lispy interface (a dynamic application should be met by a dynamic UI toolkit), preferrably Cells Inside
- open source (I want to see how it works and submit patches if necessary)
- native looks, preferrably GTK or QT, because I'd like my users to enjoy a modern standard look and feel (in particular I do not enjoy the hard edged appearance of tk on linux (I know that one can use skins for tk, but I don't want my users to have to deal with this)
I found the following options:
(1) McCLIM
From the facts, McCLIM appears the way to go -- except for its looks and its speed (it feels quite slow on my 1.4 GHz Pentium M laptop, especially with the gtkairo backend)
(2) The libraries of their commercial environment (CAPI etc.)
I'd prefer to stay with free libraries and not be dependent on a specific vendor
(3) One of the various FFIs (lambda-gtk etc.)
They pave the way for native UIs, but the code becomes quite Cish. I'd end up writing a thick abstraction layer to prevent my application from being contaminated with FFI calls.
(4) A lispy GUI wrapper (cells-gtk, celtk, cello, LTK)
That'd be the perfect solution (lisp on the inside -- native UI on the outside), but I have the impression that the community around celtk, cells-gtk, and cello is rather small (judging by the traffic on the mailing lists). LTK and celtk are based on tk and look unpleasant on linux. Cello is very much work in progress. cells-gtk cvs has not been updated since June 2006.
So far I have been using cells-gtk (and put together two patches), but I wonder whether I should rather invest time and effort into a different project. I believe there must be other people out there who need a lisp-like, dynamic, interactive, yet modern/native-looking GUI.
So what do they do? What am I missing?
Happy new year everybody, and I am looking forward to your answers.
Peter
/Andreas
--
Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
.
- Follow-Ups:
- Re: How do lispers do their GUI programming anyway? (was Re: Curses alternative for Lisp?)
- From: David Golden
- Re: How do lispers do their GUI programming anyway? (was Re: Curses alternative for Lisp?)
- From: Mike G.
- Re: How do lispers do their GUI programming anyway? (was Re: Curses alternative for Lisp?)
- From: Ken Tilton
- Re: How do lispers do their GUI programming anyway? (was Re: Curses alternative for Lisp?)
- From: Leandro Rios
- Re: How do lispers do their GUI programming anyway? (was Re: Curses alternative for Lisp?)
- References:
- Curses alternative for Lisp?
- From: Andreas Davour
- Re: Curses alternative for Lisp?
- From: Timofei Shatrov
- Re: Curses alternative for Lisp?
- From: Andreas Davour
- Re: Curses alternative for Lisp?
- From: Timofei Shatrov
- Re: Curses alternative for Lisp?
- From: Andreas Davour
- Curses alternative for Lisp?
- Prev by Date: Re: self-managed freelist for class instances
- Next by Date: Re: Curses alternative for Lisp?
- Previous by thread: Re: Curses alternative for Lisp?
- Next by thread: Re: How do lispers do their GUI programming anyway? (was Re: Curses alternative for Lisp?)
- Index(es):
Relevant Pages
|