1/16
These flashcards cover key definitions and concepts related to Lambda Calculus and Functional Programming as discussed in the lecture.
Name | Mastery | Learn | Test | Matching | Spaced |
|---|
No study sessions yet.
Lambda Calculus
A model of computation on which functional programming languages are based.
Functional Programming
A programming paradigm where programs are treated as mathematical functions.
Immutability
A core principle in functional programming meaning no state changes.
Higher-order functions
Functions that can take other functions as arguments or return them.
Function application
The process of applying a function to an argument to obtain a result.
α-conversion
A process of renaming bound variables in expressions.
β-reduction
A process of substituting the variable in a function body with an argument.
Church numerals
Representations of natural numbers in the lambda calculus using function applications.
Combinators
Expressions or abstractions without free variables.
Identity function
A function that returns its argument unchanged.
Successor function
A function that returns the next number in a sequence given a number.
Boolean logic
Logical operations represented in functional programming using lambda calculus.
Not function
A lambda expression that returns the negation of a Boolean value.
Or function
A logical operation represented as a lambda expression to return true if at least one argument is true.
And function
A logical operation represented as a lambda expression to return true only if both arguments are true.
Arithmetics in Lambda Calculus
Operations like addition and multiplication defined using lambda expressions.
Exponentiation
The operation of raising one number to the power of another represented in lambda calculus.