Parsec-style parser combinator library in Perl