Communication is only NP-hard if you have zero prior context.
In most cases, you already have 99.9% of the common language, including an acceptable common metalanguage embedded into it. Coming up with mutually understandable definitions is a bit of work, but it's far from unsurmountable.
Note how many legal papers and even scientific papers start with definitios. Other technical communication should, too.
One of the best things I ever did was to come up with a straight-forward definition of UI components in our CMS, so our designers and front-end developers could speak to each other and be on the same level. When new features were developed, and new components introduced, we would all agree upon what made up that component and document it.
In most cases, you already have 99.9% of the common language, including an acceptable common metalanguage embedded into it. Coming up with mutually understandable definitions is a bit of work, but it's far from unsurmountable.
Note how many legal papers and even scientific papers start with definitios. Other technical communication should, too.