Why Functional Programming Matters
The work
| Authors | J. Hughes |
|---|---|
| Type | article |
| Year | 1989 |
| Citekey | hughes1989functional |
Where it appeared
| Published in | The Computer Journal |
|---|---|
| Publisher | Oxford University Press (OUP) |
| Volume | 32 |
| Issue | 2 |
| Pages | 98--107 |
Identifiers
| DOI | 10.1093/comjnl/32.2.98 |
|---|---|
| OpenAlex | W2089241138 |
Access
| Landing page | https://doi.org/10.1093/comjnl/32.2.98 |
|---|
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 alpha-beta heuristics (an Artificial Intelligence algorithm used in game-playing programs). Since modularity is the key to successful programming, functional languages are vitally important to the real world.
How it got here
| How it got here | agent via crossref |
|---|---|
| Added | 2026-08-26 00:00 UTC |
| Approved by | a person 2026-08-26 20:59 UTC |
Filed under
Cite it as
@article{hughes1989functional,
title = {Why Functional Programming Matters},
author = {J. Hughes},
year = {1989},
journal = {The Computer Journal},
volume = {32},
number = {2},
pages = {98--107},
publisher = {Oxford University Press (OUP)},
doi = {10.1093/comjnl/32.2.98},
}
This record lives at https://refs.drheap.org/hughes1989functional/ and will keep doing so.