Imp: A full-stack relational language built around incremental maintenance
github.com
github.com
The macro-dsl in https://scattered-thoughts.net/writing/imp-simple-interprete... is cool too, haven't tried doing something like that in the language-processing tools I've made in Rust in the past, but might now that I see that it doesn't end up (immediately) sucking.
EDIT: Also very nice to see a language intro with both a bunch of examples, including a comparison to a better-known language with a similar model, and denotational semantics.
I remember this from https://scattered-thoughts.net/writing/a-practical-relationa....
Working with the relational model for my lang (https://tablam.org) I also found very challenging how surface iterators/generators (like here: "a maybe-infinite type") is the most significant challenge.
Is interesting how on this the solving look clean! It take me a long time to figure out how do it on rust (still using rust semantics) so see it doing in a more "pure" version is very nice!.