The basic number types in Julia are designed to closely follow the hardware on which it runs. The default numeric types are as close to the metal as possible—a design decision that contributes to Julia's C-like speed.
Integers in Julia are stored as binary values. Their default size, as in C, depends on the size of the CPU/OS on which Julia runs. On a 32-bit OS, the integers are 32 bits by default, and on a 64-bit machine, they are 64 bits by default. These two integer sizes are represented as different types within Julia: Int32
and Int64
, respectively. The Int
type alias represents the actual integer type used by the system. The WORD_SIZE
constant contains the bit width of the current Julia environment, which is as follows:
julia> WORD_SIZE 64
The bits
function displays the underlying binary representation of the numbers. On a 64-bit machine, we get:
julia> bits(3) "0000000000000000000000000000000000000000000000000000000000000011"
The default integer types are...