However, it has an unusual architecture in which all programs run in a bytecode-based virtual machine, comparable to Java or dotnet. The 128 bit pointers are only used in the virtual machine. The underlying physical hardware had 48 bit addressing initially (starting in the late 1970s); in the 90s they switched physical hardware to support 64 bit addressing
Also, even though the pointers are 128 bit, many of the bits in the pointer are reserved for future use. Partly it was an exercise in extreme future-proofing. Partly because they use tag bits to mark valid pointers in memory (to stop programs from forging pointers), but they only have one tag bit reserved for every 16 bytes of RAM, so pointers must have 16 byte alignment.
- The free software used to implement RISC-V architecture is defined for 32, 64 and 128 bits [...]
- Universally unique identifiers (UUID) consist of a 128-bit value.
- IPv6 routes computer network traffic amongst a 128-bit range of addresses.
- ZFS is a 128-bit file system.
- 128 bits is a common key size for symmetric ciphers [...]
- The IBM i virtual instruction set defines all pointers as 128-bit.
- Increasing the word size can speed up multiple precision mathematical libraries [...]
- MD5 is a hash function producing a 128-bit hash value.
- Apache Avro uses a 128-bit random number as synchronization marker [...]In particular, MD5 use in new software is strongly discouraged.
You'll note that some of them are essentially identical with https://en.wikipedia.org/wiki/256-bit_computing so they seem more guided by abstract arguments than concrete engineering reasoning.