constructor(tempVar) {
    this.tempVar = tempVar;
    this.expressions = [];
  }
@fileoverview This transforms expression into a normalized comma expression.
These comma expressions take the form of

  $tmp1 = ..., $tmp2 = ..., $tmp3 = $tmp1 op $tmp2, $tmp3

The important part here is that the order of execution stays the same and
that the semantics is the same as well as that the last expression is either
an identifier, a literal expression or an expression that has no side effects
(minus crazy valueOf, toString, global getter).

This concept is also extended to support conditionals `a ? b : c` and
expressions such as `a || b` gets transformed into a conditional.

The normalized comma form is used by the CPS transformer when there is a
yield expression. It is also used by the SuperTransformer.