[ANN] memo-io (replacing thread on GHC proposal for top-level IO)

With this proposal, how would the global register use case that motivated it be implemented? I get that there would be a top-level, shared IORef with the map of entries, but I’m not sure about how each individual entry would be registered, such that other code with access to the shared IORef could get the complete listing.

I guess that the code that registers each entry would be another example of top-level shared IO computation, right? But how to ensure that all those registrations are run automatically?