>
>
> BTW, we have built a MathML -> "Sage input" translator.  This allows us to 
> take simple expressions produced from, say, the MathDox formula editor and 
> pass them to Sage for processing.  How do I submit this for inclusion in 
> Sage?  I have never felt sufficiently confident to want to submit any of my 
> efforts heretofore, but this works fairly well.
>
> John A. Velling
>
> Hi John,

I think we spoke at the Joint Meetings about some of your projects, a 
conversation I wasn't able to follow up on due to time constraints (though 
I still have your email on a Sage business card).  Here are some things you 
may want to do with this; this sounds quite valuable.

First, look 
at http://trac.sagemath.org/sage_trac/browser/sage/misc/mathml.py which is 
a (very old) implementation of some kind of MathML output from Sage thing. 
 I have no idea if it is any good or works, given that there are no 
docstrings :) and there is also

sage: search_def('mathml')
misc/mathml.py:57:def mathml(x):
rings/integer.pyx:1035:    def _mathml_(self):
rings/rational.pyx:705:    def _mathml_(self):
symbolic/constants.py:239:def unpickle_Constant(class_name, name, 
conversions, latex, mathml, domain):
symbolic/constants.py:268:    def __init__(self, name, conversions=None, 
latex=None, mathml="",
symbolic/constants.py:414:    def _mathml_(self):
symbolic/expression.pyx:669:    def _mathml_(self):

so at least a tiny bit of support, but it's very rudimentary.  Here's one 
doctest:

sage: mathml(pi+2)
MATHML version of the string pi + 2

For some history, some comments William made a few years ago.  
http://www.mail-archive.com/[email protected]/msg00234.html

I suppose that when we switch to MathJax we could potentially do a Sage -> 
MathJax -> MathML conversion trip.  Does jsmath support MathML?  I don't 
think so.

Also, unless this was you, which I don't think, others have asked about 
this.  See for 
example http://ask.sagemath.org/question/527/parse-and-evaluate-mathml - so 
this is a great project.

Finally, where to contribute?  Amazingly, there isn't an open Trac ticket 
for this.  I've opened http://trac.sagemath.org/sage_trac/ticket/13086 for 
this.  All you have to do is acquire a Trac account 
(see http://trac.sagemath.org/sage_trac/ for instructions, this is not 
hard) and post code.  

Ideally, of course, this would be something created using our standard 
developer workflow (see http://www.sagemath.org/doc/developer/index.html) 
but I'm not sure exactly how you've put it there.  I feel like this should 
go in sage/interfaces/mathml.py, and maybe the "old" stuff should too.  See 
http://trac.sagemath.org/sage_trac/browser/sage/interfaces/r.py or other 
files in sage/interfaces, especially the  def _sage_(self): methods. 

If some students helped, so much the better - we love having new 
contributors and helping students see that computation and math go together.

Good luck!
- kcrisman

-- 
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-support
URL: http://www.sagemath.org

Reply via email to