com.twitter.summingbird.planner.DagOptimizer
If the given Id can be replaced with a simpler expression, return Some(expr) else None.
If the given Id can be replaced with a simpler expression, return Some(expr) else None.
If it is convenient, you might write a partial function and then call .lift to get the correct Function type
We can always push all Also nodes all the way to the bottom of the dag MergedProducer(AlsoProducer(t, a), b) == AlsoProducer(t, MergedProducer(a, b))
Unary(l, fn), if l == AlsoProducer(tail, r) can be changed to AlsoProducer(tail, fn(r))