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