https://github.com/sealmove/binarylang
Binary parser/encoder DSL
https://github.com/sealmove/binarylang
Last synced: 5 months ago
JSON representation
Binary parser/encoder DSL
- Host: GitHub
- URL: https://github.com/sealmove/binarylang
- Owner: sealmove
- License: mit
- Created: 2020-12-18T22:25:06.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-06-18T10:32:12.000Z (over 2 years ago)
- Last Synced: 2025-06-09T05:46:16.151Z (5 months ago)
- Language: Nim
- Size: 329 KB
- Stars: 61
- Watchers: 4
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-nim - Binarylang - Extensible Nim DSL for creating binary parsers/encoders in a symmetric fashion. (Data / Parsing)
README
# BinaryLang
BinaryLang is an extensible Nim DSL for creating binary parsers/encoders in a
symmetric fashion.
It supports syntax for creating simple common parsers (ints, floats, strings),
as well as ways for synthesizing more complex parsers out of simpler ones.
Therefore, it is similar to a parser combinator framework.
Moreover, you can mix DSL-generated parsers with custom ones and extend the DSL
using nim templates.
## Documentation
- [User Manual](https://sealmove.github.io/binarylang/)
- [Developer Manual](https://sealmove.github.io/binarylang/devmanual.html)
- [Changelog](https://sealmove.github.io/binarylang/changelog.html)
- [Test Results](https://sealmove.github.io/binarylang/testresults.html)
- Tutorials, write-ups, articles
- [Ajusa on HTTP](https://ajusa.github.io/binarylang-fun/intro.html)
- [Ajusa on Web Scraping](https://ajusa.github.io/binarylang-fun/scraping.html)