Safepoint does not work as documented in paper

Simon Marlow simonmar at
Tue Dec 5 09:42:32 EST 2006

Chris Kuklewicz wrote:
> One odd problem:  The paper on async exception defines:
> safePoint = unblock (return ())
> but this simply does not work in my testing.  Ever.  Even using
> {-# NOINLINE safePoint #-} or "-Onot"
> By comparision, this does work: safepoint = unblock (print "safe")
> So how can such a safePoint be written?

The window in 'unblock (return ())' is tiny, I'm not really surprised if nothing ever gets through it.  You might have more luck with 'unblock yield'.

(BTW, I think glasgow-haskell-users at is a more appropriate list, so I'm replying there instead).


More information about the Glasgow-haskell-users mailing list