Major Section: EVENTS
Example: (push-untouchable set-mem)General Form: (push-untouchable name :doc doc-string) or (push-untouchable names :doc doc-string)
where name
is a non-nil symbol or a true list of symbols and
doc-string
is an optional documentation string not
beginning with ``:doc-section
...''. If name
is a symbol it
is treated as the singleton list containing that symbol. The effect
of this event is to union the given symbols into the
``untouchables'' list in the current world. This event is redundant
if every symbol listed is already a member of untouchables.
When a symbol is on the untouchables list it is syntactically
illegal for any event to call a function of that name or to change
the value of a state global variable of that name. Thus, the effect
of pushing a function symbol, name
, onto untouchables is to
prevent any future event from using that symbol. This is generally
done to ``fence off'' some primitive function symbol from ``users''
after the developer has used the symbol freely in the development of
some higher level mechanism.