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”.

- Function definition: $latex lambda $
- Identifier reference: $latex x $
- Function application: $latex x + 1 $

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

eg. $latex lambda : x : …

View original post 358 more words