Lambda Calculus – The Math Behind Functional Programming

Math Online Tom Circle

Functional Programming (FP) Languages : Lisp, Haskell, Scala, Kotlin, etc.

Other non-FP influenced by Lambda Calculus: Python, Ruby, Javascript, Java 8, C++

Inventor of Lambda Calculus : Alonzo Church (1903 – 1995), whose student in Princeton University (1936-1938) was Alan Turing (The Father of Artificial Intelligence).

Lambda Calculus is not : another Differential Calculus !

Note: Calculus has a meaning of manipulating symbolic expressions : either in functions (differentiation, integration) or computations.

Lambda Calculus is almost programming!

I. Syntax of Lambda Calculus: $latex boxed {lambda text { param . body }}&fg=aa0000&s=3$

eg. $latex lambda : x : . : x + 1 $

Notice: it has only one parameter “x”.

  1. Function definition: $latex lambda $
  2. Identifier reference: $latex x $
  3. Function application: $latex x + 1 $

II. Currying 柯里化 : (named after Haskell Curry ) for multiple parameters.

eg. $latex lambda : x : …

View original post 358 more words


About tomcircle

Math amateur
This entry was posted in maths tuition. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.