Monadix 1.0.0
See the version list below for details.
dotnet add package Monadix --version 1.0.0
NuGet\Install-Package Monadix -Version 1.0.0
<PackageReference Include="Monadix" Version="1.0.0" />
<PackageVersion Include="Monadix" Version="1.0.0" />
<PackageReference Include="Monadix" />
paket add Monadix --version 1.0.0
#r "nuget: Monadix, 1.0.0"
#:package Monadix@1.0.0
#addin nuget:?package=Monadix&version=1.0.0
#tool nuget:?package=Monadix&version=1.0.0
🧠 Monadix
Monadix is a functional programming library for C# that brings type classes, higher-kinded types, and core functional abstractions like Functor
, Applicative
, Monad
, and Foldable
to the .NET ecosystem.
Inspired by Haskell and Scala, Monadix enables expressive, composable, and pure functional code — using advanced type patterns encoded in modern C#.
✨ Features
- ✅ Emulated higher-kinded types (
Kind<F, A>
) in C# - ✅ Support for type classes:
Functor
,Applicative
,Monad
,Foldable
, etc. - ✅ Write generic, type-safe, functional code
- ✅ Designed for extensibility — define your own data types and instances
- ✅ Leverages static polymorphism via interfaces and generic constraints
📦 Installation
🚧 Note: Monadix is a work-in-progress and currently intended for learning, experimentation, or advanced FP-in-C# projects.
# Not yet published — clone manually for now
git clone https://github.com/yourusername/monadix.git
cd monadix
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
## 🚀 First Release 🎉
This first release includes support for the following foundational abstractions:
### 🔧 Functional Type Classes
- [`Functor`](#functor) — map over structure
- [`Applicative`](#applicative) — lift and apply functions inside context
- [`Monad`](#monad) — chain operations with effects
- [`Traversable`](#traversable) — traverse and sequence effects
### 🔣 Algebraic Structures
- [`Magma`](#magma) — binary operation
- [`Semigroup`](#semigroup) — associative combination
- [`Monoid`](#monoid) — identity and associative combination
All abstractions use a **higher-kinded type encoding** (`Kind<F, A>`) to simulate parametric polymorphism over type constructors in C#.