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:43:05 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (darwin)

Kai Kaminski <address@hidden> writes:

> The solution is to separate the GUI from the Axiom core and make GUI
> programming easier. The former is pretty easy, just get rid of the GUI
> code in $AXIOM/src. That would also get rid of most of the C code and
> thereby improve portability of the core. Making GUI programming easier
> is a lot more work.
>
> For a GUI to be more useful than an Axiom terminal session, it needs
> to be able to understand Axiom's output to some extent. It also needs the 
> ability to
> query Axiom for all kinds of information, eg
>
> - list all existing variables/functions/types/commands/loaded libraries/etc
> - list all functions/commands that are either of a given type or applicable 
> to a given object
> - where is the documentation for this library/function/command/etc?
> - where is the source code for a given function?
> - show me all functions/libraries that call/are called by function/library X
> - in debugging mode: supply a stack trace
>
> Create an API that supports this kind of functionality and future
> versions of itself, and make it available over a socket using a simple
> (in every programming language) clear-text protocol. Done. Sooner or
> later someone will write a GUI then.
Just a minute ago I revisited the Maxima mailing list archives and
found the following two messages supporting my point of view to some
extent:

http://www.math.utexas.edu/pipermail/maxima/2004/008349.html

  Argues that the output of Maxima shouldn't just be 'textual chatter'
  that the other end (a GUI or another tool) has to sort through. He
  calls this the 'stone age approach', and that's what it is.

  Unlike him I believe TCP sockets are nicer for communication than
  CORBA, but that's a detail. Just like the choice of XML, SEXPs, JSON
  or some other scheme for encoding the information that Axiom exchanges
  with the GUI.

http://www.math.utexas.edu/pipermail/maxima/2004/008303.html

  Argues for a clear separation of the GUI from the computational
  engine.

Kai




reply via email to

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