[HN Gopher] Logic Programming in Rust
___________________________________________________________________
Logic Programming in Rust
Author : tosh
Score : 29 points
Date : 2024-03-05 20:10 UTC (2 hours ago)
(HTM) web link (s-arash.github.io)
(TXT) w3m dump (s-arash.github.io)
| arijun wrote:
| Looks cool, although I wonder a bit at the benefit of writing it
| as a dsl in Rust. It seems like you would usually write the whole
| program in the dsl and just hit run in regular Rust.
| codetrotter wrote:
| From their linked paper:
|
| > 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.
| arijun wrote:
| The white paper answered me right in the abstract!
|
| > ...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.
| chc4 wrote:
| Related: The "missing" graph datatype already exists. It was
| invented in the '70s
| https://news.ycombinator.com/item?id=39606885
___________________________________________________________________
(page generated 2024-03-05 23:01 UTC)