The Parrot Bytecode Interpreter

Parrot is a common bytecode format and interpreter for dynamic languages; it is designed to run Perl 6 code efficiently, but is intended to be language-agnostic.

Documentation

The Parrot documentation is spread across the following files:

intro.pod

An introductory article on what Parrot is and how to do some interesting things with it.

overview.pod

An overview of the Parrot architecture and design.

core_ops.pod

A description of the core operations in the Parrot assembly language.

parrot_assembly.pod

The master list of Parrot assembly operations; not all of these have been implemented, so you should stick to core_ops when writing your assembly programs.

vtables.pod

Describes what PMCs are and how they work.

parrotbyte.pod

The Parrot bytecode format.

packfile-perl.pod, packfile-c.pod

The APIs for accessing packed bytecode files (packfiles) from Perl and C.

strings.pod

A description of the string implementation.

tests.pod

Hints on writing tests for the Parrot interpreter.

Supported Platforms

Parrot compiles and runs on a large number of platforms, including all common ones. The Parrot team is committed to supporting the following combinations as "core platforms": Linux (x86), CygWin, Win32, Tru64, OpenVMS (Alpha), Solaris (Sparc), FreeBSD (x86).

Authors

Parrot is developed and maintained by the members of the perl6-internals@perl.org mailing list. Dan Sugalski (dan@sidhe.org) is the chief architect, and Simon Cozens (simon@netthink.co.uk) is the current release manager.

Web pages

See

http://dev.perl.org/
http://cvs.perl.org/
http://www.parrotcode.org/

for more information.