
On Wed, Oct 1, 2008 at 6:03 PM, Simon Marlow
Dynamic linking doesn't solve all the problems, we still have the problem that GHC does a lot of cross-module inlining, regardless of whether dynamic linking is used. However, I really would like to have a way to have complete control over what is exposed across a package boundary. We need this not just for licensing reasons, but also for making a dynamic library with a fixed ABI, so it can be upgraded later.
I have a really hard time following this. Are you seriously saying that GHC is inlining code from modules _and_ link dynamically at the same time. That seems like a remarkably strange thing to do, or maybe I'm just missing something. My understanding from another thread on here was that dynamic linking isn't working reliably, not even on Windows, where it once was supported. It has never worked on any other platform. Am I wrong about this? IIRC I've never seen GHC produce anything that's dynamically linked to _any_haskell module, and all modules I compile are always packaged up in .hi and .a files. Not a .so or .dll as far I can see. /M -- Magnus Therning (OpenPGP: 0xAB4DFBA4) magnus@therning.org Jabber: magnus@therning.org http://therning.org/magnus identi.ca|twitter: magthe