tim Rowledge writes:
Actually I don't think JIT is a sensible description at all; it isn't accurate and it doesn't really indicate the advantages that Exupery could have. For example, no extra startup costs, easier extension/ maintenance/optimising because it is written in a sensible language, access to all of the reflexive capabilities of the system, trivial fallback if the system is run on an unsupported platform (it just doesn't do the compiles and leaves everything to the interpreter), potential for using a spoon-like inter-image communication system to allow the compiles to run in a different image/machine, and... well I could probably go on.
Well, most people only really understand the static compilation model of C/C++, and the dynamic compilation model of VisualWorks and Java. They call any form of dynamic compilation a JIT. Many so called JITs compile in the background. I think IBM's Jalapino does background thread compilation.
Exupery is in some ways closer to a Lisp compiler written in Lisp than a Deutsch-Schiffman influenced JIT. So, you could say it's drawing on a tradition that goes back to at least the '70s.
Help is always appreciated. Exupery is a test heavy project, this should help people get up to speed. Tests are required for everything.
If anyone would like to help please join the Exupery mailing list and ask.
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/exupery
There's a list of things to do before 1.0 here:
http://minnow.cc.gatech.edu/squeak/5793
If you're thinking of writing hundreds of primitives for speed then helping out with Exupery is probably the best use of your time. If you're thinking about writing tens of primitives then it's debatable. If you're only thinking of writing a handful of primitives the just write the primitive unless working on a compiler is it's own reward.
Going back to crypto. From what I understand about SSL writing the streaming cyphers as primitives should make sense for the next few years. Writing public key primitives would require some serious profiling first as they're only used once per session. But we all vote with our time. Just don't get upset if in 5 years time you're rewriting cyphers into Smalltalk from primitives for speed.
Bryce
exupery@lists.squeakfoundation.org