/ / Haskell nowy typ, który odwraca lub odwraca kolejność - haskell, kolejność, nowy typ

Nowy typ Haskella, który odwraca lub zmienia kolejność - haskell, order, newtype

Prawdopodobnie jest już newtype która zmienia sens Ord, Bounded itp. Coś w stylu

newtype FlipOrd a = FlipOrd {unFlip :: a} deriving (Eq)

instance (Ord a) => Ord (FlipOrd a) where
compare = flip compare

instance (Bounded a) => Bounded (FlipOrd a) where
minBound = FlipOrd maxBound
maxBound = FlipOrd minBound

Gdzie to działa w istniejących pakietach Haskell?

Uwaga: istnieje Reverse Functor, który robi coś zupełnie innego i na szczęście ma całkowicie niezgodny rodzaj.

Odpowiedzi:

9 dla odpowiedzi № 1

Po prostu jest w środku Data.Ord: Down. (To nie ma Bounded instancja).