Trying to design a minimal algebra for parser combinator