Am Samstag 02 Mai 2009 21:22:26 schrieb Ketil Malde: > Rahul Kapoor <r...@trie.org> writes: > >> *Main> toEnum 2 > > > > ghci does not know what type of enum you want to create from the number > > 2. Try: toEnum 2 :: DayOfWeek > > > > That said, I would expect "toEnum 2" to give an error like: 'Ambiguous > > type variable `a'....'. So I am not sure why your error message says: > > '** Exception: Prelude.Enum.().toEnum: bad argument' > > Wild guess: The dread monomorphism restriction uses () as a reasonable > type, and it only has one element. Does 'toEnum 0' give '()' as the > result?
Actually, it seems to be the other way round here: Prelude> toEnum 2 <interactive>:1:0: Ambiguous type variable `a' in the constraint: `Enum a' arising from a use of `toEnum' at <interactive>:1:0-7 Probable fix: add a type signature that fixes these type variable(s) Prelude> :set -fno-monomorphism-restriction <no location info>: Warning: -fno-monomorphism-restriction is deprecated: use -XNoMonomorphismRestriction or pragma {-# LANGUAGE NoMonomorphismRestriction#-} instead Prelude> toEnum 2 *** Exception: Prelude.Enum.().toEnum: bad argument > > (I couldn't reproduce it with my version of GHCi - I get the ambigous > type error message) > > -k _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe