Parrot - Présentation
Lorsque nous introduisons notre programme en Perl conventionnel, il est d'abord compilé en une représentation interne, ou bytecode; ce bytecode est ensuite introduit dans un sous-système presque séparé à l'intérieur de Perl pour être interprété. Il y a donc deux phases distinctes du fonctionnement de Perl:
Compilation en bytecode et
Interprétation du bytecode.
Ce n'est pas propre à Perl. D'autres langages suivant cette conception incluent Python, Ruby, Tcl et même Java.
Nous savons également qu'il existe une machine virtuelle Java (JVM) qui est un environnement d'exécution indépendant de la plate-forme qui convertit le bytecode Java en langage machine et l'exécute. Si vous comprenez ce concept, vous comprendrez Parrot.
Parrotest une machine virtuelle conçue pour compiler et exécuter efficacement le bytecode pour les langages interprétés. Parrot est la cible du compilateur final Perl 6, et est utilisé comme backend pour Pugs, ainsi que pour divers autres langages comme Tcl, Ruby, Python etc.
Parrot a été écrit en utilisant le langage le plus populaire "C".