On Jul 31, 2009, at 3:25 AM, Vincent Manis wrote:
On 2009-07-30, at 15:09, Abdulaziz Ghuloum wrote:
Maybe a gc hook should return a value indicating whether it should
stay or be uninstalled. That way, we'd only need a way to *add*
hooks (thus, the interface won't be in the form of a parameter),
and the hooks themselves would be responsible for uninstalling
themselves, if ever.
It certainly sounds fine with me, though to be honest perhaps less
simple than the way you have it currently.
Perhaps. Let's leave it as it is for now then.
I'm still confused about
the extent of values created by an uninstalled library. Presumably,
they can persist after the library is uninstalled.
Yes, they persist until they're GCed.
This might mean
that a hook can veto a library being uninstalled. That sounds a bit
scary to me.
Uninstalling libraries is there for some special circumstances. In
principle, nothing loaded into the system should persist forever.
If you put something in, there should be a way to take it out. This
is especially true for libraries since you can't just overwrite them
with other libraries of the same name.
Aziz,,,
Aziz,,,