One can recognise a comment from lexical analysis alone.
comments are only valid in structured fields. so in order to
recognize a comment you have to know the set of structured fields.
and it is (perhaps unfortunately) the cases that some fields
have a syntax that uses parenthesis as other than comment delimiters.
if I'm not mistaken this has been the case ever since rfc 987,
which used constructs like (a) to order to encode things like @
in PrintableString fields.
I submit that the RFC 2822 section 3.2.3 definition of a comment was
intended to apply to all header fields
I don't think so - that would break too many things already in existence.
Keith