If you always type out the FullForm of the expression, do you never have to worry about parentheses? That is, does the canonical form have no ambiguity if you had to type parentheses, that would mean there would be two possible interpretations of how to process the FullForm input, but that's not a problem when you use the FullForm expression, except maybe if one of the variables has been defined outside the scope. Parentheses seem necessary when using shortened forms like /@, @@, @@@,? for things like IntegerQ, #, /.,//, etc.