
30 Aug
2009
30 Aug
'09
8:54 p.m.
From the documentation, I don't think I grasp how stable names work. From the docs: "There is no deRefStableName operation. You can't get back from a stable name to the original Haskell object. The reason for this is that the existence of a stable name for an object does not guarantee the existence of the object itself; it can still be garbage collected."
From this I can conclude that stable names behave a bit like weak pointers.
However, suppose I have a hash table of these stable names. How can I remove the redundant stable names from the table? I mean removing stable names that refer to an object that is garbage collected? I don't see any function for checking that (e.g. isStableNameTargetAlive or something) Thanks, Peter