The below does not compile:
Func fac = n => (n <= 1) ? 1 : n * fac(n - 1);
Local variable \'fac\' migh
This particular style of function is not supported by C# as a single line declaration. You have to separate out the declaration and definition into 2 lines
Func fac = null; fac = n => (n <= 1) ? 1 : n * fac(n - 1);