11 Generic Limitations

On 32-bit architectures, the total size of the Prolog stacks cannot exceed 256 MB. Under Linux, the default placement of the `TEXT' segment constrains the Prolog stack address range, so in practice the limit there is 128 MB unless the spld option --more-memory (which is the default) is used.

The number of arguments of a compound term may not exceed 255.

The number of atoms created may not exceed 262143 (33554431) on 32-bit (64-bit) architectures.

The number of characters of an atom may not exceed 65535.

NUL is not a legal character in atoms.

There are 256 “temporary” and 256 “permanent” variables available for compiled clauses.

Saved-states are not portable between 32-bit and 64-bit architectures, or from a system built with native code support to a system without native code support for the same architecture.

Indexing on large integers or floats is coarse.