NuGet\Install-Package Tango -Version 3.1.2
dotnet add package Tango --version 3.1.2
<PackageReference Include="Tango" Version="3.1.2" />
paket add Tango --version 3.1.2
#r "nuget: Tango, 3.1.2"
// Install Tango as a Cake Addin #addin nuget:?package=Tango&version=3.1.2 // Install Tango as a Cake Tool #tool nuget:?package=Tango&version=3.1.2
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!
|.NET||net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows|
|.NET Core||netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1|
|.NET Standard||netstandard2.0 netstandard2.1|
|.NET Framework||net461 net462 net463 net47 net471 net472 net48|
- System.ValueTuple (>= 4.4.0)
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
- Create Merge method in order to merge two Continuation with different TFail and TSuccess types;
- Create Finally Method in order to create a method that execute in both cases (Success and Fail);
- Similar to Then and Catch, this method is accessible as == operator
- Create a brand new ContinuationModule
- Resolve, Reject and All methods;
- Create a extension called Continuation.Linq
- AsContinuation<TFail, TSuccess> extension for any value or reference type;