I came across this discussion when searching for info on FriCAS and sympy together, and found the comments to be worthy of some response.
1. The Axiom languages do not go back to the 1960s. Anything you might say about them blaming defects on historical ignorance of those ancient times is probably misplaced. While there were predecessors to Axiom going back to the Scratchpad project at IBM (which was late 1960s), the view from the IBM group was that to automate all of mathematics one needed an appropriate programming language substrate, and none of the existing programming languages was suitable. There is a traditional approach in building large systems to define a language layer that allows for ease of expression. This is almost inevitable in large lisp systems where ideas like building interpreters, defining macros for compiling, and other features are often used. Hence SPAD and ALDOR. Frankly, the thought that python is suitable for a CAS base is easily shown to be false by looking at Sage, and the uncomfortable syntax and misfit between Sage types and python types that have the same underlying concept. So python/Sage is wrong. But the idea that the existence of SPAD and ALDOR is a hindrance to development --- eh, not obvious. Unless you have tried to write the same algebraic symbolic code with and without them, (in lower level, say Lisp), you are not in a position to judge. The note below which suggests reading the code and writing it anew in python might make sense -- I don't know. But if someone said to you, look at this short Lisp program. Can you write it in (say) FORTRAN, you might say -- sure -- it's not so very different. Except that to implement the equivalent program in FORTRAN you might have to also implement a storage allocation / garbage collection system. So first impressions of the ease of conversion from ALDOR etc to python might also be false. RJF The thought that all mathematics would be simple to encode given the right programming language has been unsuccessfully pursued for about 60 years. I supervised aPhD thesis circa 1984 on this general topic. On Thursday, January 23, 2014 8:56:02 AM UTC-8, F. B. wrote: > > > > On Thursday, January 23, 2014 2:24:36 AM UTC+1, rl wrote: >> >> >> I doubt that there is such a language today, except, maybe, >> Haskell. (All the OO things like C++ or Python can be used to >> write algebraic code of course, but it will always be less >> concise.) But this is my personal conclusion. >> >> > What about Scala? It's both object-oriented and functional. The European > Union has selected Scala to be granted millions of euros of development > funds, there are people who claim it is a very good language. > > > >> > >> http://www.euclideanspace.com/maths/standards/program/spad/syntax/index.htm >> >> Oh, forget about that. The much better source for information >> about SPAD is the "Aldor User Guide". Aldor is the SPAD successor >> and became free software in the last year. >> It is more clean and well defined but still similar enough >> in concept and structure. >> > > I googled a bit, and I found that mattpap has written an interface to > IPython for Aldor: > > https://github.com/mattpap/IAldor > > By the way, he also wrote IScala to embed Scala into IPython: > > https://github.com/mattpap/IScala > > Maybe Scala would make a good language for a CAS. It supports a Lisp-like > macro metaprogramming, it also has a native pattern matching interface on > its own code. > > He is a SymPy contributor, right? > > Personally, I'd say that this is a waste of time. Reading the >> Axiom source may help to gain even better understanding of the >> math, but it would be much easier to just write the code anew. >> > > Well, that way it would be possible to get inspiration also from Maxima, > as long as code isn't copied (as it is GPL). > -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sympy+unsubscr...@googlegroups.com. To post to this group, send email to sympy@googlegroups.com. Visit this group at http://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/2df14351-9796-4a93-a397-545295a537de%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.