> A plain int carries no information about the validity of the object behind that handle because they are carried around as copies, not references.
A pointer is just an integer index to a byte in memory in most computing architectures.
A pointer is just an integer index to a byte in memory in most computing architectures.
By using handles, "user code" is freed from having to know the base and the multiplier, which allows for a more compact locator that remains constant in case of base/multiplier changes.
Integers in a small array will get re-used; they have to.