Introducing Lambda Calculus with Python
This talk introduces the simple concepts of Lambda calculus with hands-on implementation of the application of the Lambda function with Python. This talk will be helpful to students with background equivalent to undergraduate degrees in mathematics or computer science.
We will be focusing on untyped lambda calculus and start by the simple definition of a function, that can be implemented with Python lambda. We will then discuss the concepts of abstraction and application in lambda calculus and then move on to understand what a substitution is and how can these be implemented in Python. We will finally study some combinators which are the basic building blocks of combinatory logic, before ending with encoding datatypes in lambda calculus and implementing the same with Python lambda. Datatypes we will be discussing are:
- Boolean values like TRUE and FALSE
- Logical operators like AND, OR and NOT
- Church Numerals
I am a final year masters student in the Department of Physics, from Jadavpur University, Kolkata, India. My specialization is in Condensed Matter Physics and interests lie in Computational Physics, Open Source Software Projects, Lattice Theory, Game Theory, logic, and Quantum Computing. I code mainly in Python and R