Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re: Where is concurrency going? Is Perl going there?

by renodino (Curate)
on Jul 25, 2007 at 16:40 UTC ( #628722=note: print w/ replies, xml ) Need Help??


in reply to Where is concurrency going? Is Perl going there?

Software Transactional Memory...Won't scale...Needs pure FP.

Er, huh ? Since most STM's I'm aware of are written in and for C/C++ and Java, (and hopefully soon, Perl). I don't see the FP requirement. As to scalability, not certain what your limits are ? Doesn't scale at the low end, but with enough cores, it scales reasonably well.


Perl Contrarian & SQL fanboy


Comment on Re: Where is concurrency going? Is Perl going there?
Re^2: Where is concurrency going? Is Perl going there?
by Errto (Vicar) on Jul 25, 2007 at 22:45 UTC

    I believe erroneousBollock was referring to the fact that STM (preferably) depends on, not necessarily pure FP per se, but at least an enforced static typing model such that you can statically guarantee (in other words, guarantee at compile time without running the code) that a given block will not have any side effects other than updates to objects that the STM system can track. In other words, if I have a transaction under STM with optimistic locking, there's a good chance that transaction will have to be redone, and if it includes any calls to things like print or launch_rocket, well, that's a bit of a problem.

    I admit I have not looked at STM implementations other than Haskell's. In the Haskell world they make a big deal of the fact that they use the type system to quite literally guarantee the transactions are isolated in this sense. Perhaps in the other languages that isn't considered as vital an issue.

      Hmm, I must not have pressed 'create' when I commented on this one.

      Indeed, the guarantees you point out are the reason that STM is a highly composable concurrency abstraction in Haskell.

      Otherwise, you just don't get that win.

      -David

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://628722]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (11)
As of 2014-10-20 10:44 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (75 votes), past polls