C++ style question/criticism, was Re: Mozy Contest Answers

Alex Esplin alex.esplin at gmail.com
Sat Nov 4 21:20:34 MST 2006


On 11/4/06, Levi Pearson <levi at cold.org> wrote:
> There is more to readability than subjective opinions of beauty,
> though.  For one, if something is not visible, it is not readable.
> Therefore, my formatting was objectively more readable than the
> original.  That trumps some abstract and ill-defined notion of beauty
> in my book, though I happen to think mine looks much better anyway.

As far as vertical spacing and visibility are concerned, I use folding
on any loop or function more than 4 or 5 lines long, which _greatly_
increased the vertical real estate of my screen.  In gVim, the
following style:

if(foo){
    do_something;
    do_something_else;
}

In my folding (I use brace matching to create the fold) reduces to this:
+--- 4 lines:  if(foo){------

the other style of "curly bracing":

if(foo)
{
    do_something;
    do_something_else;
}

reduces in my folding to:
if(foo)
+--- 4 lines:  {---

As I stated in the other thread where this discussion started, neither
way is right or wrong (i.e. syntactically correct or incorrect).  As
such, given the fact that code being onscreen is a factor in
readability, I find the second way more readable for ____ reasons.
First, I can see the loop statement or function signature without
having to pick it out of the fold marker.  Second, I can create a fold
in this manner very quickly.  Third, this is the way I learned to
write code and the way I have written ever since.  Fourth, I have
never written code where there was a maximum number of lines to be
used.  In the absence of this constraint, I use whitespace freely to
"punctuate" and increase "find-ability".  For me, having the loop
condition or function signature separated from the code it encloses by
a line with nothing on it but a curly brace makes it easier to quickly
find a chunk of code and identify what it does while scanning through
the file.

I've probably beaten a dead horse even more, and I'm sure that no one
will ever agree to have one way standard.  That is fine with me.

-- 
Alex Esplin



More information about the PLUG mailing list