
Sittampalam, Ganesh wrote:
In compiled code module boundaries don't necessarily exist. So how do you relink the loaded code so that it points to the unique copy of the module?
hs-plugins loads modules as single .o files, I believe.
It crashes the RTS of the plugins loader, which is based on ghci, which is built around loading modules independently. I believe there's a separate RTS running at the top level of the program which has no knowledge of the plugin loader.
Two RTSs? Are you quite sure? How would GC work? "The loader is a binding to the GHC runtime system's dynamic linker, which does single object loading. GHC also performs the necessary linking of new objects into the running process." http://www.cse.unsw.edu.au/~dons/hs-plugins/hs-plugins-Z-H-2.html#node_sec_4 -- Ashley Yakeley