The “official” syntax for
but it turns out that the braces around the
<macro name> are optional, so long as a single token appears. The braces are good for avoiding mistakes, but some self-control usually suffices.
\hello is built before
\newcommand starts acting and absorbing its first argument (the story is much longer, actually, but this short explanation is precise enough).
On the other hand,
will try to expand the brace:
\expandafter just acts on a single token, triggering its expansion, if the token is expandable, otherwise doing nothing. You can have the braces, if you prefer, but you need a further
However this is too much for such a simple construction, isn't it?
If you find yourself in the position of having to do several of these definitions, it's “easy” to build a wrapper