On 13/03/14 10:35, Ralf Hemmecke wrote: > It's not really the same, but you might want to look into ExpressionTree > > http://www-sop.inria.fr/cafe/Manuel.Bronstein/sumit/sumitdoc/node550.html > > See also: > https://github.com/pippijn/aldor/tree/master/aldor/lib/algebra/src/extree > > This is, however, just a tree for the expression. There is no > information in it where to position the respective subexpression on a > output device. That would have to be done by some (tex/html/mathme/...) > driver later. So in some sense ExpressionTree is only half of the > answer. In Aldor, basically every (algebra) domain knows how to convert > an element into an expression tree. However, the print routine for > expression trees is currently not 2-dimensional in Aldor. > > Would be nice to combine the FriCAS and Aldor way.
Yes, I'm all in favour of as much commonality as possible. I guess, with this sort of thing, there is no right or wrong answer. It just depends on what the designers want to optimise. Does the functionality go in each domain, in which case the mathematics code is cluttered with boilerplate code, or does the functionality go in the drivers which gives less control over the output. It would be interesting to know why the Aldor designers did it differently? Are there genuine reasons for the different approaches? Or is it just that the Aldor programmers never had time to build this functionality. I had a look on the links you gave but I couldn’t find any of this top-level why-we-designed-it-this-way information. Perhaps the Aldor programmers are just as economical with the documentation as when they programmed the original SPAD? I think it would be really good if this FriCAS code can be put into a state where changes can be made. Some of the changes that I would like are: 1) Support in output expressions for operator precedence so, for example, '/\' operator for Clifford algebra could have a different precedence to '/\' operator for booleans. (I realise input would have to be done separately). 2) Support in output expressions for graph theory so they know about nodes and edges. Martin -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/fricas-devel. For more options, visit https://groups.google.com/d/optout.
