I find odd that attoparsec has
satisfyWith :: (Word8 -> a) -> (a -> Bool) -> Parser a
but not
satisfyMaybe :: (Word8 -> Maybe a) -> Parser a
since that is what I want most of the time.
Also, you can simulate satisfyWith using satisfyMaybe but not the other way round.
I find odd that attoparsec has satisfyWith :: (Word8 -> a) -> (a -> Bool) -> Parser a but not satisfyMaybe :: (Word8 -> Maybe a) -> Parser a since that is what I want most of the time.
Also, you can simulate satisfyWith using satisfyMaybe but not the other way round.