I don't think optional needs the `Plus` part of `Alternative`. ```haskell optional :: forall f a. Alt f => Applicative f => f a -> f (Maybe a) optional a = map Just a <|> pure Nothing ``` I have had to locally fork this for an experiment I'm doing.
I don't think optional needs the
Pluspart ofAlternative.I have had to locally fork this for an experiment I'm doing.