You will hit one important limitation - language evolves.
You are adding concepts that didn't exist before, relative importance of words changes as world evolves, words get additional meaning because they are now found related to other concepts or because of slang etc etc.
Assume you have a perfect language with whatever conditions you want. Each written letter is one sound and everything is encoded in minimum number of bits, or it is simple to link tons of words in a long word meaning the combination, or whatever other conditions you want - check other answers for many ideas. As perfect with all the conditions you want, at that particular point in time (introduction of the language). Now assume that language started at say 1850-ish (spring of nations in Europe).
Back then, horses were pretty important - they work fields, transport people, people race them etc etc, so it is one of those crucial words you are surely basing tons of concepts on. Engine gets named "black water mechanical horse" because what else would it be - it replaces horses to transport people around and uses black water to run. In line with previous namings, processor gets named "electrical horse brain" because the word "horse" evolved to the point to mean "something that does work for humans". Come late 20th century and a mostly irrelevant animal is all over the place in gazillion of concepts, making all those concepts longer than needed and fairly confusing too.
Do you feel it is still somewhat manageable? Note this is mere 100-200 years. 634
Jump back to first written languages and the evolved language would be more or less "spam egg spam spam bacon spam".
Now, how do you tackle that? 1. Let language constantly evolve? Congrats, you are back to our current languages. 2. Keep your ancient language? But it is no longer "perfect" in any reasonable sense and would fare worse than any imperfect language that is allowed to evolve - it poorly links all the modern concepts together, it isn't compact etc etc. 3. Clean break every now and then? Language gets "re-optimized" every say 100 years. It gets increasingly less optimal towards the end of the time, and comes with a lot of confusion during transition period, but it is most likely the only viable solution. 350