Re: [Haskell-cafe] Re: Why functional programming matters

In addition to STM, another item that should interest serious programmers is forkIO. Lightweight threads that (unlike in Python) can use multiple cpu's. Coming from Python, I personally appreciate this. Using STM to handle concurrency issues often greatly simplifies multithreaded code.

jwlato:
In addition to STM, another item that should interest serious programmers is forkIO. Lightweight threads that (unlike in Python) can use multiple cpu's. Coming from Python, I personally appreciate this. Using STM to handle concurrency issues often greatly simplifies multithreaded code.
And further on this, the use of `par` in pure code to make it go multicore is way beyond what most people think is possible. -- Don

Don Stewart
jwlato:
In addition to STM, another item that should interest serious programmers is forkIO. Lightweight threads that (unlike in Python) can use multiple cpu's. Coming from Python, I personally appreciate this. Using STM to handle concurrency issues often greatly simplifies multithreaded code.
And further on this, the use of `par` in pure code to make it go multicore is way beyond what most people think is possible.
I said _don't_ make me think of using par on a beowolf cluster of ps3's. Don't you guys have any scruples? -- (c) this sig last receiving data processing entity. Inspect headers for past copyright information. All rights reserved. Unauthorised copying, hiring, renting, public performance and/or broadcasting of this signature prohibited.

Achim Schneider wrote:
Don Stewart
wrote: jwlato:
In addition to STM, another item that should interest serious programmers is forkIO. Lightweight threads that (unlike in Python) can use multiple cpu's. Coming from Python, I personally appreciate this. Using STM to handle concurrency issues often greatly simplifies multithreaded code. And further on this, the use of `par` in pure code to make it go multicore is way beyond what most people think is possible.
I said _don't_ make me think of using par on a beowolf cluster of ps3's. Don't you guys have any scruples?
Well... ghc still has a single-threaded garbage collector, so all the "par" threads must stop for garbage collection. So scaling to the level of a cluster would be significantly sub-linear. -- Chris

ChrisK
Achim Schneider wrote:
Don Stewart
wrote: jwlato:
In addition to STM, another item that should interest serious programmers is forkIO. Lightweight threads that (unlike in Python) can use multiple cpu's. Coming from Python, I personally appreciate this. Using STM to handle concurrency issues often greatly simplifies multithreaded code. And further on this, the use of `par` in pure code to make it go multicore is way beyond what most people think is possible.
I said _don't_ make me think of using par on a beowolf cluster of ps3's. Don't you guys have any scruples?
Well... ghc still has a single-threaded garbage collector, so all the "par" threads must stop for garbage collection. So scaling to the level of a cluster would be significantly sub-linear.
"By the time you learnt how to write proper Haskell, that's most likely implemented in an arcane one-liner using par." -- /me aleady drank a bootle of vin and suggests that you don't answer seriously if you want to get non-abstroose anwererse.
participants (4)
-
Achim Schneider
-
ChrisK
-
Don Stewart
-
John Lato