axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] Lisp GUI libraries and a UI for Axiom


From: Kai Kaminski
Subject: Re: [Axiom-developer] Lisp GUI libraries and a UI for Axiom
Date: Thu, 07 Sep 2006 20:42:46 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (darwin)

root <address@hidden> writes:

>> I do not see any reason why a GUI for Axiom has to be written in
>> Lisp. Why not write a GUI for Axiom in Python or Java or C++? Why does
>> every GUI have to be portable? Why should there be only one GUI or
>> even a canonical GUI anyway?
>
> Perhaps I wasn't clear. I am not trying to create any kind of GUI.
> I'm trying to make a portable front end for the graphics code.

...

> I'm looking for a way to draw a colored line in a window on all of
> the existing platforms from Lisp. Given this I can re-implement the
> graphics portion of Axiom and make it run everywhere.

You were clear, and what really triggered my post was the assumption
that there were no Lisp bindings for WxWidgets.

This comment begs the question though, why displaying graphics
shouldn't be the responsibility of the GUI. I believe that Axiom
should just tell the GUI 'look, your last command prompted me to
create a plot. Here is the list of points and here are the additional
options the user supplied (eg. line style, point style, colors
etc)'. Then the GUI should make sure that the plot somehow gets
displayed. A simple one might just pipe the whole load to gnuplot,
another one might have a fancy plot window.

If what you write above is really what you want, Tk should do the
trick. There are several Tk interfaces for Lisp, the most portable is
probably Ltk (http://www.peter-herth.de/ltk/). It also consists of
pretty much one file, so it's easy to LOAD and to handle.

I just tried to run it under GCL, but it didn't work. I'm not yet sure
why. The only non-portable part of it seems to be the function that
calls the WISH interpreter, which is part of Tk. Changing that should
be easy enough, but GCL chokes on some conditions-related stuff. I'll
take a closer look.

Kai




reply via email to

[Prev in Thread] Current Thread [Next in Thread]