Álvaro Castro-Castilla Wrote:

> Andrei Alexandrescu Wrote:
> 
> > http://my.safaribooksonline.com/roughcuts
> > 
> > The current version includes virtually the entire book except (a) 
> > overloaded operators, (b) qualifiers, (c) threads. In the meantime I 
> > have finished the new design and wrote the chapter on overloaded 
> > operators. The design got Walter's seal of approval but I'm still 
> > waiting for Don's.
> > 
> > I plan to write the chapter on qualifiers in the next few days, mostly 
> > on the plane to and from Quebec. Hopefully Walter ad I will zero in on a 
> > solution to code duplication due to qualifiers, probably starting from 
> > Steven Schveighoffer's proposal.
> > 
> > I'll then have one month to design a small but compelling core 
> > concurrency framework together with Walter, Sean, and whomever would 
> > want to participate. The initial framework will emphasize de facto 
> > isolation between threads and message passing. It will build on an 
> > Erlang-inspired message passing design defined and implemented by Sean.
> 
> 
> Are these threads going to be green, stackless threads? (I think they are 
> actually recursive functions) 

Not initially, though that may happen later.  The default static storage class 
is thread-local, which would be confusing if the "thread" you're using shares 
static data with some other thread.  I'm pretty sure this could be fixed with 
some library work, but it isn't done right now.  In short, for now you're more 
likely to want to use a small number of threads than zillions like you would in 
Erlang.

>Or is mostly the share-nothing approach what you bring from Erlang, using 
>system threads? More info please! :)

The share-nothing approach is the initial goal.  If green threads are used 
later it wouldn't change the programming model anyway, just the number of 
threads an app could use with reasonable performance.
 
> From my point of view, I also think this is the best approach to scalable 
> concurrency.

Glad you agree :-)

Reply via email to