Functional Programming in C#: How to write better C# code - Buonanno (IEEE, 2003)