Syntactic sugar is a phrase permanently marred for me by the ruby community: it means "cognitive load for other people who know the language but don't keep up with the faddy bits". It made me tremendously sad.
The problem is more with a language having fady bits and people using them when they don't make the code clearer, than with syntactic sugar.
Well... I know macros are supposed to be bad, but.. I've been programming in C for a long time, but only recently tried 'sugaring' my loops with
#define _(x,y) for (x=0;x<(y);x++)
..which has worked soo well, I'm sticking with it. It makes programming in C much more pleasurable. (My programs mostly have a lot of nested loops over multidimensional arrays, mostly from 0, inc'ed by 1)So now instead of e.g.
for (i=0;i<WID;i++)
for (j=0;j<HEI;j++) {
it's just _(i,WID) _(j,HEI) {
which makes me smile every time.I'm reminded of the Jargon file that says "Syntactic sugar causes cancer of the semicolon."