English Unordered Functional Programming in C#: How to write better C# code Enrico Buonanno 2017 View book