[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
I need to know if and how people have implemented active-values
functionality in New Flavors and CLOS (and even none LISP languages).
(I expect the active-values paradigm and terminology is fairly well
known, but . . .) Active values are variables (preferably generalized
variables) with which there is associated code which runs when the
variables are read, written, or changed. I require that the scheme be
transparent to the underlying application code which manipulates
structures with active values, that there be no overhead for variables
which are not active values, that there be minimal overhead for
variables which do have code attached, and that variables can be
designated as active-values and the associated code generated at
application run time in response to user commands.
Implementations which support volatile variables, such as
entries in tables and heaps are especially interesting. (This is my
terminology: volatile variables are ones that are especially likely to
go away or move, such as the value in a hash table that might be cleared
or reorganized, rather than flavor object slots.) User interfaces for
designating variables to be made active (such as the way the monitor
facility works with describe) are also interesting.
I've considered implementations similar to the style used by
KEE, by working with the monitor facility on Symbolics, by using
individualized methods in CLOS, and by using a method inspired by
individualized methods, but much more complicated, in New
Flavors. Clearly Symbolics has given some thought to the issue while
developing the monitor facilities.
This seems like an interesting topic for SLUG, but if several
people respond to me personally, I'll summarize for the net.
-- Paul Vaughan