What is PL/Parrot?

PL/Parrot is the Parrot Virtual Machine, embedded into the PostgreSQL relational database. This means that any Parrot language has the opportunity to become a PostgreSQL Procedural Language (PL). PL/Parrot, supports writing stored procedures in the following languages:

PL/Perl6 is the first implemented High Level Language (HLL) on PL/Parrot. It loads the bytecode file for Rakudo Perl 6, and provides wrapper code in PIR which creates a Rakudo compiler object that executes the wrapper code and marshalls data.

Requirements

  • Operating Systems: Linux, *BSD, or OS X. If you would like to help port PL/Parrot to other OS's, please let us know!
  • Parrot: 2.5.0 or newer
  • PostgreSQL: 8.3 or newer

Goals

  • Give developers the ability to write stored procedures in PIR, a fast and portable dynamic language.
  • Give developers the ability to write stored procedures in any language that runs on top of Parrot.
  • Ease the creation of new Postgres Procedural Languages (PLs) by creating a framework for adding Parrot HLL's to PL/Parrot