Looks like a derivation on Google 2012 Patent Pin selectable i2c slave addresses from Fairchild.
I2C was developed by Philips in 1992 and uses 7 or 10 address bits, which means \$2^7 = 256\$ or \$2^{10} = 1024\$ unique addresses. Some of those addresses are reserved, but the most significant bits selected classes of devices and the least significant bits selected different chips of the same device. A portion of the address was hardcoded in the device and lower were circuit selectable to allow 4 to 8 different EEPROMs or ADC. 0x48 - 0x4F was meant for ADCs. 0x50 - 0x5F was meant for EEPROMs. To allow for more than that, you needed a second I2C bus or bus multiplexor.
Either way 256 or even 1024 addresses get used up over time.
The concept is quite cute. It addresses the problem of fitting multiple devices with a limited number of pins. There appears to be two versions. And it is being used quite extensibly for new chips to allow for multiple devices or alternative addresses to fix address conflicts.
One version uses SDA or SCL on A0 and A1 and the second uses float on A0, A1 or A2.
From INA219:
Two pins allow 16 different INA219's to occupy one I2C bus.
From PCT2075
Three pins allow 27 different PCT2075's to occupy one I2C bus. With different base addresses to allow greater flexibility if another I2C device has the same address.
Why do all such ICs with identical structure (3 external programmable pins) not utilize such approach?
I2C has aged well but at some point it comes down to how many of a specific device do you need. 2, 4 or 8 is a lot for many applications. This is a solution that addresses the problem. I2C mux or second I2C bus allows expansion. 16 current sensors or 27 temperature sensors seems like a limited target market. Everything is a trade off.
The actual number of devices connected to an I2C bus depends upon bus capacitance, frequency and distance, with a upper limit of 40 slaves. So it may be better to have two I2C busses with today's embedded controllers. Tradeoff!
Why there are literally no chips where I could program an I2C address using an I2C register (the device would just have 1 writable register, where it would be possible to write a completely custom address)?
So how do we address two identical devices at the same address to program them. One soltion: Use a GPIO to select individual device and program I2C address. Either way we need a GPIO pin per progammable device. Again, everything is a trade off.