(hook-documentation hook-id documentation-string).
The information in the documentation string plays an important role in the tools, which support the hook mechanism. This will be discussed in section 6.
When a Lisp program is written or loaded, it is important that
the Lisp programming environment gets a chance to be aware of
the hooks of the program. The right way to achieve that is
to modify the Lisp reader to do something special when a hook construct
is encountered in a Lisp expression.
Alternatively, the environment may
get its knowledge of hooks through the hook documentation clauses.
Following the latter approach, it is necessary to require that all
hook documentation clauses are placed at the outer expression level
of a Lisp program.