Hello,

I've been looking into the Bell Labs CSP-style threading model, trying a few 
test programs, and watching the Russ Cox and Rob Pike movies.  I have a few of 
questions.

1) Are there any valid criticisms to this approach?  Everyone seems to agree it 
is superior to "lower-level" models, but are there any areas where this model 
doesn't work comparatively well?

2) Are there examples of the equivalence between this model and other ones (in 
terms of capability)

3) Why are the existing CSP-based libraries for other OS's (C++CSP2, JCSP, 
pyCSP) much more complex?  It seems like passing "channel ends" instead of 
channels might be a good idea, but the rest of the stuff seems like complexity 
with limited/no benefit?  For example, defining channels as One2One, One2Any, 
etc.  Also, the idea of scoped forking versus "free-form" thread/process 
creation.

4) Finally, it looks like libthread has support for a lot of non-CSP stuff.  Is 
this part used much?  Or is it just there for historical and/or completeness 
reasons.

Thanks for any opinions!
-Frank

Reply via email to