applicative parser: written