Galaxus.Functional
5.0.0
Prefix Reserved
dotnet add package Galaxus.Functional --version 5.0.0
NuGet\Install-Package Galaxus.Functional -Version 5.0.0
<PackageReference Include="Galaxus.Functional" Version="5.0.0" />
<PackageVersion Include="Galaxus.Functional" Version="5.0.0" />
<PackageReference Include="Galaxus.Functional" />
paket add Galaxus.Functional --version 5.0.0
#r "nuget: Galaxus.Functional, 5.0.0"
#:package Galaxus.Functional@5.0.0
#addin nuget:?package=Galaxus.Functional&version=5.0.0
#tool nuget:?package=Galaxus.Functional&version=5.0.0
Galaxus.Functional
Introduction
Galaxus.Functional is a package that aims to bring FP-style features to C#. Note though, that this is not true functional programming; this package
contains some useful abstractions often found in functional languages.
The style is greatly inspired by the way Rust does this. If you have worked with Rust's std::option or std::result, you will probably feel right at home.
Abstractions
There currently are the following abstractions found inside Galaxus.Functional:
Option
A type used to explicitly mark the presence or absence of a value. This is an alternative to checking for null and is similar to e.g.
Haskell's Maybe or Java's Optional.
Unit
A type for something that does not exist, similar to void - except that it can be returned and stored as a value.
Either
A type that can be one of several variants, sort of like a discriminated union or an enum with a stored value for each enum member.
Result
A type that explicitly propagates success or error to the caller, similar to used explicitly annotated exceptions. It can be seen as a specialization
of an Either with the second variant being an error.
Contribute
No matter how small, we value every contribution! If you wish to contribute,
- Please create an issue first - this way, we can discuss the feature and flesh out the nitty-gritty details
- Fork the repository, implement the feature and submit a pull request
- Once the maintainers have released a new version, your feature will be part of the NuGet package
And always remember the golden rule for every contribution: Be excellent to each other!
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Galaxus.Functional:
| Package | Downloads |
|---|---|
|
Galaxus.Functional.NUnit
A package providing NUnit testability on Galaxus.Functional types. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 5.0.0 | 12,746 | 8/18/2026 |
| 4.3.0 | 297,954 | 12/6/2024 |
| 4.3.0-alpha1 | 254 | 12/6/2024 |
| 4.2.1 | 6,211 | 11/28/2023 |
| 4.2.0 | 1,268 | 8/20/2023 |
| 4.1.0 | 3,556 | 1/16/2023 |
| 4.0.0 | 844 | 12/23/2022 |
| 3.5.0 | 33,811 | 8/11/2021 |
| 3.4.0 | 1,597 | 6/27/2021 |
| 3.3.0 | 28,185 | 1/26/2021 |
| 3.2.0 | 1,786 | 10/17/2020 |
| 3.1.1 | 5,565 | 9/8/2020 |
| 3.1.0 | 710 | 9/7/2020 |
| 3.0.0 | 925 | 8/28/2020 |
| 3.0.0-rc1 | 601 | 8/10/2020 |