[Haskell-cafe] RE: [Haskell] Top Level <-
ganesh.sittampalam at credit-suisse.com
Wed Sep 3 04:45:31 EDT 2008
Ashley Yakeley wrote:
> Sittampalam, Ganesh wrote:
> > I am suggesting that this duplication process, whether conducted by
> > the dynamic loader or something else, should behave as if they did
> > have the same package name or version.
> > This is certainly a valid transformation for Data.Unique, I am
> > saying that it should be a valid transformation on any module.
> So if I dynamically load module M that uses base, I will in fact
> get a completely new and incompatible version of Maybe, IO, ,
> Bool, Char etc. in all the type-signatures of M?
I think it treats them as compatible, using the fact that
Data.Typeable returns the same type reps (which was why I initially
mentioned Data.Typeable in this thread). This is fine for "normal"
modules. There's a bit of description in the "Dynamic Typing" section of
It's clearly the wrong thing to do for Data.Unique and any anything
else that might use <-; but if there are no such types in the interface
of the plugin, then it won't matter. I can't see how to make it
safe to pass Data.Unique etc across a plugin interface without
severely restricting the possible implementation strategies for
a plugin library and its host.
Please access the attached hyperlink for an important electronic communications disclaimer:
More information about the Haskell-Cafe