integer - Perl pragma to compute arithmetic in integer instead of double
use integer; $x = 10/3; # $x is now 3, not 3.33333333333333333
This tells the compiler to use integer operations from here to the end of the enclosing BLOCK. On many machines, this doesn't matter a great deal for most computations, but on those without floating point hardware, it can make a big difference.
Note that this affects the operations, not the numbers. If you run this code
use integer; $x = 1.5; $y = $x + 1; $z = -1.5;
you'll be left with $x == 1.5
, $y == 2
and $z == -1
. The $z
case happens because unary -
counts as an operation.
See Pragmatic Modules.
If rather than formatting bugs, you encounter substantive content errors in these documents, such as mistakes in the explanations or code, please use the perlbug utility included with the Perl distribution.