Skip to content

base: Customary type class laws (e.g. for Eq) and non-abiding instances (e.g. Float) should be documented

As beginning Haskellers regularly ask about these laws and instances I think it would be good to have them documented where they are defined.

Documented so far:

(in 793902e6)

Classes

  • Eq
  • Floating
  • Fractional
  • Integral
  • Num
  • Ord

Non-abiding instances

  • CDouble (shares Double's deficiencies)
  • CFloat (shares Float's deficiencies)
  • Complex a (inherits deficiencies)
  • Double: Eq, Ord, Fractional, Num
  • Float: Eq, Ord, Fractional, Num
  • Ratio a (inherits deficiencies)
  • Natural: Num

TODO

(This is not an exhaustive list, please add more)

  • Document non-abiding instances for the types from Data.Word and Data.Int.
Edited by Azel
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information