To get things started...

However, one thing is seriously lacking in this theory... if the parser isperl, how does the perl parse? (Sort of a woodchuck chucking wood type ofthing.) Somehow, the external parser API thingy has to know enough perl(through the chosen language) to be able to handle the parsing.

DS> Nope. We do it in two phases. The end result will not actually parse perlDS> code to build the parser (we'll provide bytecode for that) but to start weDS> can run the parser through perl 5 to get a syntax tree until the perl 6DS> engine's capable of doing it itself.

Sounds fragile.

We bootstrap on perl5 to get a bytecode stream, and then that bytecodestream had better stay supported.

I remember this game. The Symbolics Lisp Machine (and probably other's ofthis ilk) did the same. You were able to modify the World to do anythingand hopefully you saved the original so that when your world fell downaround your ears, you had somewhere to get back to.

Please tell me that I'm wrong. (And that this will be able to parse codeat acceptable speed.)