MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Why Functional Programming Matters (1984) [244 citations — 2 self]

Abstract:

As software becomes more and more complex, it is more and more important to structure it well. Well-structured software is easy to write, easy to debug, and provides a collection of modules that can be re-used to reduce future programming costs. Conventional languages place conceptual limits on the way problems can be modularised. Functional languages push those limits back. In this paper we show that two features of functional languages in particular, higher-order functions and lazy evaluation, can contribute greatly to modularity. As examples, we manipulate lists and trees, program several numerical algorithms, and implement the alphabeta heuristic (an algorithm from Artificial Intelligence used in game-playing programs). Since modularity is the key to successful programming, functional languages are vitally important to the real world.

Citations

1415 The Definition of Standard ML – Milner, Tofte, et al. - 1990
565 Structure and Interpretation of Computer Programs – Abelson, Sussman - 1996
37 Purely functional operating systems – Henderson - 1982
30 The semantic elegance of applicative languages – Turner - 1981
15 Department of Defense, The Programming Language Ada: Reference Manual, ANSI/MIL-STD1815A-1983 edn – States - 1983
9 A non-strict language with polymorphic types – Miranda - 1985
3 Programming in Modula-II – Wirth - 1982