On 11/15/10 05:59 AM, rjf wrote:
On Nov 14, 11:45 am, "Dr. David Kirkby"<david.kir...@onetel.net>
wrote:
I asked RJF what languge he thought the interface should be. As 10 options I
consider might be viable choises where
Whether there should be a single language for implementation
and user interface for a computer algebra system has occupied
designers
and students of such systems for about 50 years, and there are many
papers
on this topic. And there are many papers (phd theses, too) describing
new and wonderful
user interfaces. My advice is to look at the literature. As they say
(more or less)
a month of programming can save an hour in the library.
RJF
Of course if there was a simple answer, there would not need to be all these PhD
theses on the topic.
You are critical of Sage's choice of Python, but have not proposed a better
solution.
Writing a language from scratch is not practical given the skill set of Sage
developers. For those with CS degrees, who have studied compiler design, it
would be, but it is no easy task - contrary to what you may think, I have looked
at the literature on this. I even purchased this book on compiler design
http://www.amazon.com/Modern-Compiler-Design-D-Grune/dp/0471976970
and have come to the conclusion writing a new language would have been a *very*
difficult task, even if you use something like LLVM as a back-end. (That's why I
find Pure an interesting language. It happens to be developed by someone with
both a CS and maths background, and uses modern tools like LLVM. But it's not a
mainstream language)
So that leaves existing languages. One then needs to consider the developers who
know the language and those who would be willing to learn it.
There is no doubt the syntax of Lisp is very off-putting to people, which
explains its relative lack of popularity. I've seen your paper about why C is
not your favorite lanaguge. But C is far more popular than Lisp.
There are the odd few Lisp patches to Maxima on the Sage trac tickets, and
people have problems getting those reviewed, as so few know Lisp.
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