[Haskell-cafe] Re: [Haskell] Top Level <-

Ganesh Sittampalam ganesh at earth.li
Sun Aug 31 11:20:07 EDT 2008


On Sun, 31 Aug 2008, Brandon S. Allbery KF8NH wrote:

> On 2008 Aug 31, at 10:44, Ganesh Sittampalam wrote:
>> 
>> In that case it seems that any library that might be used from a runtime 
>> that isn't the top-level of a process should avoid doing IO to those 
>> handles, for fear of producing output corruption?
>
> You handle it the same way you handle I/O with concurrency:  either one 
> of the runtimes is "privileged" to the extent that it owns the 
> filehandles and other runtimes must make an inter-runtime call to use 
> them, or the filehandle structures include locking and are shared across 
> runtimes.  Both of these are used in Haskell (see most GUI libraries for 
> the former, and the implementation of Handles for the latter).

Where do the filehandle structures live in the latter case?

Ganesh


More information about the Haskell-Cafe mailing list