I just finished converting Perk (a Java compiler targeting Parrot)
from PCT+NQP/PIR to PCT+Rakudo. That is, the main entry point and
actions.pm for my compiler are written in Perl 6.
http://github.com/chrisdolan/perk/tree/master
I had to make a few little hacks along the way:
* PCT::HLLCompiler.parsegrammar() and .parseaction() require
Parrot strings as arguments, not Rakudo strings. So, I used .WHICH
as a hack to downconvert.
* I couldn't figure out how to call 'compreg' from Rakudo, so I
used inline PIR
* a '<!before <keyword>>' token in my grammar couldn't find the
<keyword> token in the grammar, so I had to fully qualify it as
<Perk::Grammar::keyword>. This is probably because the grammar is
declared from Rakudo vs. compiled directly from PGE.
Happily, I didn't need to change a single line of code in my
actions.pm -- with the new 'make' builtin, my NQP code is fully
supported by Rakudo. It would be interesting to see what remaining
NQP constructs are not supported under Rakudo.
Chris