[Haskell-cafe] Num instances for 2-dimensional types
Henning Thielemann
lemming at henning-thielemann.de
Mon Oct 5 16:14:02 EDT 2009
Sönke Hahn schrieb:
> Hi!
>
> I often stumble upon 2- (or 3-) dimensional numerical data types like
>
> (Double, Double)
>
> or similar self defined ones. I like the idea of creating instances for Num for
> these types. The meaning of (+), (-) and negate is clear and very intuitive, i
> think. I don't feel sure about (*), abs, signum and fromInteger. I used to
> implement
>
> fromInteger n = (r, r) where r = fromInteger n
>
> , but thinking about it,
>
> fromInteger n = (fromInteger n, 0)
>
> seems very reasonable, too.
>
> Any thoughts on that? How would you do it?
I use NumericPrelude that has more fine grained type classes. E.g. (+)
is in Additive and (*) is in Ring.
http://hackage.haskell.org/package/numeric-prelude
More information about the Haskell-Cafe
mailing list