Parrot Virtual Machine - Internals

Internals

There are three forms of program code for Parrot:

  • Bytecode is binary and is natively interpreted by Parrot. Bytecode is usually stored in files with the filename extension ".pbc".
  • Parrot Assembly Language (PASM) is the low level language that compiles down to bytecode. PASM code is usually stored in files with the filename extension ".pasm".
  • Parrot Intermediate Representation (PIR) is a slightly higher level language than PASM and also compiles down to bytecode. It is the primary target of language implementations.

PIR transparently manages Parrot's inter-routine calling conventions, provides improved syntax, register allocation, and more. PIR code is usually stored in files with the filename extension ".pir".

Read more about this topic:  Parrot Virtual Machine