[Haskell-cafe] Re: Building DLLs

Andrew Coppin andrewcoppin at btinternet.com
Fri Sep 26 13:43:54 EDT 2008

Simon Marlow wrote:
> Andrew Coppin wrote:
>> Looking at the surface, it appears as if not very much is currently 
>> going on with GHC. And then, by pure chance, I happened across a link 
>> that allows you to access the GHC developers' mailing list, and 
>> woooooo-boy, it looks pretty damned busy in there! o_O
> There's nothing closed about the GHC developer list - feel free to 
> join, or just read it from the archives or GMane.

I feel my IQ is far too low for that. ;-) [Not to mention that the 
traffic volume looks insane...]

> On the subject of DLLs, there's an important distinction to make.
>  1. putting the whole program/library in a DLL that you can call from C
>  2. putting individual Haskell packages in DLLs that you can call from 
> Haskell.
> (1) has always been supported (temporary breakage notwithstanding) and 
> as far as I know will work in 6.10.1.  (2) was supported a long time 
> ago for a short while, and we'd like to bring it back, but as part of 
> a multi-platform effort to support shared libraries.
> To get (1) you just do ghc -shared, I believe (I'm not by a Windows 
> machine right now so can't check).

(1) is not of huge interest to me, but it's pleasing to know that it's 
possible. (I don't actually know how DLLs work, but presumably if I were 
to dig around in System.Win32 I could also call normal DLLs from Haskell 
too if I desire...?)

(2) is something I'd like to see - and I aplaud you for seeking to make 
this a portable thing! (As well it should be.) One or other of the 
developer wiki pages lists this as "things we'll definitely do for 
6.10"; can you confirm or refute that?

Also, I read somewhere that you are/were looking at making the RTS into 
a DLL. What's the status with that?

Given that I know virtually nothing about how such low-level things 
work, and I have no clue how GHC works internally, is there anything 
useful I can do to help you guys with this stuff? I mean, other than 
complaining that it's not done yet... ;-)

More information about the Haskell-Cafe mailing list