  This note presents a method of interpreting the tree adjoining languages as
the natural third step in a hierarchy that starts with the regular and the
context-free languages. The central notion in this account is that of a
higher-order substitution. Whereas in traditional presentations of rule systems
for abstract language families the emphasis has been on a first-order
substitution process in which auxiliary variables are replaced by elements of
the carrier of the proper algebra - concatenations of terminal and auxiliary
category symbols in the string case - we lift this process to the level of
operations defined on the elements of the carrier of the algebra. Our own view
is that this change of emphasis provides the adequate platform for a better
understanding of the operation of adjunction. To put it in a nutshell:
Adjoining is not a first-order, but a second-order substitution operation.
