Skip to content

lwandrebeck/ripeg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ripeg

Incremental packrat Parsing Expression Grammar in Rust

Crates.io docs maintained

ripeg Continuous Integration Coverage Status codecov

downloads GitHub contributors commits

License: GPL v3+ Minimum rustc version dependency status

issues closed pr prc Join the chat at https://gitter.im/ripeg/community

This project intends to be a Rust port of https://github.com/zyedidia/gpeg/ which is itself inspired by http://www.inf.puc-rio.br/~roberto/lpeg/. Related research publications about incremental PEG are https://zyedidia.github.io/notes/yedidia_thesis.pdf and https://zyedidia.github.io/preprints/gpeg_sle21.pdf

Contributing

PRs are more than welcome, I’d like a lot this project not to be a one-random-guy work. Please read Contributing

Code of Conduct

Please follow the CoC from rust-lang. I’ll be glad if I can avoid any kind of moderation, I have better to do with my time, thanks !

Current status

A first part of code has been ported, but you definitely can't use that crate yet.

Roadmap && Changelog

  • 20220319 0.1.0 : ripeg crate published so name is reserved.
  • 20220322 0.1.1 : Release with CI, code coverage configured, and use of cargo-nextest.
  • 20220405 0.1.2 :
    • Release with charset module ported.
    • Use of cargo test instead of nextest because it does not support doc tests yet.
    • Comment out criterion bench in github actions as results are useless in CI env.
    • Update tarpaulin to 0.20.0, and fix test coverage.
    • Please note that charset methods prototypes may change.
  • 20220410 0.1.3 :
    • Release with isa module ported.
    • Update benchmarks
    • Please note that isa will probably change until 0.1.6 is released.
  • 202????? 0.1.4 : release with input module ported.
  • 202????? 0.1.5 : release with pattern module ported.
  • 202????? 0.1.6 : release with memo module ported.
  • 202????? 0.1.6 : release with vm module ported.
  • 202????? 0.1.7..n: port other modules.
  • 202????? 0.2.0 : 1st usable version.
  • 202????? 0.x.y : optimize
  • 202????? 1.0.0 : stable release.

About

Incremental PEG parsing in Rust

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages