Imp: A full-stack relational language built around incremental maintenance(github.com)
github.com
Imp: A full-stack relational language built around incremental maintenance
https://github.com/jamii/imp
9 comments
He is reinventing Chris Granger's Eve language all over again. I have seen many, many attempts at "functional-reactive programming languages with an Excel-style DB bolted on top" and not a single one has succeeded so far. The biggest reason for failure is that trying to do both tend to result in a half baked platform. The DB /spreadsheet lacks features and the programming language doesn't offer enough functionality/libraries to make apps. OP needs to make a killer application/compelling use case.
The author used to work on Eve.
Yeah, is very good the write-ups.
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!.
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!.
This would be a better link: https://scattered-thoughts.net/writing/imp-intro/
This is tangential, but the author is an incredible technical writer: https://scattered-thoughts.net/
May be I'm not an expert at programming languages, but it's the first time where I've seen sets used as boolean values (not just as a truthy value, but as THE true and false), and it reminded me of how set theory equivalence to boolean logic in math.
aaaand i love it. this is so expressive.
Imp ist der Beste.
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.