http://www.perlmonks.org?node_id=215713


in reply to My coding guidelines

I am not agreed with item (25):
There SHOULD be whitespace between an indentifier and its indices. There SHOULD be whitespace between successive indices.
I see everywhere $array[$index] or $hash[$index] without any whitespaces and accustomed to this. IMHO Most perl core and CPAN modules do not satisfy that rule.

I see no readability problems with such a very standard situation of array or hash indicies.

I do agree on all other items though.

Courage, the Cowardly Dog

Replies are listed 'Best First'.
Re: My coding guidelines
by Abigail-II (Bishop) on Nov 26, 2002 at 10:40 UTC
    I know many people will disagree with rule 25. But they are my guidelines, and that's the way I code. Not just in Perl, but any language that I can remember programming in allows whitespace between an indentifier and its indexing operation. Including Python. (Unfortunally, Perl 6 will break decades of tradition).

    The reason is that the eye needs resting points. Whitespace makes it easier to divide a line of text into chunks and read it. As well as in natural languages as in code. $foo{bar}[17]{baz} is one big blob, and it's hard to divide it into its 4 chunks, specially when the subscripts are a bit more complex. We don't have the tendency to chain words together in English (unlike in for instance German). Why should we with code?

    Abigail

      Funny, I tend to put the whitespace inside the curlies and add extra arrows in that case, as in $foo{ $something_really_long }->{ and_rather($complicated)->{here} } which I find more helpful than $foo {$something_really_long} {and_rather($complicated)->{here}}

      Makeshifts last the longest.