Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/purescript-contrib/purescript-matryoshka
Generalized folds, unfolds, and traversals for fixed point data structures
https://github.com/purescript-contrib/purescript-matryoshka
Last synced: 3 months ago
JSON representation
Generalized folds, unfolds, and traversals for fixed point data structures
- Host: GitHub
- URL: https://github.com/purescript-contrib/purescript-matryoshka
- Owner: purescript-contrib
- License: apache-2.0
- Created: 2016-12-20T19:22:24.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2022-04-27T21:16:39.000Z (about 2 years ago)
- Last Synced: 2024-04-08T21:16:55.642Z (3 months ago)
- Language: PureScript
- Homepage:
- Size: 52.7 KB
- Stars: 59
- Watchers: 14
- Forks: 14
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Lists
- awesome-recursion-schemes - purescript-matryoshka - (Implementations / Hylomorphisms in the Wild)
README
# Matryoshka
[![CI](https://github.com/purescript-contrib/purescript-matryoshka/workflows/CI/badge.svg?branch=main)](https://github.com/purescript-contrib/purescript-matryoshka/actions?query=workflow%3ACI+branch%3Amain)
[![Release](https://img.shields.io/github/release/purescript-contrib/purescript-matryoshka.svg)](https://github.com/purescript-contrib/purescript-matryoshka/releases)
[![Pursuit](https://pursuit.purescript.org/packages/purescript-matryoshka/badge)](https://pursuit.purescript.org/packages/purescript-matryoshka)
[![Maintainer: garyb](https://img.shields.io/badge/maintainer-garyb-teal.svg)](https://github.com/garyb)Generalized folds, unfolds, and traversals for fixed point data structures in PureScript. (A port of [Matryoshka](https://github.com/precog/matryoshka)).
## Installation
Install `matryoshka` with [Spago](https://github.com/purescript/spago):
```sh
spago install matryoshka
```## Quick start
The quick start hasn't been written yet (contributions are welcome!). The quick start covers a common, minimal use case for the library, whereas longer examples and tutorials are kept in the [docs directory](./docs).
## Documentation
`matryoshka` documentation is stored in a few places:
1. Module documentation is [published on Pursuit](https://pursuit.purescript.org/packages/purescript-matryoshka).
2. Written documentation is kept in the [docs directory](./docs).
3. Usage examples can be found in [the test suite](./test).If you get stuck, there are several ways to get help:
- [Open an issue](https://github.com/purescript-contrib/purescript-matryoshka/issues) if you have encountered a bug or problem.
- Ask general questions on the [PureScript Discourse](https://discourse.purescript.org) forum or the [PureScript Discord](https://purescript.org/chat) chat.## Contributing
You can contribute to `matryoshka` in several ways:
1. If you encounter a problem or have a question, please [open an issue](https://github.com/purescript-contrib/purescript-matryoshka/issues). We'll do our best to work with you to resolve or answer it.
2. If you would like to contribute code, tests, or documentation, please [read the contributor guide](./CONTRIBUTING.md). It's a short, helpful introduction to contributing to this library, including development instructions.
3. If you have written a library, tutorial, guide, or other resource based on this package, please share it on the [PureScript Discourse](https://discourse.purescript.org)! Writing libraries and learning resources are a great way to help this library succeed.