John Meacham john at
Fri Mar 31 16:51:14 EST 2006

On Fri, Mar 31, 2006 at 10:21:16AM -0600, John Goerzen wrote:
> On Fri, Mar 31, 2006 at 04:41:06AM -0800, John Meacham wrote:
> > optional preemption - ability to preempt pure code, fairness guarentees,
> > interleaved evaluation operators (merge, nmerge)
> Under the "what is provided" section, did you intend that to apply to
> all compilers, even ones that don't implement threading?

the point is that all compilers will implement threading now and provide
everything in that section.

rather than having all of concurrency being an option, we have found a
way to get a good portion of concurrency guarenteed to be supportable on
all systems without any compromises in run-time for the non-concurrent
case or restricting the range of future implementation techniques.

> If so, we should specify what exception is raised if, say, forkIO is
> called on such a system.  We should also make it clear that
> single-threaded implementations are required of things such as MVars.
> Finally, we should add a function that indicates the level of threading
> support on the running system.

routines that are guarenteed to fail becaues they arn't supported should
not exist, haskell tries hard to catch so many errors at compile time,
it would seem odd to delegate the error of missing a whole subsystem to
run-time :) 


John Meacham - ⑆⑆john⑈

More information about the Haskell-prime mailing list