"...as conceptualized in an arbitrary, almost-Haskell-specific manner."<p>FP doesn't necessarily have <i>anything</i> to do with types. Where does tacit programming* in J fit in, for example? You can't get much more functional than that, yet J is dynamically typed. (So is Erlang.) I thought FP has more to do with immutability and higher-order functions.<p>* The Haskell community calls tacit programming "point-free style".