https://github.com/sftsrv/parz
A simple parser combinator library
https://github.com/sftsrv/parz
functional-programming gleam gleam-lang parser parser-combinators
Last synced: about 2 months ago
JSON representation
A simple parser combinator library
- Host: GitHub
- URL: https://github.com/sftsrv/parz
- Owner: sftsrv
- License: gpl-3.0
- Created: 2024-07-08T18:08:39.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-08-25T07:26:20.000Z (7 months ago)
- Last Synced: 2025-08-25T09:53:59.804Z (7 months ago)
- Topics: functional-programming, gleam, gleam-lang, parser, parser-combinators
- Language: Gleam
- Homepage: https://hexdocs.pm/parz/index.html
- Size: 47.9 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# parz
A simple parser combinator library
> Trying to learn [Gleam]() while also Learning about Parser Combinators using
> [The YouTube Series by Low Byte Productions](https://www.youtube.com/playlist?list=PLP29wDx6QmW5yfO1LAgO8kU3aQEj8SIrU)
> and [Understanding Parser Combinators](https://fsharpforfunandprofit.com/posts/understanding-parser-combinators/)
[](https://hex.pm/packages/parz)
[](https://hexdocs.pm/parz/)
The project exposes the following modules:
1. `parz.` - contains the `run` method which is used for executing a parser
2. `parz/combinators` - the parser combinator library
3. `pars/parsers` - some simple, prmiitive parsers
## Usage
```sh
gleam add parz
```
```gleam
import parz.{run}
import pars/combinators
import pars/parsers
pub fn main() {
// For an example usage look at the `tests/sample_parser_test.gleam` file
let parser = // .. define a parser
let result = run(parser, content_to_parse)
}
```
Further documentation can be found at .
## Development
```sh
gleam run # Run the project
gleam test # Run the tests
gleam shell # Run an Erlang shell
```