This was added so wallets could generate the seed even if they don't have or can't hold every word list, like trezor. I agree that it's less than ideal.
It would have worked about as well to encode the 128 bits of needed entropy in a string of 22 base64 or base58 characters. There's your backup. Easy to decode and get the entropy binary back, which can act as the seed for the wallet.
And there's nothing to stop any wallet designer, who so wishes, from encoding the binary in a word list per bip39. For interoperability among different wallets with different dictionaries, use the 22 character string... any wallet, even one as limited as trezor, is sure to have enough memory and processing power to decode
its own word list!
Bip39 was kludged into the wallet architecture between the entropy and the master key -- where it isn't needed, and can only cause problems. Will we be stuck with this contraption in every wallet from now on?
Just in case I'm not getting through:
Whoever came up that whole mess described in the section of the mediawiki titled "From mnemonic to seed" was wasting everybody's time. The idea that you have to go to such lengths to avoid storing a library of bip39 dictionaries is an illusion. Merely store your own dictionary; when you need the binary, decode the wordlist. Simple as that!
HD wallet designers have followed bip39 without giving it a moment's thought or considering
maybe the bip's badly designed. But it is the worst kind of bad design; it's a strategic error not a coding blunder, so people operating on autopilot don't see it. Then it gets coded into wallets, and you're stuck with it forever. And we'll have all kinds of headaches making HD wallets compatible.
I'm staying with legacy accounts, for now.