This is your bad assumption. I can write a sentence that is 12 words
and 100 characters long, or I can write it using only 6 words that are
50 characters long. If those 6 words aren't in common usage, then most
people won't understand it when they see it, and so it is harder to read
even though it is shorter.
To show another example in C, I can write:
if( condition1 )
{
dosomething1();
if( condition2 )
if( condition 3 )
dosomething3();
else dosomething2();
}
or I can write code that does the same thing, but is shorter:
condition1 && dosomething1(), condition3 ? dosomething3 : dosomething2();
Yes, the latter code is shorter, but the former is far easier to read
and maintain.
To try and steer this back to the original issue, the LIST_FOR_EACH
macro causes nonintuitive branching which is hard to understand when you
read it, and when working on the code, as Alex said, you often have to
demacrofy it which can introduce more errors. These are legitimate down
sides to using the macro, so again, you need a good reason to use it.
So far you seem to only keep insisting that the macros look better to
you, so I say again, pleasing your sense of aesthetics does not outweigh
the loss of maintainability.
Gunnar Dalsnes wrote:
readability: writing (print or handwriting) that can be easily read.
Im pretty sure its easier to read something if its less to read. By your
definition, asm would give total readability;-P