Can only 'perl6' parse Perl 6?

There is no perl6, and there are many Perl 6 compilers. Perl 6 has a grammar, although it's written in Perl 6, so as long as you can understand that, it tells you everything you need to know.

I just asked Larry this question, since I'm sitting across from him at lunch at the São Paulo Perl Workshop. He says it's now "Only Perl 6 can parse Perl 6", with capital letters on both Perls, which means something different than the original statement.

You don't need a specific program to do that though since Perl 6's goal is one standard and many implementations. There is no "perl6", although Larry had that aliased to his Rakudo for today's talk, even though he used a few different implementations for the examples.


Last I looked, Perl 6 inherits Perl 5's / character, which can mean "beginning of regex" when a term is expected, or "divide" when an operator is expected. Given that, and prototypes, and Perl 6 is at least in the same camp as Perl 5 for static tokenization. The only way to tokenize a Perl 6 program is to have a running Perl 6 interpreter in the Perl 6 compiler. Turtles all the way down, once again.