J. Hughes. 3622, chapter 2, page 73--129. Springer Berlin Heidelberg, Berlin, Heidelberg, (2005)
Consider this simple Haskell definition, of a function which counts the number of occurrences of a given word in a string: This is an example of ” point-free” programming style, where we build a function by composing others, and make heavy use of higher-order functions such as . Point-free programming is rightly popular: used appropriately, it makes for concise and readable definitions, which are well suited to equational reasoning in the style of Bird and Meertens 2. It's also a natural way to assemble programs from components, and closely related to connecting programs via pipes in the UNIX shell.