The use perl5; statement could be placed inside a local block -- that would aid developers moving from Perl5 to Perl6, as they could do complicated things the "old way" until they can figure out the Perl6 equivalent.
I sent a message to perl6-internals a while ago, asking if it would be possible to have multiple versions of the same language loaded. This will not be easy (much to my surprise and sadness, as something like only.pm for the language itself would certainly help with ensuring that modules work as intended), according to Elian. His main argument is that any bugs found will more likely be Parrot bugs than $language bugs. I don't know if has a point, but he's the Parrot man, so he probably knows best.
However, Perl 5 is hopefully not another version of Perl in this way. We'll have Ponie and Perl, and I assume that for sanity's sake, they will live as separate languages in Parrot. I expect that there WILL be something like Inline to enable having code of several languages in the same file. And because that will probably initially support whatever Parrot supports, that means you can use Ponie code in it.
I think Parrot will make having something like Inline easy, at least for languages that run on Parrot. I think inline 'Ponie', <<'EOP' is an acceptable alternative to { use 5; ... }. If not, feel free to fiddle with Perl 6's parser, as it will make trying this easy enough. Good luck parsing Perl, though!
Juerd # { site => 'juerd.nl', plp_site => 'plp.juerd.nl', do_not_use => 'spamtrap' }
In reply to Re^5: Perl 6 critique is a good thing
by Juerd
in thread Perl 6 critique is a good thing
by Juerd
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |