"Windows and Linux Not Well Prepared For Multicore Chips" http://developers.slashdot.org/article.pl?sid=09/03/22/193205&from=rss
I wouldn't completely agree that operating systems aren't ready for such things. One of the comments reads: "This is the kind of the the compiler could do just fine ... by isolating parts of the code in which there are no dependencies in the data-flow, and which could therefore run in parallel..." This sounds like what "pure" functions are going to be for, right?