Is there actual data showing that functional programming leads to more reliable software? I hear this claim a lot but have never seen data supporting it. One counterpoint is that real-world safety-critical software (for instance, avionics software) is typically written in a simple procedural style — see for instance the JPL / MISRA-C guidelines — because it is more amenable to static analysis. MISRA-C and functional styles are strongly at odds with one another — for example, some purely functional languages (e.g., Haskell) eschew loops entirely in favor of recursion, whereas recursion is prohibited by MISRA-C.
So, what real-world examples are there of safety-critical software that is written in functional style? Any Mars rovers? Antilock brake controllers? Nuclear reactor monitors? Pacemaker firmware?
I ask because a cursory examination of the subject leads me to believe that all safety-critical software is written in a strictly imperative style. If this is indeed the case, it strikes me as extraordinarily foolish to abandon this proven method (and its associated coding standards) in favor of an unproven one.