According to BIP32 we can have a seed from which we derive all our private and public keys, so in theory we can have an "infinite" number of child and grandchild keys so why does BIP44 limit that idea of infinity and limits HD wallets to only derive keys from the address_index
the "fifth generation"
m / purpose' / coin_type' / account' / change / address_index
So in practice Bitcoin wallets following BIP44 can only generate 231 keys, furthermore only 231 possible Bitcoin addresses. Why is that the case when we can have an infinite amount of addresses?