Concepts
Failure as data, exhaustive branching, and composable transformations.
Composition
Composition builds larger operations from small functions. Each step receives the previous step's output, which keeps transformations explicit and avoids intermediate mutable state.Pattern Matching
`massaman/match` re-exports [`ts-pattern`](https://github.com/gvergnaud/ts-pattern) and adds `P.ok` and `P.err` patterns for Massaman results. It turns branching into an expression and can prove that every variant of a union is handled.Result & Errors
Massaman treats expected failure as data. A fallible operation returns a `Result<T>` so its caller can see and handle both outcomes without relying on an exception path.