"ignoring polymorphic case..."

I'm getting the WARNING: ignoring polymorphic case in interpreted mode. Possibly due to strict polymorphic/functional constructor args. Your program may leak space unexpectedly. warning in GHCi (5.04). I'm used to getting this when I have a datatype with strict arguments, but the only data type I have in this module (and it doesn't import any of my own modules) is: newtype GArray s key elt = GA ((STRef s (Int, STArray s Int (key, elt)))) should I be worried? - Hal -- Hal Daume III "Computer science is no more about computers | hdaume@isi.edu than astronomy is about telescopes." -Dijkstra | www.isi.edu/~hdaume

Hi,
"Hal" == Hal Daume, <Hal> writes:
Hal> I'm getting the WARNING: ignoring polymorphic case in Hal> interpreted mode. Possibly due to strict Hal> polymorphic/functional constructor args. Your program may leak Hal> space unexpectedly. Hal> warning in GHCi (5.04). I'm used to getting this when I have a Hal> datatype with strict arguments, but the only data type I have Hal> in this module (and it doesn't import any of my own modules) Hal> is: Hal> newtype GArray s key elt = GA ((STRef s (Int, STArray s Int Hal> (key, elt)))) Hal> should I be worried? I don't think so, concerning the interpreter, since the constructor args of a newtype are always strict (for efficiency reason) and in your example they are polymorphic too. However, you may worry about space leaks, as the message tells. Good luck! -- Christoph
participants (2)
-
Ch. A. Herrmann
-
Hal Daume III