Felix Lawrence wrote:
FullForm looks like a bit of a headache to me - in part one of the
examples given, InputForm gives Sqrt[5], whereas FullForm gives
Power[5,Rational[-1,2]].  The former is closer to sage's syntax and
should be easier to parse (and a basic parser for InputForm already
exists, in _sage_repr().)  So I'm not yet convinced that FullForm is
the way to go.

But I've just noticed that mathematica doesn't seem to be responsible
for the weird orderings here after all - it seems to be sage itself.
For example:
sage: 4+I
I + 4
As Nick wrote some time ago,
In this example, isn't the sage() function supposed to convert this to
a sage data type, which has fixed order printing on all architectures?
It seems that sage's order printing might be at fault in the
math_bessel_K example.  Could anyone who knows about sage's order
printing comment on this?


That will need someone other than me, as I don't know Sage that well. I don't really understand what the Mathematica interface is trying to achieve either. I just tried to use it, and found it failed one of the tests.

I don't know how practical this is, but Mathematica has an API for linking to Mathematica code, through the 'Mathlink' interface.

http://www.wolfram.com/solutions/mathlink/mathlink.html

It requires linking to a proprietary C library, but since this is optional, and Mathematica is proprietary anyway, I don't see why that should be an issue.

That would seem preferable to trying to parse the text output of Mathematica, though in this case it seems the problem lies in Sage and not Mathematica.

In any case, the biggest problem here is that a patch for #3587 got
through that broke functionality, and that no developers noticed until
now because no-one ran sage -t -optional.  I think we need to write
somewhere in big letters that sage -t -optional must be run for any
tickets affecting optional packages.  It's a bit silly to change the
mathematica interface then not run any doctests involving mathematica!

Of course, you hit on a very valid point. It was clear in this case that changes were made to the Mathematica interface, but the interface to Mathematica was not checked.

However, I think this goes back to the point I made the other day, about there should be a distinction between "optional" and "experimental".

http://groups.google.com/group/sage-devel/browse_thread/thread/571efc7b4b0c9774#

At the moment, with no clear definition of what is an optional package, why should anyone bother checking? We are told that 'experimental' have in some cases not built on any machine whatsoever.

http://www.google.com/url?sa=D&q=http://www.sagemath.org/packages/experimental/&usg=AFQjCNF-soAo76jucUv5JSB6wpZIlrWCWw

IMHO, without a clear written definition of what can be expected of an optional package, there is no reason to bother checking them. I feel we *need* to define what optional means, what are the expectations, then we can address these sorts of probably better.

Cheers,
Felix


Dave

--
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to