Less temporary variables in desugaring

No, it's the right commit. If the printer is not able to print `If`s and `Block`s in expression correctly in JavaScript, it is no good to treat them as expressions in the desugaring.