Bob, After this reply, I promise to "give it a rest" ... :)
On November 1, 2005 1:16 AM you wrote: > C Y [EMAIL PROTECTED] wrote: > ... > Having worked on a couple projects which involved some form of > custom language... > > It is far, far more important to have a system which people can > jump into quickly than it is to have a system that is complete, > thorough, and consistent. If it is easy to get into, it will > become complete, thorough, and consistent eventually. > I agree with this. But from my point of view the BOOT language embedded in Axiom is much easier to "jump into quickly" compared to lisp, if your starting point is SPAD or if you had previously programmed in Python (unless you also happen to be a lisp programmer). > By writing in a language no one has ever heard of, the project > will be doomed to those that already know it, and those that > have a lot of time on their hands. Open source development > is "itch scratching" and if it takes a month to figure out how > to scratch the itch, most people won't do it. I cannot help but counter this view with another quote from Norvig: Teach Yourself Programming in Ten Years http://www.norvig.com/21-days.html "Researchers (Hayes, Bloom) have shown it takes about ten years to develop expertise in any of a wide variety of areas, including chess playing, music composition, painting, piano playing, swimming, tennis, and research in neuropsychology and topology." He claims this applies to programming as well and I doubt that he would have any objection to adding computer algebra systems to the list. Of course we aren't talking about learning to program just to make small changes to Axiom. We must assume that the people who choose to work on Axiom already have quite a lot of other relevant experience including programming in several languages. I think this is what limits the potential developers much more than just learning another new language. > > Complexity of software scales as exp(size). Doubling the > size (maintaining a compiler too) means far more than double > the work, and will require far more than double the coders. Maintaining both a library compiler (SPAD) and an interpreter (an integral part of the user interface) is inherent in the design of Axiom. BOOT is closely related to SPAD (or perhaps better said, SPAD is closely related to BOOT). So really there is no additional compiler to maintain. > > I don't really care what language is used. I've used around > 40 in my life and can learn another. But Axiom will die if it > is necessary to maintain a compiler also, I don't agree. I think maintaining a compiler as part of Axiom is essential. > and it will die if other people can't pick it up quickly and > contribute. KISS. That might be true. But I think we need to be very clear what you mean by "pick it up". If you mean "learn to use Axiom to solve some relatively simple algebraic problem", then I don't think Axiom is much worse off than any other computer algebra system in that regard. From there to programming Axiom library routines is not such a big step. And there are other things that one would need to "pick up" before one could start making changes to Axiom itself. > ... Regards, Bill Page. _______________________________________________ Axiom-developer mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/axiom-developer
