Concurrency (was: Re: [GUI] Re: events & callbacks)

Daan Leijen
Wed, 12 Mar 2003 09:09:37 +0100

On Wed, 12 Mar 2003 00:14:54 +0100, Wolfgang Thaller <> wrote:

> Daan Leijen wrote:
>> the eventloop will immediately wait for the next event. As this is a C call,
>> the haskell runtime system will not run any haskell threads.
> That is not guaranteed, it is not part of the FFI specification.

I know. Just wanted to explain why the "byedemo" examples are not buggy,
which eventually lead to this lengthy explanation of how most implementations work.

> Therefore I think that we should either
> a) specify that the CGA has to provide all the necessary synchronization to ensure proper operation in the presence of concurrency (this might be done using mvars).
> b) specify that the CGA may only be used when proper serialization is ensured by the user.
> I'm strongly in favour of a),

I am too.