~~NOTOC~~ __**Rust Library**__ * [[lib:repl|Using the REPL]] * [[lib:decoder|Reading by Character]] * [[lib:parser|Building Parsers]] * [[lib:logging|Logging]] __**Relision Language (RL)**__ Unavailable {{:wiki:logo.png}} ====== Relision ====== **Relision** is a [[https://en.wikipedia.org/wiki/Rewriting|term rewriting]] library written in [[https://rust-lang.org|Rust]]. Right now it is pre-1.0.0, so development is still **closed**. If you are interested in participating, let the maintainers know and we can add you to the repository on Gitlab. The focus of development right now is on the matching system. The system can read and process terms, but is not quite Turing complete just yet (it needs to be able to match and rewrite the lambda expressions). ===== What ===== Relision is, in some ways, a successor to [[http://elision.github.io/|Elision]]. Elision is a term rewriter written in [[https://scala-lang.org|Scala]] and donated to [[https://ornl.gov|Oak Ridge National Laboratory]] (ORNL), where it became the core of ORNL's [[https://www.ornl.gov/partnerships/ornl%E2%80%99s-hyperion-technology|Hyperion]] static analysis system. ===== Why ===== Relision focuses on //performance// through improved concurrency and the elimination of garbage collection, and a //simplified language// for expressing rewriting rules and strategies. ===== Status ===== Relision is under development right now, but as it develops documentation will appear here. If you want to follow the development, you can visit [[https://stacyprowell.com/blog|my blog]].