Jos Mistiaen wrote:

> (When I type inc 5::Int it does the job perfectly, because I explicitly say
> 5 is an Integer, but how can I tell the program 5 is an Int?????ithout
> saying it explicitly in the prompt)

You HAVE to tell the program that 5 is an Int, because there might be
other instances of your class, e.g.:

  class A a where
    inc::a->a

  instance A Int where
    inc a = a + 1

  instance A Float where
    inc a = a - 1

Then you get:

  Main> inc 5 :: Int
  6
  (18 reductions, 21 cells)

but:

  Main> inc 5 :: Float
  4.0
  (18 reductions, 26 cells)

So clearly the result depends on the type, which therefor cannot be
omitted.

Regards, Janis.


--
Janis Voigtlaender
http://wwwtcs.inf.tu-dresden.de/~voigt/
mailto:[EMAIL PROTECTED]
_______________________________________________
Haskell mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to