
On 15 December 2011 06:29, Chris Wong
class (Applicative f, Monoid f) => Alternative f where -- | Keep repeating the action (consuming its values) until it fails, and then return the values consumed.
I think this should be "collect" rather than "consume" and you can omit the parentheses. I also think that we should include the original definition, which is more formally precise (although it could use with some examples).
-- -- [Warning]: This is only defined for actions that eventually fail
Perhaps add the remark that we expect non-deterministic actions.
-- after being performed repeatedly, such as parsing. For pure values such -- as 'Maybe', this will cause an infinite loop. some :: f a -> f [a] some v = ...
-- | Similar to 'many', but if no values are consumed it returns 'empty' instead of @f []@. -- -- [Warning]: This is only defined for actions that eventually fail -- after being performed repeatedly, such as parsing. For pure values such -- as 'Maybe', this will cause an infinite loop. many :: f a -> f [a] many v = ...
Warnings are repeated for emphasis :)
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- Push the envelope. Watch it bend.