26 lines
617 B
Markdown
26 lines
617 B
Markdown
|
|
# 35-haskell-monad-chaining
|
||
|
|
|
||
|
|
This example shows intermediate Haskell sequencing with monadic `Either` chains.
|
||
|
|
|
||
|
|
It includes:
|
||
|
|
|
||
|
|
- a rollout request parsed from compact CLI input,
|
||
|
|
- dependent resolution steps that each need earlier successful results,
|
||
|
|
- `do` notation over `Either String` for ticket, policy, tag, and approver checks, and
|
||
|
|
- a test suite run by `nix flake check`.
|
||
|
|
|
||
|
|
Useful commands:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
nix develop
|
||
|
|
cabal run
|
||
|
|
cabal run -- api:production:stable:CHG-2048
|
||
|
|
cabal test
|
||
|
|
|
||
|
|
nix build
|
||
|
|
./result/bin/mini-monad-chain api:production:stable:CHG-2048
|
||
|
|
|
||
|
|
nix run . -- api:production:stable:CHG-2048
|
||
|
|
nix flake check
|
||
|
|
```
|