Skip to content

Num a => Num (Down a)

There are many missing instances for Down, I happened to need Num (Down _). It can be derived with GND:

newtype Down a = Down a deriving (Eq, Show, Read, Num)

which let's us write

>>> (<) 10 20
True

>>> (<) @(Down _) 10 20
False

We can of course add instances for Functor, Applicative, Monad, MonadFix, ... I don't know that they would see use but we can use Identity, Dual instances.


With #12363

>>> 10 < @(Down _) 20
False

with #12363 + #12465

>>> 10 < @Down{} 20
False
Edited by Icelandjack
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information