
Felix Martini wrote:
2007/10/23, Simon Marlow:
You don't say what you're working on specifically, but in general the direction we want to move in is to develop new stuff outside of the base package, where you have full access to the Win32 or unix APIs. In the upcoming GHC release we've separated out various parts of base for this reason.
I'm working on overlapped IO support for Haskell handles (sockets in particular) using an IO completion port. I'll put the code in a separate library.
ooh, that would be nice. I imagine it won't be possible to put it in a separate library and have it work nicely with the existing Handle implementation; you really want it to replace the existing low-level IO for Handles. If you could integrate it with the existing IO manager thread in GHC.Conc, then all the better. In that case I suggest the best option for now is to pull in as much Win32 support as you need, in a similar way to System.Posix.Internals which has the POSIX bits that the base package needs to know about. Cheers, Simon