The Haskell prelude and Standard Library define a number of useful type classes.
Is there a page somewhere that lists the minimum complete definition for all these classes?
The Haskell prelude and Standard Library define a number of useful type classes.
Is there a page somewhere that lists the minimum complete definition for all these classes?
This information can be found scattered around the Haskell language report as well as the GHC documentation, but in the interest of having an overview, I'm starting a CW answer for this.
- or negate.toRational.quotRem and toInteger..&., .|., xor, complement, either shift or both shiftL and shiftR, either rotate or both rotateL and rotateR, bitSize and isSigned.fromRational and either / or recip.pi, exp, log, sin, cos, sinh, cosh, asin, acos, atan, asinh, acosh and atanh.properFraction.exponent, significand, scaleFloat and atan2.fmap.pure and <*>.>>= and return.mplus and mzero.mfix.foldMap or foldr.traverse or sequenceA.. and id.arr and first.zeroArrow.<+>.left.app.loop.The section in the Haskell Report about standard classes describes what you need to implement for each type class.