Live data from Hacker News

Differential Dataflow for the Masses

github.com

11–12 of 12 posts

Re: Differential Dataflow for the Masses

#11

Earlier quoted context omitted.

Electric Clojure v3 cannot be "Differential Dataflow" because it *seems* to be restricted to DAGs only. Differential Dataflow is highly expressive, it supports iteration.

(electric founder here) we are lowercase differential dataflow my friend. Fwiw our model does support cycles and iteration, we simply didn’t bother to formally reify cycles yet, because we have a functional effect system under the hood and using that to implement cycles by userland side effect does the right thing, is perfectly efficient, and has very little downside.

Thanks for clarifying it!

I checked some of your videos, and I couldn't quite grasp how much of (capital) DDflow do you borrow.

What does "our model does support cycles and iteration" mean? Do these also have the incremental semantics that guarantee bounds over the size of updates?

Re: Differential Dataflow for the Masses

#12

This seems to make the mistake of identifying a vector with a stream.

In this implementation streams are not vectors nor lists. They are ordered hash maps.

Just pointing out what the theoretical documentation says. A stream should have operations for empty, current, and next. You don't want implementation details leaking into the abstract model.
Post reply on HN