PLT already has weak references, and the author assumes the Scheme implementation already has them.
As far as I can tell, this is somewhat like a weakHashMap, except each ephemeron only handles one key value pair.
http://docs.plt-scheme.org/reference/ephemerons.html