some scratch code for parser combinators