Go to the first, previous, next, last section, table of contents.

Numbers, basic types, and built-in classes

Very large/small fractional constants:
(i.e., with a decimal point somewhere) GHC does not check that these are out of range (e.g., for a `Float'), and bad things will inevitably follow. To be corrected. This problem does not exist for integral constants. For very large/small fractional constants near the limits of your floating-point precision, things may go wrong. (It's better than it used to be.) Please report any such bugs.
Unchecked arithmetic:
Arguably not an infelicity, but... Bear in mind that operations on `Int', `Float', and `Double' numbers are unchecked for overflow, underflow, and other sad occurrences. Use `Integer', `Rational', etc., numeric types if this stuff keeps you awake at night.
Multiply-defined array elements -- not checked:
This code fragment should elicit a fatal error, but it does not:
main = print (array (1,1) [ 1:=2, 1:=3 ])
Support for `Binary' whatnot:
We don't.


Go to the first, previous, next, last section, table of contents.