[Haskell-cafe] Re: what I learnt from my first serious
haskell programm
Jón Fairbairn
jon.fairbairn at cl.cam.ac.uk
Mon Mar 19 13:56:58 EDT 2007
Fawzi Mohamed <fmohamed at mac.com> writes:
> Vectors don't act like numbers, a vector space is not a
> field, even if they have some common operations.
That's a long-standing flaw in the design of numeric
classes. It's not a problem with typeclasses per se.
> I find it misleading to define something a number when it
> does not satisfy all the properties of numbers.
Justifiably so. But if you had a class Additive, would you
be unhappy about defining (+) on non-numbers?
> The numerical prelude might fix this, but still I think that
> class and overloading should be distinct concepts.
I think the problem here is that you are using the word
class to mean something different from Haskell
classes. Haskell typeclasses /are/ overloading, and that's
what I understand them as. They were originally introduced
as a solution to the question of how to handle equality so
that one didn't have to use different names for the same
concept on different types.
--
Jón Fairbairn Jon.Fairbairn at cl.cam.ac.uk
http://www.chaos.org.uk/~jf/Stuff-I-dont-want.html (updated 2006-09-13)
More information about the Haskell-Cafe
mailing list