I am having trouble understanding the concept of free variables in lambda calculus.
How and when should we use them?
I read all Church encoding and there is no use of free variables. Natural numbers, arithmetic, pairs... everything is defined without free variables.
It is also unclear how to translate the lambda term with free variables into programming languages. For example $x.yx$. What is $y$? For $yx.yx$ everything is clear. It is just $f(x)$. Meaning the lambda term takes 2 parameters and applies the first one to the second one. What is the meaning of $x.yx$?
In computer programming, the term free variable refers to variables used in a function that are neither local variables nor parameters of that function. wiki
What does it mean? Is it a global function?