PS:
My previous post didn't address:
SimonM wrote,
> Maybe indeed. Bear in mind the deadlock problem described above too - you
> might need supersafe C-calls even if the C-call can't block, to avoid
> Haskell deadlocks.
Still, I think, we should find a FFI that can also be used
by a Haskell implementation that doesn't provide multi-
threading. Maybe this requires a restriction on callbacks,
but you said the situations where the problem occurs are
rather contrived; so excluding them (in a non-MT
implementation), might not a problem.
Manuel