This seems like it would rock for building Language Server Protocol implementations or other similar things.

There's a tool in Rust called Salsa that's tailored for this, but it's galaxy-brained (I watched an hourlong introduction video and could still barely grasp it).

https://github.com/salsa-rs/salsa

Funny you say that, the Rust borrow checker tried to adopt differential-dataflow directly - the library behind this language - but Frank McSherry told them it's too complicated, let me build you an easier-to-use Datalog instead [blog]. So he built [datafrog] which is at the heart of the borrow checker today.

I'm not sure what the delta between Salsa and differential-dataflow is. My experience with differential-dataflow is that it's also galaxy brain.

[blog]: https://github.com/frankmcsherry/blog/blob/master/posts/2018...

[datafrog]: https://github.com/rust-lang/datafrog