Everyone deserves to enjoy the benefits of functional programming, the Tango provides a series of implementations to facilitate the use of functional programming concepts in C#.
In a certain way any C# developer work with some functional concepts like anonymous methods with lambda expressions and high order functions with Linq library, and so on.
C# is an amazing programming language and we as a dev, can improve it a lot more. In this library I implements some of the core functional concepts in order to enhances the experience of developers.
Tango is a set of powerful functional tools for your .NET C# application. With Tango you can write a clean functional code in C#. It can works with pipelines (method and operator), promises, optional and either type values.
Besides that, Tango provides an extension for IEnumerables, Options and Either with the Module namespace. Use popular methods like Map, Map2, Map3, Filter, Reduce, Fold, Scan and so on, always respecting lazy loadness.
Functional programming brings a lot of benefits to your application, and the do you know the best of all?
It makes development more fun!
Stop to struggle with your code and take it to dance a Tango!
This library is avaiable at NuGet.
Install-Package Tango
- Continuation
- Optional
- Either
- Unit
- Collection
- Option
- Either
- Currying
- Partial Application
- Convert your Actions to Functions and vice versa.
- Represents the most common operations for int, double, float, string and booleans.
- An improved way to reduce, fold and scan your collections with these operations.
For a better understanding of the library concepts, methods and objects you can access the documentation:
- English version -> in progress...
- Portuguese version -> in progress...
This library depends on:
Theses dependecies will be installed automatically, but you can also install it manually with NuGet:
Install-Package System.ValueTuple
Install-Package Microsoft.Net.Compilers
This library works under MIT license.
I spent some time to create this library for improving the way of any dev can uses C# and functional programming concepts together.
Functional Programming |> C# ❤️
Follow me on Twitter and LinkedIn.
And Star this GitHub repository. ⭐
I'm always happy to receive your feedback!