I'm trying to write a counter function that would return a tuple whose
first element is the current value and whose second element is a new
counter. The following line:
counter n = (n,(counter (n+1)))
Generates the following error on Hugs and a similar one with ghci:
ERROR "counter.hs":6 - Type error in function binding
*** Term : counter
*** Type : a -> (a,b)
*** Does not match : a -> b
*** Because : unification would give infinite type
Is there any way to do it? I tried using data, type and newtype and none
of them worked.
Regards,
Shlomi Fish
----------------------------------------------------------------------
Shlomi Fish [EMAIL PROTECTED]
Home Page: http://t2.technion.ac.il/~shlomif/
Home E-mail: [EMAIL PROTECTED]
He who re-invents the wheel, understands much better how a wheel works.
_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe