Logic Programming in Rust
s-arash.github.io
s-arash.github.io
> Rust’s powerful macro system permits Ascent to be compiled uniformly with the Rust code it’s embedded in and to interoperate with arbitrary user-defined components written in Rust, addressing a challenge in real-world use of logic programming languages: the fact that logical programs are parts of bigger software systems and need to interoperate with other components written in imperative programming languages.
https://s-arash.github.io/ascent/cc22main-p95-seamless-deduc...
Another benefit, mentioned at the end of the original page:
> The feature wasm-bindgen allows Ascent programs to run in WASM environments.
> …written in Rust, addressing a challenge in real-world use of logic programming languages: the fact that logical programs are parts of bigger software systems and need to interoperate with other components written in imperative programming languages.