// props.b + 1 is an non-allocating expression, which means Forget can // emit it trivially and repeatedly (e.g. no need to memoize props.b + 1 // separately from props.b) // Correctness: // y depends on either props.b or props.b + 1 function PrimitiveAsDep(props) { let y = props.b + 1 |> foo(%); return y; }