Quick jump:  What's new

Go to:
Weblog: parrot 
in Perl 6

or Parrot Compiler Toolkit is a set mostly in PIR written software, aimed to help implementors of high level languages (HLL) like Perl, Ruby, Python or LOLCODE (see Parrot Compiler).

  • NQP - Subset of Perl 6.
  • HLLCompiler
  • PGE - Parrot Grammar Engine, early implementation of Perl 6 regex in PIR. Absolete since NQP does regex too.
  • TGE - Tree Grammar Engine, in PIR written tool for transformations of AST (abstract syntax trees).

PolyMorphic Container or Parrot Magic Cookies are a type of register that holds objects.

Parrot Compiler

are sofware packages mostly written with PCT, sometimes PIR, that enable Parrot to "understand" an HLL and compile it down to Parrot bytecode.

  • Rakudo (Perl 6)
  • Punie (Perl 1)
  • Cardinal (Ruby 1.9)
  • Pynie (Python)
  • Pirate (Python)
  • Partcl (TCL)
  • Pipp (PHP)

Some of them however translate the bytecode into a format for other VM like JavaVM or .Net .



Parrot intermediate representation or PIR is one of Parrot's native languages. It's very close to Assembler (PASM) just adding syntactic sugar for variable generation, assignments and sub parameters.


Blizkost embeds the Perl 5.10 interpreter into Parrot with the primary aim to get access to some of CPAN from Rakudo. The project was started and is mainly developed by Jonathan Worthington. It's name means nearness as a opposite of distance in slavic languages.


(Parrot Grammar Engine), an early implementation of a Perl 6 grammar engine for the Parrot VM and part of the PCT. Mostly done by Patrick Michaud. It's outdated since NQP does Regex as well (also called nqp-rx).


The Rakudo Perl 6 Compiler ("rakudo" for short) targets the Parrot Virtual Machine, and it currently lives on github. Its developed by Patrick Michaud (pmichaud - lead developer), Jonathan Worthington (jnthn), Stephen Weeks and others, mostly using NQP. It will most likely become the "official" Perl 6.0 release.

To build the Rakudo Perl 6 compiler, follow the instructions on the official homepage.
Parrot and Rakudo change rapidly; if you have issues with the latest point release, be sure to try svn/git-latest of parrot/rakudo.

Also check out Getting Involved to learn about how to help with development, and see A Guide to the Pugs Repository for Rakudo Hackers.

Weblog Navigation
Weblog Archives
  • Loading...

Upload Files

Click "Browse" to find the file you want to upload. When you click "Upload file" your file will be uploaded and added to the list of attachments for this page.

Maximum file size: 50MB

File Name Author Date Uploaded Size

Save Page As

Enter a meaningful and distinctive title for your page.

Page Title:

Tip: You'll be able to find this page later by using the title you choose.

Page Already Exists

There is already a page named XXX. Would you like to:

Save with a different name:

Save the page with the name "XXX"

Append your text to the bottom of the existing page named: "XXX"

Upload Files

Click "Browse" to find the file you want to upload. When you click "Add file" this file will be added to the list of attachments for this page, and uploaded when you save the page.

Add Tags

Enter a tag and click "Add tag". The tag will be saved when you save the page.