|Do you know where your variables are?|
Okay, I’m going to entirely skip over “Perl 6,” whatever it turns out to be, and go straight on to what I could actually use right now. Any takers?
I want “Perl 7” to consist of a use moose; implementation that is 100% compatible with the current Perl 5.x, passing each and every existing test without exception or variance, but 25% or more faster and using 25% less system resources.
This is not going to win you brownie-points at the next Language Designer’s Conference. You are not going to be able to lay claim to revolutionizing the world of computer programming with your splendiferous ideals. In fact, your peers at such a conference are likely to give you pitying looks, as though you had been tasked with building a beautiful new archway over the entrance to a supermarket.
However, I could use it right now ... and I suspect that I am not alone in this.
It would also be excellent if your implementation ... which of course would be optional in that I could flip it off-and-on and know that my software will still work as before ... also introduced a greater sense of compile-time error checking into the Perl language, at least insofar as the Moose constructs are concerned. Perl really doesn’t have a “compile-time” to speak of, yet Moose, in a very sideways sort of way, does introduce semantics that could be compile-time checked. That would be very useful.
The best(?) thing is: you, the designer, don’t have to design anything new. (In fact, you are forbidden to design anything new.) Moose, by now, is already well-understood and already in production around the world. Your task is to create a more efficient implementation of it. (Oh, how utterly boring.)
Any perlguts-savvy takers?