V6 (Perl)


v6 is a module for the Perl programming language which runs under Perl version 5, and transforms Raku code into Perl 5 code on the fly. To quote the release notes:

Components

v6 has many parts, divided into a stack of services which can be used to write Raku code directly, or to implement Raku features in Perl 5 programs.

Moose

and other modules such as Class::MOP provide a low-level emulation of Raku's object model and meta-object protocol. This object model can be used directly or through v6.

Pugs::Grammar::Rule

Pugs::Grammar::Rule provides access to Raku's "rules", which are a superset of classic regex functionality which allow the development of entire grammars.

Data::Bind

Data::Bind provides the parameter binding features of Raku, including named parameters.

Module::Compile

Module::Compile is like a source-filter, but is safer for real-world code development. It is this module which allows v6 to parse Raku code and directly translate it into Perl 5 code which is then executed.