title: Why are functional languages considered a boon for multi threaded environments?
body: <p>I hear a lot about functional languages, and how they scale well because there is no state around a function; and therefore that function can be massively parallelized.</p>
  
  <p>However, this makes little sense to me because almost all real-world practical programs need/have state to take care of. I also find it interesting that most major scaling libraries, i.e. MapReduce, are typically written in imperative languages like C or C++.</p>
  
  <p>I'd like to hear from the functional camp where this hype I'm hearing is coming from..</p>