The Jargon File (version 4.4.7, 29 Dec 2003):
syntactic sugar
n.
[coined by Peter Landin] Features added to a language or other formalism to
make it ?sweeter? for humans, but which do not affect the expressiveness of
the formalism (compare chrome). Used esp. when there is an obvious and
trivial translation of the ?sugar? feature into other constructs already
present in the notation. C's a[i] notation is syntactic sugar for *(a + i).
?Syntactic sugar causes cancer of the semicolon.? ? Alan Perlis.
The variants syntactic saccharin and syntactic syrup are also recorded.
These denote something even more gratuitous, in that syntactic sugar serves
a purpose (making something more acceptable to humans), but syntactic
saccharin or syrup serve no purpose at all. Compare candygrammar,
syntactic salt.
The Free On-line Dictionary of Computing (30 December 2018):
syntactic sugar
Term coined by Peter Landin for additions to the syntax of a
language which do not affect its expressiveness but make it
"sweeter" for humans to use. Syntactic sugar gives the
programmer an alternative way of coding that is more succinct
or more like some familiar notation. It does not affect the
expressiveness of the formalism (compare chrome).
Syntactic sugar can be easily translated ("desugared") to
produce a program in some simpler "core" syntax. E.g. C's
"a[i]" notation is syntactic sugar for "*(a + i)". In a
(curried) functional language, all operators are really
functions and the use of infix notation "x+y" is syntactic
sugar for function application "(+) x y".
Alan Perlis once quipped, "Syntactic sugar causes cancer of
the semicolon."
The variants "syntactic saccharin" and "syntactic syrup" are
also recorded. These denote something even more gratuitous,
in that they serve no purpose at all. Compare candygrammar,
syntactic salt.