Когда мы передаем нашу программу в обычный Perl, она сначала компилируется во внутреннее представление или байт-код; этот байт-код затем подается в почти отдельную подсистему внутри Perl для интерпретации. Таким образом, существует два разных этапа работы Perl:
-
Компиляция в байт-код и
-
Интерпретация байт-кода.
Компиляция в байт-код и
Интерпретация байт-кода.
Это не уникально для Perl. Другие языки, следующие этому дизайну, включают в себя Python, Ruby, Tcl и даже Java.
Мы также знаем, что существует виртуальная машина Java (JVM), которая является независимой от платформы средой исполнения, которая преобразует байт-код Java в машинный язык и выполняет его. Если вы понимаете эту концепцию, тогда вы поймете Parrot.
Parrot — это виртуальная машина, предназначенная для эффективной компиляции и выполнения байт-кода для интерпретируемых языков. Parrot является целью для окончательного компилятора Perl 6 и используется в качестве бэкэнда для Pugs, а также множества других языков, таких как Tcl, Ruby, Python и т. Д.
Попугай был написан с использованием самого популярного языка «C».