A Very Subjective History of Functional Programming
From Problem to Language: The Origin
The language that became the symbol of academic programming came about because an engineer lacked the right tool for a specific task.
In 1958, John McCarthy was working on a problem that sounds simple today: write a program capable of symbolically differentiating mathematical expressions. Not numerically — not "compute the derivative at the point x=3" — but symbolically: take an expression like x² + 2x and produce 2x + 2. The task required treating the structure of the expression itself as data.
Fortran was not up to it. It had been built for numerical computation: numbers, arrays, loops. The notions of "list", "tree", and "recursive structure" simply did not exist in it. McCarthy was not criticizing Fortran — he had simply encountered a problem of a different kind and set about building a new tool.
That is how LISP came to be. Its central...
Copyright of this story solely belongs to hackernoon.com. To see the full text click HERE