[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GUI, Tk, with-wish
- To: <clisp-list@ma2s2.mathematik.uni-karlsruhe.de>
- Subject: Re: GUI, Tk, with-wish
- From: Bruno Haible <haible@ilog.fr>
- Date: Mon, 15 Sep 1997 17:50:04 +0200 (MET DST)
- >received: from halles.ilog.fr (halles.ilog.fr [172.16.1.96]) by ilog.ilog.fr (8.8.7/8.7.3) with ESMTP id RAA05039; Mon, 15 Sep 1997 17:50:15 +0200 (MET DST)
- In-reply-to: <199709130141.DAA02047@orion.plopp.de>
- References: <199709130141.DAA02047@orion.plopp.de>
Matthias Lindner wrote:
> I have tried different built-in GUIs for CommonLisp (Lucid with
> LispView, Allegro with CommonWindows, CLISP with StdWin, CLIO).
> Forget it - period.
> That's why I wrote with-wish.
That's a clear statement. :-)
It looks like the big packages Garnet, Amulet, CLIM
* are hard to learn (huge libraries),
* may require some non-negligible effort for binding to CLISP (Amulet),
or for completing (CLIM).
So what we want is a binding with Tcl/Tk. Some pieces are already there:
- Tcl/Tk 8.0 is officially supported by Sun, and ports over seamlessly
to Unix and Win32,
- with-wish provides a working low-level interface with Tcl/Tk, based
on pipes,
- The STklos directory of the STk-3.1.1 distribution contains CLOS
classes for all the Tk widgets. (Much nicer than Bill Schelter's
gcl-tk package and its descendent called lisp-tk-0.1.)
What remains to be done, it to put these pieces together. Whoever does it,
I encourage you to do it. Looks like no C/FFI hacking will be involved.
You cannot make Tcl disappear, because Tk is based on it, but with STklos
it's completely hidden.
> I don't know if clisp-win32 currently supports sockets.
Yes, clisp-win32 supports sockets, but pipes will do the job, if the
machine running clisp is also the displaying machine.
> You have three processes hanging around which is not soooooo good, but
> even Windows should be able to handle three processes today (whow!).
Having the clisp process distinct from the Tcl/Tk process has at least
three advantages:
- Redraw events can be handled while clisp is waiting in the read-eval-
print loop.
- Bugs in Tcl/Tk appear as such and don't make clisp crash :-),
- The resulting package could easily be used in other Lisps, not
only clisp.
Just my thoughts. Have fun,
Bruno
URLs:
Tcl/Tk: ftp://ftp.sunlabs.com/pub/tcl/
http://www.sco.com/Technology/tcl/Tcl.html
with-wish: ftp://ma2s2.mathematik.uni-karlsruhe.de/pub/lisp/clisp/contrib/
Stk: http://kaolin.unice.fr/
ftp://kaolin.unice.fr/pub/