symeval-in-stack-group

Function

Package: mp

Arguments: symbol stack-group

This function returns two values. The first is the value of the special symbol in the given stack-group (which may be the current stack-group) or thread (which may be the thread associated with the current process). It only looks for actual bindings on the stack-group/thread; if the symbol has a global value but is not bound on the stack-group/thread, the global value is not returned.

The second returned value describes the status of the binding. t is returned if the symbol is bound on the stack-group/thread, nil if the symbol has no binding, and :unbound if there is a binding which has been subjected to makunbound. In the latter two cases, the first returned value is nil.

setf understands this function. An error is signaled if the symbol has no binding on the stack-group, i.e., if symeval-in-stack-group would return nil as the second value.

It is only possible to retrieve or set the innermost (most-recent) binding of a special symbol. This function is intended for use by debuggers and is not appropriate for normal programming.

Allegro CL has two models of multiprocessing, the :os-threads model and the non:os-threads model, so named because :os-threads is on the *features* list of versions that use it. This function and the symbol naming it are used in both models, with the differing interpretations noted. symeval-in-process is equivalent in versions that use the :os-threads model.

See multiprocessing.htm for general information on multiprocessing in Allegro CL.

The documentation is described in introduction.htm and the index is in index.htm.

Copyright (c) 1998-2000, Franz Inc. Berkeley, CA., USA. All rights reserved.

Created 2000.10.5.