might be more space efficient, but is inflexible (new words, abbreviations, missspellings, even deliberate ones appear every day) and more expensive to process (imagine how huge the lookup table has to be for any application looking to process text in multiple languages.
Just look at how huge Unicode is already just with the aim of representing all character-like symbols we have in use.
The approach might be interesting for archival or something, but you can also just compress text…