My implementation of some functional programming paradigms using C#