If you think that some VMs, in some scenarios relevant to you, can be a good thing
I can't immediately think of any scenario relevant to me where a VM would be a good thing, no. I do however see other situations where they might be: phones, embedded, applets, etc. Hence my comment about the orthogonal use cases.
I have barely used Lua so am not qualified to comment on the particulars there. Conversely, I have battled frequently against the JVM and will be a very happy camper if I never have to deal with it or its like ever again. The problems with it which are so bad that it is unsuitable for pretty much any of my types of work include:
- It is glacially slow
- It requires constant care and attention in both invocation and running
- It does not recover gracefully
- It is an unbelievable resource hog
- It isn't compatible with other versions of itself (despite write-once-run-anywhere being one of the principles of Java as a language)*
- It isn't even compatible with other versions of itself from the same vendor*
- It doesn't integrate well with non-java libs and utilities*
While those I've marked with an asterisk are quite possibly "features" of the JVM only, the others do appear to be equally applicable to other VMs.
Those areas I mentioned where VMs might be a boon (phones, embedded, applets) are no doubt ripe for Perl6 when it hits maturity. The rest, not so much. Those of us who work elsewhere would very much like to keep on using Perl instead and not have to explain constantly why Perl6 isn't an upgrade.