This question was sparked off a recent question: Are Sanskrit words more than the sum of the parts? I am serious when I ask, because as an outsider to Sanskrit, I would think the parts would add up to the whole, but they don't. Likewise, in English (as @Draconis pointed out), the word "fireman" has no notion of "fighting fires", but that's what it means.
So from a conlanging perspective, I have been fighting with this issue for probably a year. At one point I was thinking about wrapping noun phrases in affixes to let it be known:
This is a formal gray fox or gorilla ("large monkey" in the conlang), we are not simply describing a gray fox or a large monkey.
So it was either going to be:
a- [...noun phrase...] -wa
as opposed to just
[no prefix] [...noun phrase...] [no suffix]
a-gray fox-wa or
a-large monkey-wa. Then I thought, maybe create words instead (bounding words), so
form gray fox morf or
form large monkey morf, but then things started to get long and verbose.
So coming across Sanskrit, and coming to this realization that in real languages, you can have words which mean more than the sum of the parts, that means I can say "large monkey" (without any extra words or affixes), and have it be known that "large monkey" is always talking about gorilla. This seems like how Chinese works actually, but I always thought that was kind of limiting or strange.
For example, in Chinese, "river horse" is "hippo", but if you want to talk about a horse of the river, you can't say the string "river horse", you have to say something else like "the horse of the river", otherwise you are talking about hippo. In Chinese, these words must be memorized and avoided, which to me that would cause errors, because say in year 1800 you said "The river horse was cool" (talking about a horse of the river), then in year 1900 "river horse" came to be defined as "hippo", then the old text would maybe be misinterpreted (you would have to take the day of writing and word origin history into account when interpreting, jeez!).
So I am wondering, how can you reason with yourself to determine that saying "fire man" in your conlang means "fire fighter" basically, and yet also be able to say the abstract descriptive "fire man" (meaning man of the fire, or other meanings based on context)? Is it okay to leave off my affixes (or extra words), and do like Sanskrit does and just have "fire man" mean "one who fights fires"? Rather than saying "a-fire man-wa" (which would be more unambiguous). How do I make sure that you can still talk about fire man as a general adjective thing, if this word takes up a specific meaning?
I don't get how to think through that and make sure the conlang isn't going to run into problems.