Take a look on the following code snippet:

Func<int, int> r = null;
r = n => n > 1 ? r(n - 1) + r(n - 2) : n;
Console.WriteLine(r(6));

It's hard to read it and understand from one reading, isn't it?