Hi All Is there somewhere you can point me to a discussion about the choice for a register VM rather than a stack VM? If not, let's have it now - I'll volunteer to tidy the end result into a postable form.
The FAQ briefly mentions: we're already running with a faster opcode dispatch than [Perl, Python, and Ruby] are, and having registers just decreases the amount of stack thrash we get. Can I for one ask for some more detail? The FAQ also points to the 68k emulator as a successful example. But the 68k emulator *had* to be register based. This example shows it can be done, but gives no evidence that it *should* be done for a script VM. Note that I have *absolutely* no opinion on this (I lack the knowledge). It's just that with Perl, Python, Ruby, the JVM and the CLR all stack based, Parrot seems out on a limb. That's fine by me -- innovation is not about following the crowd, but I feel it does warrant stronger justification. Tom. p.s. (and at the risk of being controversial :) Why did Miguel de Icaza say Parrot was "based on religion"? Was it realted to this issue? Why is he wrong?