Send in your ideas. Deadline October 1, 2024

Last update: 2007-11-09

End: 2009-01


virtual machine for scripting languages

Parrot is a virtual machine (VM) designed to execute bytecode for interpreted languages efficiently. Many modern programming languages do not translate programs into machine native instructions, but produce some intermediate bytecode which needs be interpreted by a virtual machine when the program is run.

Parrot will run the bytecode for the PerlĀ 6 programming language, which is being developed. There is already a partial PerlĀ 6 compiler which uses Parrot. But Parrot is also able to be the run-time environment for various other compilers, of which some already have demonstration implementations.

Other famous virtual machines are JVM and .NET. These environments are not Open Source and not free of restrictions. They also both target only staticly typed programming languages. As a result, they are not ideal environments for many popular (scripting) languages like Python, Ruby, and Perl. Parrot fills that gap.

  • 2005-12-02: Allison Randal details differences between Parrot and Java/.NET virtual machines in her journal.

Project Parrot

Navigate projects