Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Concept

Functional Programming

Also Known As FP
Paradigm

Functional programming is a programming paradigm in which programs are constructed by applying and composing functions, treating computation as evaluation rather than as a sequence of state changes. Its formal root is the lambda calculus, developed in the 1930s by Alonzo Church as a system of computation built from function application, and its first high level language was Lisp, developed in the late 1950s for the IBM 700 and 7000 series scientific computers. This description is adapted from Wikipedia contributors under CC BY-SA 4.0; changes were made. https://creativecommons.org/licenses/by-sa/4.0/

Facts
Disputed
Origin Year
1977 1
The lambda calculus (1930s) and Lisp (1958) supplied functional programming's mathematical and practical roots, but the paradigm was named and argued for as a discipline in John Backus's 1977 Turing Award lecture, so scholars date the named paradigm differently from its technical origins.
Core Principle
Build programs by composing functions that return values, avoiding changing state, so that a piece of code means the same thing wherever it runs. 1
FAQs

Where did the ideas behind functional programming come from?

It grew from Church's 1930s lambda calculus and reached wide attention through Lisp and Backus's 1977 lecture.

The formal root is the lambda calculus, a system of computation built from function application that Alonzo Church developed in the 1930s. Lisp, developed in the late 1950s, was the first high level language in this style. The idea was brought to wider attention in 1977, when John Backus presented FP, a functional style and its algebra of programs, in his Turing Award lecture titled Can Programming Be Liberated From the von Neumann Style?
Connections

Associated With

John McCarthy, Pioneers

John McCarthy's Lisp (1958) was the first language to embody functional programming's core ideas, treating functions as first-class values and favoring recursion over iteration.

Source The Innovators: How a Group of Hackers, Geniuses, and Geeks Created the Digital RevolutionWalter Isaacson
Lisp, Programming Languages

Lisp is the first high level functional programming language.

Source Wikipedia: Functional programming

In Field

Sources
1. Wikipedia: Functional programming
Wikipedia
  • Introduction and History sections
    functional programming is a programming paradigm where programs are constructed by applying and composing functions.
  • History section
    The lambda calculus, developed in the 1930s by Alonzo Church, is a formal system of computation built from function application.
  • History
    John Backus presented FP in his 1977 Turing Award lecture "Can Programming Be Liberated From the von Neumann Style? A Functional Style and its Algebra of Programs".
  • In Group: Core Programming Paradigms, Lead
    In computer science, functional programming is a programming paradigm where programs are constructed by applying and composing functions.
View the Source
The Innovators: How a Group of Hackers, Geniuses, and Geeks Created the Digital Revolution
Walter Isaacson, Simon and Schuster, 2014Associated With: John McCarthy
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.