Just random pick from today's mail, follows below, and sorry for top
posting. 100+ lines of quotting (I didn't really count, it may be less than
that) and 4 lines of comment. With my spam rules (everything with more than
50% of quotting goes to junk mail) it went directly there, where it belongs.
But some other posts with 2 lines of comment could have more sense. Because
of that, I have to go through all spam only to see whether it have some
sense, or not. And I am guessing that I am not the only one doing that.
Is there really any point in quotting all the message that you respond to
with 1 or 2 sentences?
Alec
On Mon, Aug 18, 2008 at 5:10 PM, Bill Page <[EMAIL PROTECTED]>
wrote:
>
> Martin,
>
> On Sat, Aug 16, 2008 at 1:59 AM, Martin Rubey wrote:
>>
>> Bill Page writes:
>>
>>> I am not so sure that a similar role can be played by FriCAS.
>>> The FriCAS/Axiom libraries are not so easily called by an
>>> external program. Instead we have the same option to interface
>>> with FriCAS as we have with Maxima - via the pseudo-terminal
>>> (pty) serial interface. This has the same drawbacks in both
>>> Maxima and FriCAS.
>>
>> I recently thought that it might be quite easy to have a domain
>> SAGEForm, similar to OutputForm or --
>>
>> actually, doesn't OpenMath provide what SAGE needs?
>>
>
> OpenMath was an early attempt to do something much more ambitious than
> what Sage needs. *If* the OpenMath option in Axiom was working today,
> then it would indeed be a good way to pass output from Axiom back to
> Sage while retaining as much of the Axiom type information as
> possible. The necessary hooks for OpenMath generation are present in
> the current panAxiom code, but OpenMath as implemented in Axiom
> depends on an external library that is not currently included with any
> panAxiom version.
>
> But as I said, OpenMath attempts to solve the general problem of
> exporting full semantic information from a computer algebra system.
> This is more than what is required for a good interface to Sage. In
> panAxiom we also have the MathML output. Currently only presentation
> MathML is generated but there is an extension of MathML that include
> much more content (semantic) information without getting into the
> generalities of OpenMath. Perhaps a 'SAGEform' domain could be based
> on an extension of the MathML output option.
>
> But still misses one of the hardest parts - mapping Axiom type
> structures back to Sage in a way that other parts of Sage understand
> these structures. At a mathematical level (e.g. various kinds of
> polynomials) this is probably not too hard, but at a more fundamental
> level things get more difficult. For example, Sage (actually
> originating with Python) has not data structure directly corresponding
> to 'Record' or 'Union' in Axiom. This can cause a lot of trouble when
> trying to access the results of those computations in Axiom that
> return complex results. You will no doubt be aware that this occurs
> when accessing the output of GUESS from within Sage.
>
> The "dumb" mode of calling an external program like Axiom just passes
> a string, e.g.
>
> sage: axiom('x^2+1')
>
> then the parsing of 'x^2+1' occurs entirely within Axiom. But it is
> not so interesting to always be creating and passing strings.
>
> There is very a little documentation available in Sage about how the
> conversion from Sage internal format to some external format (such as
> used when calling Axiom). This happens automatically when you write
> something like
>
> sage: axiom(x^2+1)
>
> without including the 'quotes'. In this case Sage parses the expression
>
> x^2+1
>
> and creates a native polynomial object. Then the 'axiom' function must
> now recursively process this Sage expression until it finds objects
> and operations near the bottom of the tree that it knows how to
> interpret as Axiom objects and operations. Most of the coding that
> accomplishes this is outside of the 'axiom.py' interface itself,
> distributed over several other Python classes. As far as I know
> William Stein is still the best source for how this conversion works.
> He has said that "really it is very simple" and I guess I do
> understand parts of it, but you should expect to spend some time to
> re-discover how it works sufficiently well in order to improve it.
>
> In order to pass Axiom expressions back to Sage, it seems to me that
> we might have to implement something like this only working in
> reverse.
>
> Anyway, I think there is a lot of potential for improvement in the
> existing 'axiom.py' interface even without considering how to solve
> the problem of an efficient application program interface. One thing
> that I miss a lot when using Axiom from the Sage notebook is the
> ability to embed Spad code and compile it. This should be quite
> straightforward to add to 'axiom.py'.
>
> I would be glad to work with anyone else interested in improving the
> Axiom/FriCAS interface for Sage.
In the long term there should be a way to call lisp from C or Python
directly. Then all the problems above could be solved
much more easily. If the only way of interacting with lisp is over a
pexpect interface, then something is very wrong.
Ondrej
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---