William Stein wrote: > 2. Porting: We have an intense sequence if "Lisp days", both > workshops and 1-day long IRC events, where we go line-by-line through > the Sage library and rewrite everything in Lisp. As we go, we'll > make sure that the rewritten code is always at least as fast as the > original code (this shouldn't be a problem, because of LispX's > extremely good profiling and dynamic optimization features). I hope > everyone here is willing to pitch in significant time to this effort. > If you're not, I would really like to know what your concerns are.
In the transition phase, I think we should first write a Python interpreter in Lisp, say, called Lython. That way we can actually just run the current sage in Lisp. Of course, this project would be far more widely-applicable than just Sage, and would likely give huge speed increases. Plus we'll be able to leverage the masses of programmers and scientific software already in the Lisp community---we may not have to port any of our libraries at all! As such, I suggest we find a student willing to do this as a Google Summer of Code project. I believe the applications are due any day now, so said student will have to hurry to flesh out all the details involved in writing Lython. However, I think this project has an extremely high chance of succeeding. Another project worth considering for another student is writing a backend to LLVM in Lisp. I believe this would let us just compile all of our C libraries into Lisp code. I don't have enough experience with LLVM to gauge the feasibility of this project for a student in the next few months, but if it was feasible, I'm sure it would greatly ease the porting of, say, ATLAS, to Lisp. People have long said that Python gets most of its interesting bits from Lisp. It's time to move from the child's sandbox into the real world and just use Lisp straight out! I'm glad William finally saw the light. I don't think there's any doubt that the most advanced math system for its time was Macsyma. I don't think it was a coincidence that the owners of Macsyma also made Lisp machines. Clearly, the way to get ahead of the crowd, at least eventually, is to port things to Lisp and then run it on a Lisp machine. I mean, I think we just target being alternatives to Matlab, Magma, Mathematica, and Maple only because the commercial Macsyma is out of our league---until now. I'd love to be where the commercial Macsyma is in 30 years! It'll take a lot of hard work, but it'll be worth it! Thanks, Jason --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---