Plans the dataflow perspective: a local assignment x <- e (no function) whose definition is read exactly once,
by a read seeing no other definition, evaluated exactly once in a later statement of the same block, is dropped and
e takes the place of the read, if nothing in between can change e (an impure e must be next to its use, a
pure one must not have its variables reassigned in between).
Plans the
dataflowperspective: a local assignmentx <- e(no function) whose definition is read exactly once, by a read seeing no other definition, evaluated exactly once in a later statement of the same block, is dropped andetakes the place of the read, if nothing in between can changee(an impureemust be next to its use, a pure one must not have its variables reassigned in between).