SlideShare a Scribd company logo
Functional
Programming
I’m loving it.
onad
• Algorithm
• David Hilbert (1928) — Entscheidungsproblem
• Halting Problem
Turing Machine
Alonzo Church (1903 – 1995)
Alonzo Church (1936) —
Lambda Calculus
Alonzo Church (1932) — λ-calculus
L, M, N ::= x
| (λx. N)
| (L M)
Lambda Calculus & Functional programming
Rules
• Alpha equivalence
• Beta reduction
λx.x λy.y
(λx.x) y == y
λ-calculus
λx.xIdentity
λs.s sSelf Apply
x => x
s => s(s)
λ-calculus
(s => s(s))(x => x)
(x => x)(x => x)
(x => x)
λ-calculus Recursion
(s => s(s))(s => s(s))
(λs.s s)(λs.s s)
Church Encoding
λx. λy. x
λx. λy. y
True
False
λp. λx. λy. p x yIf
λp. λq. p q pAnd
λp. λq. p p qOr
Church Encoding
λf. λx. x
λf. λx. f x
0
1
2 λf. λx. f (f x)
λm. λn. λf. λx. m f (n f x)m + n
Church Encoding
λx. λy. λz. z x yPair
First λp. p (λx. λy. x)
Second λp. p (λx. λy. y)
Modus Ponens
Alonzo Church (1940) —
Typed λ-calculus
Howard 1980
Curry-Howard
Correspondence
• Proposition
• Proof
• Normalization
• Type
• Program
• Evaluation
Correspondence
Languages
• Lisp (McCarthy, 1960)
• Scheme
• Racket (1994)
• Clojure (Hickey, 2007)
• ML (Milner, 1979)
• Haskell (1987)
• O’Caml (Leroy, 1996)
• Erlang (Armstrong, 1996)
• Scala (Odersky, 2004)
• F# (Syme, 2006)
ML Example
Proof Assistants
• Automath (de Bruijn, 1970)
• Type Theory (Martin Löf, 1975)
• Coq (Huet and Coquand, 1988)
• Isabelle (Paulson, 1993)
• Epigram (McBride and McKinna, 2004)
• Agda (Norell, 2005)
• Idris
Functional Programming
• First-class Functions / Higher Order Functions
• Pure Functions / Referential Transparency
• Immutability
• Recursion
Benefits
• Guaranties!
• Modularity
• Composability
• Conciseness
• Concurrency / Distribution
• Simplicity
• Beauty
Real World
Thank You!
Questions?
anemish@gmail.com
http://fb.com/anemish
@atlanter
http://github.com/nau
http://gitter.im/lasca-lang/compiler
Resources
• "Propositions as Types" by Philip Wadler

https://www.youtube.com/watch?v=FiflFiZ6pPI&t=1430s
• Category Theory for the Working Hacker by Philip Wadler

https://www.youtube.com/watch?v=V10hzjgoklA
• The Value of Values with Rich Hickey

https://www.youtube.com/watch?v=-6BsiVyC1kM
• Why Functional Programming Matters by John Hughes

https://www.youtube.com/watch?v=XrNdvWqxBvA
• Robert C Martin - Functional Programming; What? Why? When?

https://www.youtube.com/watch?v=7Zlp9rKHGD4
• Persistent Data Structures. MIT 6.851 Advanced Data Structures

https://www.youtube.com/watch?v=T0yzrZL1py0
• Simon Peyton Jones - Haskell is useless

https://www.youtube.com/watch?v=iSmkqocn0oQ&t=199s
• Brian Beckman: Don't fear the Monad

https://www.youtube.com/watch?v=ZhuHCtR3xq8
• Erik Meijer: Functional Programming

https://www.youtube.com/watch?v=z0N1aZ6SnBk
• http://learnyouahaskell.com/
• Scala for the Impatient – http://www.horstmann.com/scala/


More Related Content

PDF
JScala. Write your JavaScript in Scala
PPS
Presentation of GetTogether on Functional Programming
PPTX
Can programming be liberated from the von neumann style?
PPTX
PPTX
The joy of functional programming
PDF
Functional Programming #FTW
PPTX
Functional programming
PDF
Introduction to functional programming (In Arabic)
JScala. Write your JavaScript in Scala
Presentation of GetTogether on Functional Programming
Can programming be liberated from the von neumann style?
The joy of functional programming
Functional Programming #FTW
Functional programming
Introduction to functional programming (In Arabic)

Similar to Lambda Calculus & Functional programming (20)

PPTX
Functional Programming Fundamentals
PDF
Functional programming
PPT
Functional Programming - Past, Present and Future
PPT
Functional Programming Past Present Future
PPT
Chapter1
PPTX
Computability, turing machines and lambda calculus
PDF
The Next Great Functional Programming Language
PPTX
A brief history of functional programming (edited)
PPTX
Intro f# functional_programming
PPTX
Unraveling the mystery of monads
PPTX
Turing Goes to Church
PDF
DublinJS - Functional Programming
PDF
The Fuss about || Haskell | Scala | F# ||
PPTX
Functional pogramming hl overview
PDF
Logic Programming and ILP
KEY
Pontificating quantification
PDF
Presentation
PPTX
Functional programming for the Advanced Beginner
PDF
Rainer Grimm, “Functional Programming in C++11”
PDF
Functional Programming and Haskell - TWBR Away Day 2011
Functional Programming Fundamentals
Functional programming
Functional Programming - Past, Present and Future
Functional Programming Past Present Future
Chapter1
Computability, turing machines and lambda calculus
The Next Great Functional Programming Language
A brief history of functional programming (edited)
Intro f# functional_programming
Unraveling the mystery of monads
Turing Goes to Church
DublinJS - Functional Programming
The Fuss about || Haskell | Scala | F# ||
Functional pogramming hl overview
Logic Programming and ILP
Pontificating quantification
Presentation
Functional programming for the Advanced Beginner
Rainer Grimm, “Functional Programming in C++11”
Functional Programming and Haskell - TWBR Away Day 2011
Ad

Recently uploaded (20)

PPTX
history of c programming in notes for students .pptx
DOCX
Greta — No-Code AI for Building Full-Stack Web & Mobile Apps
PPTX
Weekly report ppt - harsh dattuprasad patel.pptx
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Download FL Studio Crack Latest version 2025 ?
PDF
AutoCAD Professional Crack 2025 With License Key
PDF
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
PPTX
Reimagine Home Health with the Power of Agentic AI​
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PDF
17 Powerful Integrations Your Next-Gen MLM Software Needs
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
PDF
Nekopoi APK 2025 free lastest update
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Salesforce Agentforce AI Implementation.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PDF
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
history of c programming in notes for students .pptx
Greta — No-Code AI for Building Full-Stack Web & Mobile Apps
Weekly report ppt - harsh dattuprasad patel.pptx
Wondershare Filmora 15 Crack With Activation Key [2025
Download FL Studio Crack Latest version 2025 ?
AutoCAD Professional Crack 2025 With License Key
Tally Prime Crack Download New Version 5.1 [2025] (License Key Free
Reimagine Home Health with the Power of Agentic AI​
Oracle Fusion HCM Cloud Demo for Beginners
17 Powerful Integrations Your Next-Gen MLM Software Needs
Why Generative AI is the Future of Content, Code & Creativity?
Navsoft: AI-Powered Business Solutions & Custom Software Development
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
AI-Powered Threat Modeling: The Future of Cybersecurity by Arun Kumar Elengov...
Nekopoi APK 2025 free lastest update
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Salesforce Agentforce AI Implementation.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
Ad

Lambda Calculus & Functional programming