Parrot es una
máquina virtual basada en registros, que está siendo desarrollada en
lenguaje C, y que pretende la ejecución de programas escritos en distintos lenguajes dinámicos, de manera eficiente. La misma utiliza un mecanismo de
compilación en tiempo de ejecución para acelerar la velocidad de ejecución de los programas y reducir la tarea de los
lenguajes interpretados. Actualmente es posible compilar el lenguaje ensamblador de Parrot y el PIR (su lenguaje intermedio), para generar
bytecodes -en formato Parrot- que pueden ser ejecutados dentro de esta máquina virtual.