= TeX primitive
{c}
A \b[TeX primitive] is an operation supplied by <TeX> itself, such as defining a <TeX macro>, changing a register or constructing a <typesetting box>. A <TeX control sequence> can name a primitive or a macro. The distinction concerns the current meaning of the command, rather than the appearance of its name.<TeX by Topic by Victor Eijkhout>[§11.8.2: macros versus primitives]{ref}
For example, `\hbox` constructs a horizontal <typesetting box>. The assignment `\let\mkbox=\hbox` gives another name to its current meaning. Defining a macro with `\def\label{sample}` creates a replacement list instead. Some primitives participate in <TeX expansion>, while others perform operations during later processing; \b[primitive does not mean unexpandable]. This distinction helps explain why a command can appear in an expansion trace without immediately drawing a <glyph>.
Back to article page