hydroflow 0.10.0

Hydro's low-level dataflow runtime and IR
Documentation
lhs = mod[0] -> tee();
rhs = mod[1] -> tee();

lhs -> [0]joined;
rhs -> [1]joined;

joined = join() -> map(|(k, (lhs, rhs))| (k, (Some(lhs), Some(rhs)))) -> combined;

lhs -> [pos]missed_lhs;
rhs -> map(|(k, _v)| k) -> [neg]missed_lhs;

missed_lhs = anti_join()
    -> map(|(k, v)| (k, (Some(v), None)))
    -> combined;

rhs -> [pos]missed_rhs;
lhs -> map(|(k, _v)| k) -> [neg]missed_rhs;

missed_rhs = anti_join()
    -> map(|(k, v)| (k, (None, Some(v))))
    -> combined;

combined = union() -> mod;