Finally i have decided to write on how we can achieve funcational programming in C#.

Lets start with defining a function

Math: f(x) = x

C#: Action<int> f = x =>x;

Math : f(x) = 6x + 2

C#: Func<int,int> f = x=> 6*x + 2;

Math: f(x,y) = 2x+ 3y

C#: Func<int,int,int> f = (x,y) => 2*x + 3*y;

function which returns a function

Func<int,Func<int,int>> fg = x => (y => y + x);

Advertisements