Alternative, an extension of Applicative
, declares empty
, <|>
and these two functions:
One or more:
I tend to see them in Applicative
parser combinator libraries.
a :: Parser [String]
a = some (string "hello")
and I see many
used for purpose in the default definitions of Parsing in parsers
.
I think Parsec being the primary example of a parser combinator library hides the use of some
/many
since it redefines things like (<|>)
.