[PRL] "Threads Considered Harmful" in the news

Joe Marshall jmarshall at alum.mit.edu
Wed Jan 24 14:04:00 EST 2007


On 1/23/07, William D Clinger <will at ccs.neu.edu> wrote:
> >From the article Mitch quoted:
>
> > ....In it, he observes that threads remove determinism and open the door
> > to subtle yet deadly bugs, and that while the problems were to some extent
> > manageable on single core systems, threads on multicore systems will
> > magnify the problems out of control.

Which is what we (the functional programming community) have been saying for,
what, the past thirty-forty years.

Frankly, I have not found multi-threaded programming to be as
difficult a task as
a lot of people seem to believe (perhaps I am deluding myself).  On
the other hand,
I have found that side-effects are *incredibly* complicated and I don't really
understand them.  Whenever I see an assignment I have to stop and think about
what is *really* going on.

> > He suggests the only solution is to stop
> > bolting parallelism onto languages and components--instead design new
> > deterministically-composable components and languages.

Rather than solve the underlying problem, he suggests we avoid actions that
show the problem exists.

> That's reactionary.  Determinism has never been
> fundamental, and attempts to return to the Eden
> where we could pretend it was will fail.  What
> we need are nondeterministically-composable
> components and languages.

For what it is worth, I agree completely.  I really don't care *how* my computer
solves a problem, I care that it *does*.


-- 
~jrm



More information about the PRL mailing list