C# is a very flexible language, but that flexibility also makes it easy for side effects and mutable state to spread through a codebase.
I built PureSharp to bring a few functional-programming ideas into everyday C# development and make them enforceable at compile time.
GitHub: https://github.com/mao2009/PureSharp
NuGet: https://www.nuget.org/packages/loach.PureSharp
What PureSharp tries to enforce







