Am Montag, 26. April 2004 20:45 schrieb Don Groves: > [...] > Hello, Haskell newbie here. > > Some languages handle the Int/Integer question automatically, > determined by the size of the integer in question. Int is used > until the integer excedes what the underlying architecture can > handle, then the switch is made to Integer (bignum). Is this > something that could be handled similarly by the Haskell compiler > without violating anything? Just thinking out loud... > -- > Don Groves
Hello Don, strictly speaking, you cannot choose between Int or Integer depending on the actual value of your number because the type of an expression has to be known at compile time while the exact value is mostly known only at runtime. But you can have a type which uses a "small int" representation for small numbers and a "big int" representation for big numbers. This is probably what you mean, and this is AFAIK exactly what at least GHC's Integer does. So GHC's Integer uses a fast representation for small numbers. But a program still needs time for testing if a given Integer is represented the "small" or the "big" way, it needs time for testing, if a calculation results in a number representable by the "small" representation etc. So Integer will always be a bit slower than Int. Wolfgang _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell