effect-ts-folds
Version:
Recursion schemes for effect-ts.
35 lines (27 loc) • 1.06 kB
Markdown
# effect-ts-folds
Recursion schemes for [effect-ts](https://effect.website/).
## Status
1. Folds
1. Catamorphism
2. Paramorphism
3. Zygomorphism
4. Histomorphism
2. Unfolds
1. Anamorphism
2. Apomorphism
3. Refolds
1. hylomorphism
4. A version of all of the above that is lazy, allows running effects inside the
operation, and returns the result wrapped in an `Effect` type.
5. Fuse folds/unfolds/refolds into tuples and structs.
6. [Stack-safety](tests/consList/stackSafety.spec.ts) using the `effect-ts`
`Effect` type as a _continuation monad_.
7. Tests for all morphisms and combinators, and some
[law tests](https://github.com/middle-ages/effect-ts-laws) for
[folds](src/fold/laws.ts) and [unfolds](src/unfold/laws.ts).
## Limitations
No examples or documentation.
## More Info
1. [API Docs](https://middle-ages.github.io/effect-ts-folds-docs/modules.html)
2. [Haskell](https://hackage.haskell.org/package/recursion-schemes)
3. [Awesome recursion schemes](https://github.com/passy/awesome-recursion-schemes)