SharpMonads.Core es una librería ligera de mónadas para .NET, destilada del dominio de DevSweep. Hace explícitos el null y el error en el sistema de tipos, sin convertir tu proyecto entero a la programación funcional.
Option<T> — un valor que puede estar o no estar, sin null.
Result<TValue, TError> — operaciones que pueden fallar, con el error en la firma.
Either<TLeft, TRight> — dos tipos posibles, right-biased.
Unit — el "void" que sí se puede componer.
**readonly record struct**: composición funcional sin presión sobre el recolector de basura.
Leyes verificadas: las tres leyes monádicas testeadas con TUnit.
Azúcar de LINQ: from ... select sobre cualquier mónada.
Cero dependencias y C# idiomático.
dotnet add package SharpMonads.Core