Datafun is a new language I'm working on with Neel Krishnaswami. It's a simple, pure, and total functional language that generalizes Datalog. Datafun's superpower is that it can concisely and declaratively express and compute fixed points of monotone maps on semilattices.
Here's some further resources on Datafun:
A mini-version of Datafun implemented in ~60 lines of Racket, with plenty of commented examples. Intended as a helpful introduction for folks who know Racket or Scheme. It includes set comprehensions and fixed points, but doesn't handle monotonicity, semilattices, termination checking, or seminaive evaluation.
Incremental computation for faster fixed points
Since late 2016 we've been working on "seminaive evaluation" for Datafun: finding fixed points faster by incrementalising the iterated function. This work culminated in the POPL 2020 paper mentioned earlier. See also:
An extended abstract written for HOPE 2018.
A three-page note proving a key result: the derivative of a fixed point is the fixed point of its derivative.
Modal types for monotonicity
Since late 2017 I've been working on a new, "modal" type system for Datafun that handles monotonicity more flexibly. See: