Semaphores and Mutexes are the lower level tools.  **Critical sections** 
implemented in terms of blocks are the fantastic part.

The little that I know about functional languages and their immutable data 
structures suggests that a LOT of copying occurs.  That has to be expensive in 
terms of scheduling and memory footprint.

Bill



---
Wilhelm K. Schwab, Ph.D.
bschwab AT anest DOT ufl DOT edu 

-----Original Message-----
From: [email protected] 
[mailto:[email protected]] On Behalf Of Antony Blakey
Sent: Sunday, March 22, 2009 5:40 PM
To: [email protected]
Subject: Re: [Pharo-project] Fwd: [vwnc] Would you start a new Smalltalk 
project today?


On 23/03/2009, at 7:37 AM, Michael van der Gulik wrote:

> Anybody who relies on the behaviour of the scheduler deserves to be 
> forced to program in BASIC. Semaphores work; use them.

And they work with native threads, which was my point. A more pedantic answer 
to your response is that you take advantage of the scheduler all the time when 
considering priorities and atomicity, but I agree with the intent of your 
statement.

> Smalltalk, the language rather than the implementation, already has 
> fantastic support for concurrency. Smalltalkers just don't know how to 
> use it. We don't need to rethink the model, we just need to learn to 
> use what we have.

Mutexes and semaphores are hardly 'fantastic'. The state of the art in support 
for concurrency is way beyond what Smalltalk provides - locking is both 
primitive and generally not scalable.

Antony Blakey
-------------
CTO, Linkuistics Pty Ltd
Ph: 0438 840 787

There is nothing more difficult to plan, more doubtful of success, nor more 
dangerous to manage than the creation of a new order of things...  
Whenever his enemies have the ability to attack the innovator, they do so with 
the passion of partisans, while the others defend him sluggishly, So that the 
innovator and his party alike are vulnerable.
   -- Niccolo Machiavelli, 1513, The Prince.



_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to