Subject: [clisp-list] GUI in CLISP

From: Sam Steingold <[email-masked]>
Date: 09 May 2000 14:12:46 -0400

The survey (http://sourceforge.net/survey/?group_id=1355) indicates that
people miss GUI building in CLISP.

An easy way to build a gui-enabled application in CLISP is to use your
browser.  Please see src/cllib/inspect.lisp
(ftp://cellar.goems.com/pub/clisp/cllib.zip) in CLOCC
(http://clocc.sourceforge.net) which implements a GUI inspector using
http interface to the browser.

While clearly not the best solution, this approach has certain
advantages (simplicity, platform-independence).

-- 
Sam Steingold (http://www.podval.org/~sds)
Micros**t is not the answer.  Micros**t is a question, and the answer is Linux,
(http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation.
Bill Gates is great, as long as `bill' is a verb.

---

From: Paolo Amoroso <[email-masked]>
Date: Wed, 10 May 2000 16:55:36 +0200

> people miss GUI building in CLISP.

A possible option is SLIK. It is a CLOS-based user interface toolkit,
providing a thin abstraction layer over CLX, that is part of PRISM, a
radiation therapy planning system developed at Washington University. The
PRISM Web site is:

  http://www.radonc.washington.edu/medinfo/prism/

The source code and documentation of SLIK are available at:

  ftp://ftp.radonc.washington.edu:/dist/slik/

Although it was originally developed for Allegro CL, SLIK compiles out of
the box with CMU CL. When I tried it with CLISP, it had some problems but I
felt it was close to working. But I had no time to investigate further.

The main advantages of SLIK are:

- ease of use
- limited footprint

A few disadvantages:

- widgets don't look "sexy"
- only basic widgets are available
- I was unable to find an explicit distribution license and it's not clear 
  under what conditions SLIK may be freely used. The system was developed 
  at an academic institution with funds also coming from commercial 
  companies and other institutions.

Paolo
-- 
EncyCMUCLopedia * Extensive collection of CMU Common Lisp documentation
http://cvs2.cons.org:8000/cmucl/doc/EncyCMUCLopedia/

---

From: <[email-masked]>
Date: Wed, 10 May 2000 17:22:47 +0200 (CEST)

> advantages (simplicity, platform-independence).

Another approach would be to look at {sip,PyQt,PyKDE}-0.11.1 and see
whether we can do the same thing for clisp.

Bruno

---

From: Thibault Langlois <[email-masked]>
Date: Wed, 10 May 2000 18:10:46 +0100

About GUI and CLISP...

I have a problem compiling garnet with clisp-2000-03-09.
I am using the original garnet source found in the garnet project web page. 

I have looked at the garnet30.clisp.tar.gz files. The visible
difference between that version and the original one is the file
extension (.lsp vs .lisp) which is no longer a problem for
clisp. Another change is the renaming of the lisp and user packages
that is done in the garnet-loader.lisp file. I have made that change
and use the original garnet source.

I am sending this message to this list because I think the problem is
a clisp problem, not a garnet problem.

After loading garnet-prepare-compile.lisp and garnet-loader.lisp I
start the compilation loading the garnet-compile.lisp
Compilation runs fine during some time until I get the folowing error:

[many many lines deleted...]

Compiling file /usr/local/src/garnet-3.0/src/gadgets/save-gadget.lisp ...
Object SAVE-GADGET

Compilation of file /usr/local/src/garnet-3.0/src/gadgets/save-gadget.lisp is finished.
0 errors, 0 warnings
Loading #P"/usr/local/src/garnet-3.0/src/gadgets/save-gadget"
;;   Loading file /usr/local/src/garnet-3.0/src/gadgets/save-gadget.fas ...
*** - LISP-RENAMED-BY-GARNET:MAKE-ENCODING: illegal :OUTPUT-ERROR-ACTION argument 33961
1. Break GG[5]> 

The save-gadget file is compiled without problems. The error occurs
when the compiled file is loaded. The make-encoding function is not
called in the garnet code (that's why I think it is a problem with
clisp)

impnotes.html says:

The :output-error-action specifies what happens when an invalid character is
encountered while converting characters to bytes. Its value can be :error, :ignore, a byte
to be used instead, or a character to be used instead. The Unicode character #\uFFFD can be
used here only if it is encodable in the character set. 

So the argument 33961 is indeed invalid. But as I don't know where the
function was called, I don't understand what goes wrong.

Anybody can help me ?

Thanks for your time.

Thibault Langlois

PS: I use :

(lisp-implementation-version) -> "2000-03-09 (March 2000)"
with new-clx module on a gnu/linux RedHat 6.0 system (intel)

---

From: Paolo Amoroso <[email-masked]>
Date: Thu, 11 May 2000 21:08:39 +0200

> I am using the original garnet source found in the garnet project web page. 

Fred Gilham <[email-masked]> maintains an unofficial Garnet
distribution to which he applies all patches he can get his hands on. That
distribution is more up to date than the one available at the Garnet
project site. Fred's distribution is unlikely to solve your problem, but
you may want to check it anyway:

  ftp://ftp.csl.sri.com/pub/users/gilham/garnet/

Paolo