16 | 16 | Ah. I didn't realize that. You say that `_coerce_from_hash` is not considered by backtracking. Indeed, that changes things. In that case, `_coerce_from_list` could be a "weak set" (e.g., a `WeakValueDictionary` with trivial keys), since the maps are kept alive by their entries in `_coerce_from_hash`, where the key is kept alive by the `_registered_domains`. This would get rid of the garbage collection problem, if we ever want to have maps that help coercion discovery but don't have lifetime implications. |