3 ms·
The meaning is unambiguous to native speakers. In "you must not run" the word "not" always modifies "run", never "must".
by brlewis 7y ago
The meaning is unambiguous to native speakers. In "you must not run" the word "not" always modifies "run", never "must".
- wiml 7y agoIt's not that unambiguous. Compare "You must not do X" and "You need not do X". The sentences have the same form, and they are both common and idiomatic, but in the second sentence, the "not" modifies "need".
- pc86 7y ago"Need not" isn't exactly common phraseology/is older phraseology, though; and a common way to phrase a similar sentence would be "You do not need to do X", and it's more clear that "not" modifies "need" in that context. Regardless, for a native speaker it should be pretty clear what both mean.
- dredmorbius 7y ago"Need not do ...": Unnecessary. "Must not do ...": Disallowed / prohibited.
- TheOtherHobbes 7y agoThese used to be called Dos and Don'ts. Do A, B, C. Don't do X, Y, Z. Am I the only person who thinks it's ironic that an article about documentation appears to suffer from a fairly fundamental ambiguity?
- dredmorbius 7y agoNo. "Need not" (or "May...") indicate actions or behaviours which are allowed or optional. This is not the same as "do X", which is a "MUST" condition. "Must not" (or "Don't...") indicate actions or behaviours which are expressly disallowed. RFC 2119 referenced in the article should make all this clear. If you're still confused after reading that ... you SHOULD NOT be writing documentation. And possibly not be reading it ;-)
- bloak 7y agoThe meaning is as if "not" modified "run", but syntactically "not" is attached to "must", I think. You can probably convince yourself of that by considering a sentence such as: they can yet must not run. So you are absolutely right to be confused by such sentences. There is something weird going on.
- brlewis 7y agoSee wiml's sibling comment for a correct reason why someone might be confused by such sentences. "Not" negates, so it is definitely not modifying "must". Clearly the word being negated is "run".
- bloak 7y agoBelieve it or not, as a native speaker of English who has studied linguistics, I do know that "not" negates, but thanks anyway.
- MaxBarraclough 7y agoPerhaps an analogy to C's multiple declarations: int *i, j; i is a pointer to an int, j is an int. The * binds to the variable identifier, not to the type. Famously troublesome for beginners.
- thaumasiotes 7y ago"Mustn't" means exactly the same thing as "must not" (but makes it clear that the negative should be scoped to the verb, by using an inflected negative form of the verb itself), so yes, there's something funny going on with "must".