並列処理の壁

並列処理プログラムは難しい。マルチスレッドも然り。今では当たり前になったマルチコアCPUの性能を
引き出すにはどちらも欠かせない。
でも、ソフトウエアが追いついていないというのが現状なのではないだろうか。
そこで注目されるのが副作用が無い(参照透過性)関数型言語である。
とくにTwitterで注目されているErlangはもともと交換機のソフトウェア向けに作られたこともあり、
並行処理プログラムがやりやすい。
一方、Javaは最近、Concurrentが導入されて、並行プログラミングがやりやすくなった。
オブジェクト指向が行き渡った感のある現在、並行処理の壁を破るのはどのプログラム言語なのだろう。