monad-rail: Railway-oriented error handling for Haskell
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
Monad.Rail is a Haskell library for Railway-Oriented Programming (ROP), a functional approach to error handling that makes error paths explicit and composable.
The library provides:
RailT- A monad transformer for building reliable applicationsType-safe error handling with support for error accumulation
Automatic JSON serialization of errors for logging and monitoring
The
<!>operator for combining validations while collecting all errorsIntegration with any error type implementing
HasErrorInfo
Railway-Oriented Programming separates success and failure paths,
making it easy to handle both cases explicitly. The <!> operator
is particularly useful for validation scenarios where you want to
report all validation errors at once rather than stopping at the first failure.
For more information and examples, see the documentation for Monad.Rail.
Properties
| Versions | 0.1.0.0, 0.1.0.0 |
|---|---|
| Change log | CHANGELOG.md |
| Dependencies | aeson (>=2.2.3.0 && <2.3), base (>=4.17 && <4.21), mtl (>=2.3.1 && <2.4), text (>=2.1.3 && <2.2) [details] |
| License | BSD-3-Clause |
| Author | Ismael Carlos Velten |
| Maintainer | ismaelcarlosvelten@gmail.com |
| Category | Control |
| Source repo | head: git clone https://github.com/ivelten/monad-rail this: git clone https://github.com/ivelten/monad-rail(tag v0.1.0.0) |
| Uploaded | by ivelten at 2026-03-19T00:53:28Z |
Modules
[Index] [Quick Jump]
- Monad
Downloads
- monad-rail-0.1.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees