By the way the GNU coding standards are not bad, in fact I
personally like
them (mostly because
my eyesight is really bad and whitespace is much more effective at
separating tokens than
brackets or commas). There are some details I'd change, but they
certainly
are not an unusual
or weird choice for a large free software project.
To me it is about separating groups of tokens, e.g. if you are going
to separate like this
[thing foo: arg1 bar: arg2];
and insist on including that space between the 'foo:arg1' group,
the whole message send looks androgynous with parts of the selectors
mixed in with their arguments...
compared with
[thing foo:arg1 bar:arg2];
it is very easy for me to pick out which args go with which parts of
the selector, and
which message is being sent...