28 packages tagged with “monadic”
Optional is a robust option/maybe type for C#.
DEPRECATED: Optional.Extensions has been replaced by more specific packages. Check out Optional.Collections, Optional.Utilities etc. Extended functionality for Optional.
Useful Optional extensions for working with collections.
Various useful functionality for Optional.
Package Description
Reactive monadic parser combinator in C#
NCommons is a set of several .NET libraries which provide common building blocks that can be used by any kind of library or application. This library provides several members which assist in writing type-safe and expressive code. Even though the package is called "Monads", the included members don't necessarily have to be monadic. In general, the goal of the package is to provide utility types, monadic or not, which assist in writing precise code that still looks and behaves like traditional C#. While inspired by functional programming languages, the provided types still look and feel like types that could come straight from the .NET Framework's BCL. Commonly Used Types: Optional<T> Variant<T1>, ..., Variant<T1,...,T8> You can find additional information and documentation on the library's GitHub page: https://github.com/manuelroemer/NCommons
A robust option type for C#.
Concise monadic parser combinator library with separate lexer/parser phases and big-size input support.
Combinatorial Monads for Result, Task, Linq and IAsyncEnumerable. Inspired by Scott Wlaschin and railway oriented program design principles. Uses latest features of C# to adopt new paradigms based on functional monadic design. Retains minimalist design. Easy learning and migration curve.
Implements several functional Monadic Types in C#, enabling better API- and contract-design
A small library to navigate null-safely through objects.
A monadic random data generator in C#
Contains the Result type; A type representing either a success value or failure value.
Annotate [Choice] to transform your type into a highly performant and flexible disjoint union.
Contains the functional programming paradigm; unions in both disjointed- and tagged flavors.
A modern functional programming library for C# featuring Result<T>, Option<T>, Railway-Oriented Programming, and fluent pipeline composition. Build robust applications with elegant error handling and monadic patterns.
Observability layer for MonadicSharp.Agents — OpenTelemetry-compatible metrics and distributed tracing for agent executions, pipelines, and circuit breakers. Zero external dependencies: built on System.Diagnostics.Metrics and System.Diagnostics.ActivitySource.
Result-aware caching layer for MonadicSharp — cache misses and errors are first-class Result values, never null or exceptions. Supports IMemoryCache, IDistributedCache, and transparent agent output caching via CachingAgentWrapper.
Typed multi-agent orchestration for .NET — capability-based sandboxing, railway-oriented pipelines, circuit breakers, and immutable audit trails. Build secure, composable AI agent systems with compile-time guarantees.
dotnet new templates for MonadicSharp — railway-oriented .NET projects with Result types, AI agents, and functional error handling.
Result-aware HTTP client for MonadicSharp — HTTP errors, timeouts, and deserialization failures are first-class Result values. Includes typed retry policies with exponential backoff and integration with MonadicSharp.Agents CircuitBreaker.
Result-aware persistence layer for MonadicSharp — NotFound, Conflict, and DatabaseError are first-class Result values, never null or exceptions. Provides IRepository, IReadRepository, IUnitOfWork abstractions and an EF Core 8 implementation.
Security layer for MonadicSharp.Agents — prompt injection detection, capability enforcement, immutable audit trails, and secret masking. Security failures are first-class Result values, never silent exceptions.
Functional programming library for .NET with Option, Result, Either, Validation, Try, RemoteData, NonEmptyList, Writer, Reader, State, and IO monads. Features async/await support with CancellationToken, LINQ query syntax, zero dependencies, Roslyn analyzers, source generators for discriminated unions, ASP.NET Core and EF Core integrations.
AI-specific extensions for MonadicSharp: typed error handling for LLM APIs, exponential backoff retry, agent execution tracing, structured output validation, and streaming completion support. The functional reliability layer for enterprise .NET AI systems.
Meta-package for the MonadicSharp Framework — install this single package to get Agents, Caching, Http, Persistence, Security, and Telemetry in one shot. For à-la-carte usage, reference individual MonadicSharp.* packages instead.