[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Local function bindings

It has occurred to me that the distinction of local/dynamic
and the distinction of function cell/vale cell are orthogonal.
Moreover, I think I may have an application for local function
cells: to make a macro which temporarily and locally changes the
meanings of names of functions.  The locality is important,
so that a compiler can determine what is going on.  (Indeed,
an unresolved dilemma is how to tell the compiler that some
global functon reference is to a function cell that someone
else may bind dynamically.  I suppose we need a declaration
for this.)  I therefore propose that NIL permit the local
binding of function cells.  This is indeed one more thing
for the interpreter to keep track of, but in the usual case
the local function environment will be empty anyway, and so
can be checked quickly.