On Fri, Sep 4, 2009 at 1:21 PM, Anton van
Straaten<[email protected]> wrote:
> Joe Marshall wrote:
>> Similarly with threads. These are a disaster. It is very hard to program
>> with
>> concurrency. It is harder still if your concurrancy mechanism is something
>> as primitive as a thread. In nearly every implementation of Common Lisp
>> I've worked on, they've made major errors in concurrency control. And these
>> are the *vendors*. The users have no hope of getting it right.
>>
>> I don't know what the correct solution to concurrency is, but I'm sure we
>> can do better than a thread library.
>
> I don't know what the correct solution to control flow is, but I'm sure
> we can do better than first-class continuations.
Agreed. Although this could be interpreted in two different ways, both of which
I agree with.
1. Easier to understand user constructs such as structured
exceptions, non-local
exits, co-operative co-routines, etc. should be what users turn to
rather than ad-hoc grabbing of continuations.
2. First-class continuations should NOT be used as a model or
implementation of threads. (You can crudely mimic time-division
multiplexing, but not true asynchronous parallel computation.)
--
~jrm
_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss