Variables
Variables have distinct roles and different properties in a lambda expression.
First, variables are used as parameters in a lambda abstraction. In LC, with lambda abstractions, but also in a broader context of math and PLs, we say that a function is parameterized by some variable.
In simple lambda abstractions, e.g. λx.x
or λx.y
, the variable x
occurs as a formal parameter in both cases. When this lambdas are applied to an argument, the x
variable (parameter) will bind that argument. These kinds of variable occurrences are called binding occurrences.
binding occurrence vs application occurrence(s)
free vs bound variables
Variables that occur in a lambda abstraction are considered bound; e.g. λx.xyx
is a lambda expression in which the variable x
occurs bound, while the variable y
occurs free.
Last updated
Was this helpful?