~~~ rename evaluationOrder, orderOfEvaluation tests to evaluationOrder1, 2
~~~ format code in assignToArrayElementWithSideEffect test
~~~ remove unnecessary empty line in BinaryOperationTranslation
~~~ move translateNullableExpression to ExpressionVisitor, get rid of translateAsStatementAndAddToBlock
~~~ ExpressionVisitor.createWhile: make static, calculate bodyStatement only in main branch
~~~ simplify Translation.translateExpression, small refactoring for parameters
~~~ CallInfo, AssignmentTranslator: use jsBlock instead of inner context
~~~ minor: simplify Translation.translateAsStatement
~~~ use JsBlock instead of inner context for translation default arguments in FunctionBodyTranslator
~~~ minor: WhenTranslator