Returns a parser that returns the first successful result
The result from this parser, or failing that the alternative
The parser to try if this one fails