I found a good description of higher order functions in "Eloquent Javascript", of all places. It reads: Functions that operate on other functions, either by taking them as arguments or by returning them, are called higher-order functions. If you have already accepted the fact that functions are regular values, there is nothing particularly remarkable about the fact that such functions exist. The term comes from mathematics, where the distinction between functions and other values is taken more … [Read more...]

# F# Higher Order Functions (List) Part2

As discussed in F# Higher Order Functions (List) Part1, a higher order function is a function that can take a function as a parameter or can return a function as a value or both of these. Following is the continuation of the cheatsheet of higher order functions for the List module. List.foldBack Example List.foldBack is a function that can transform a list into a single result. List.foldBack iterates the list in reverse order calling a transformation function on each element. The function is … [Read more...]

# F# Higher Order Functions (List) Part1

A higher order function is a function that can take a function as a parameter or can return a function as a value or both of these. Higher order functions originates from calculus in mathematics and the concept is used extensively in functional languages such as F#. Following is cheatsheet of the higher order functions available on the List module, with examples. Because of the number of higher order functions associated with the List module, I've chosen to split them up over three blog … [Read more...]