##
print "not " unless '<<><><<<>>><>>'=~/^((?&:<(?:[<>\\]+|\\.|(?:&))*>))$/;
print "ok - $1\n";
##
##
my $rules=qr/(?&& # compile this stuff, but dont match it
(&foo: .... ) # define ...
(&bar: .... ) # ... some rules
)
/x;
if ($blah=~/(&foo)(&bar)$rules/) { ... }