axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] Re: AxiomUI project funded


From: Bob McElrath
Subject: [Axiom-developer] Re: AxiomUI project funded
Date: Mon, 27 Jun 2005 20:26:59 -0700
User-agent: Mutt/1.5.6+20040523i

Kai Kaminski address@hidden wrote:
> Sure. The cl-typesetting library is currently developed by Marc Battyani 
> (http://www.fractalconcept.com/) and is "intended to be an alternative 
> to the TeX like typesetting systems." It is still under heavy 
> development but is already used by some people. 

I think there is simply too much momentum behind TeX and MathML to
contemplate an alternative typesetting system.  Dealing with these two
will be headache enough...

> But Axiom doesn't only send mathematical expressions as output. What 
> about plots, for example? We'd also have to integrate an SVG library in 
> Axiom then, or generate the SVG in the browser using Javascript. Not 
> only am I confused as to wether the latter is actually possible, it's 
> also a nuisance to have to use Javascript. Another example are 
> conditions. If some part of Axiom throws a condition it would be cool if 
> Axiom could communicate that to the front-end together with a list of 
> restarts. Then the front-end could ask the user what to do and offer him 
> to send a bug report. Of course, Axiom could instead generate an 
> HTML-page offering the user a list of restarts, but that would mean even 
> more non-math code in Axiom.

We should enumerate an API specifying what input the back-end expects,
and what output it can give.

> Well, for other reason I want a separate GUI back-end written in Lisp 
> anyway. That back-end would read the sexp-based output and emit XML/HTML 
> for the browser. Implementing an sexp parser in a web browser is not a 
> good idea, I agree. One thing to consider is that Axiom has its 
> knowledge in some Lisp data structures anyway, I suppose. Hence writing 
> the output in a format that is native to Lisp (sexps) should be very 
> straightforward.

So you're proposing *three* applications?
1) axiom
2) sexp -> xml converter
3) web browser/javascript

I think the middle application is probably unnecessary, but let's get
into the nitty gritty of what we want to exchange.

I suspect that any potential GUI will want the same things, and will
want those things in either sexp or XML format.  Building both those
into axiom will be fruitful.  But I think the middle layer would end up
being nothing more than a format converter... no?

I think the API should consist of RPC calls, with arguments marshalled
in either sexp or XML.  Unless there is a strong reason to believe we
cannot simply do a 1:1 conversion between XML and sexp, I advocate a
single API and a single XML <-> sexp converter.  This is already
present, to a large degree, in the axiom language.

> But it shouldn't hang. And it should also continue to deliver help pages 
> while a computation is running. Whenever I'm waiting some long-running 
> process to finish I start reading documentation. If we don't have either 
> threading or separate processes that's pretty much impossible.

Why should axiom "deliver" help pages at all?  Why can't the interface
read them directly off the disk?  And when those help pages contain an
axiom session, why can't the interface start a new session for
evaluation (so that it does not interfere with the main computation).

This will still require threading in the server, but it's simply
threading of axiom sessions, and not truly "interface code".

The only thing missing from this idea is "search".

> >It should be easy to use these existing pieces to enable a 
> >   )set output sexp on
> >and
> >   )set output mathml on
> >by converting sexp's to mathml.
> > 
> That's my point. If we have sexp output it is trivial to convert that to 
> any kind of XML we'd like, apart from semantics, but no format would 
> solve that problem.

What do you mean by "no format would solve that problem"?  What are you
referring to with "format"?  And the problem is conversion of sexp <->
xml?

Now that hyperdoc is working...I just discovered axiom's graphics
capabilities.  Graphics will require a lot more thought.  My google
searches turned up basically nothing as far as scientific graphics in
lisp.

--
Cheers,
Bob McElrath [Univ. of California at Davis, Department of Physics]

    "One of the best ways to get yourself a reputation as a dangerous citizen
    these days is to go about repeating the very phrases which our founding
    fathers used in the great struggle for independence." --Charles A. Beard

Attachment: signature.asc
Description: Digital signature


reply via email to

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