Robert Fischer says
If your language doesn’t lead people to re-discover point free programming at least in the small, then the language really isn’t taking function manipulation and functional language type conceptions seriously.
Thus Fischer has finally recognized that Scala is functional.
val double : Int => Int = 2 * // point free function definition List(1,2,3) map double /* removes one point from List(1,2,3) map {x => double(x)} */
Thank you Robert for finally getting to the truth.
Oh, the Underscore
Now, Robert may object because I didn't combine map and double into one super function, mapDouble. Okay
val mapDouble : List[Int] => List[Int] = _ map double mapDouble(List(1,2,3))
Crap, there's an underscore. Is it a "point"? Good question. And the answer is no. In fact, what it is is a hole in the expression. Oleg Kiselyov, somebody who actually knows about functional programming, says they're related to delimited continuations and what could be more functional than delimited continuations?
Also, Erlang Remains Unfunctional
For some reason Fischer really hates on Erlang. Point-free is definitely not Erlang's strong suit at all due to it's ability to overload on arity. I don't know why the Erlangers don't go picket his blog.
Post Script on Converses
David MacIver points out (correctly) that my post assumes that a statement implies its converse. To that I say "pffft, write your own damn parody, David!"