| ▲ | debugnik 6 hours ago | |
> If you combine partial parsers, you end up with a partial parser. If by partial we mean the parser can fail, not necessarily. optional(elem) and repeat(elem) are total if elem doesn't consume input on error, at least for a reasonable semantics of parser combinators (although we usually consider it a programmer error if elem matches the empty string in repeat(elem)). | ||
| ▲ | mrkeen 6 hours ago | parent [-] | |
No, that was my ironically landed upon definition of partial. The article used it as in a sub-parser, which is the other thing I objected to. If you add two Integers, you get back an Integer, not a Sum. Same principle here, two parsers make a parser. You don't need to write new code to combine a partial parser with a parser, or vice versa. | ||