Hash consing
Hash consing is most commonly implemented with hash tables storing weak references that may be garbage-collected when the data stored therein contains no references from outside the table . 
<triplet> weak reference <subj> garbage-collected <obj> facet of <subj> reference <obj> subclass of