I was watching the lecture by Jim Weirich, titled 'Adventures in Functional Programming' ('http://vimeo.com/45140590Adventures in Functional Programming)'. In this lecture, he introduces the concept of Y-combinators, which essentially finds the fixed point for higher order functions.
One of the motivations, as he mentions it, is to be able to express recursive functions using lambda calculus so that the theory by Church (anything that is effectively computable can be computed using lambda calculus) stays.
The problem is that a function cannot call itself simply so, because lambda calculus does not allow named functions, i.e.,
n(x, y) = x + y$$n(x, y) = x + y$$
cannot bear the name 'n''$n$', it must be defined anonymously:
(x, y) -> x + y$$(x, y) \rightarrow x + y $$
Why is it important for lambda calculus to have functions that are not named? What principle is violated if there are named functions? Or is it that I just misunderstood jim's video?