Today we've switched PGE to start using the compreg opcode,
instead of using find_global to locate the compiler.  As
a result, compiling a rule is now performed as:

    load_bytecode "PGE.pbc"
    $P0 = compreg "PGE::P6Rule"
    $P1 = $P0("pattern")

The PGE.pbc file defines two compilers, "PGE::P6Rule" and 
"PGE::P5Regexp".  The P5Regexp compiler works but is still in its
infancy -- not all p5 regular expression constructs are supported
yet.  (I've now realized that there's a lot about perl 5's regular 
expression syntax that just isn't regular.)  Patches and tests
are encouraged, of course.

The "PGE/Glob.pir" module provides a "PGE::Glob" compiler, which
can do standard wildcard matching, and "PGE/Util.pir" provides 
a "PGE::P6Grammar" compiler for loading grammars and sets of rules
in a Perl 6 syntax.

The previous use of find_global to locate the PGE compilers is
now deprecated and may be removed or changed at some point in 
the future.

Also, PGE now has a lookbehind rule (<after ...>).

Lastly, we've recently posted an updated version of Synopsis 5 
at http://dev.perl.org/perl6/doc/design/syn/S05.html .  Corrections
and improvements welcomed.

Pm

Reply via email to