
8 May
2018
8 May
'18
1:06 a.m.
On 8 May 2018 at 13:19, David Feuer
We can write
instance Bounded a => Bounded (Maybe a) where minBound = Nothing maxBound = Just maxBound
instance (Bounded a, Bounded b) => Bounded (Either a b) where minBound = Left minBound maxBound = Right maxBound
While Bounded intentionally does not have an Ord superclass, I think it's worth mentioning that these are the instances that arise naturally from the Ord instances for the types in question.
Except these may be surprising to people; e.g. someone may expect that `minBound = Right minBound` as well. Though as Maybe and Either don't have Enum instances this may be less of an issue. -- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com http://IvanMiljenovic.wordpress.com