archives

What Does Functional Programming Mean?

What Does Functional Programming Mean? by Tony Morris

This presentation is intended for the February 2010 meeting of the Brisbane Functional Programming Group http://www.meetup.com/Brisbane-Functional-Programming-Group-BFG/.
The term functional programming has become common nomenclature, but its definition is also ambiguous. There are many de facto definitions, all of which fail to identify the important point to functional programming.

The argument is that referencial transparency is what defines functional programming. Which makes Scala and F# 'poor' for FP, or at least for achieving the compositionality goals of FP.

In my opinion there are ways to achieve compositionality without limiting oneself to the strict boundaries of pure programs, as long as one defines clearly which operations stray from these boundaries (cf. Haskell monads...)