An expression list consists of a number of comma-separated subexpressions. It evaluates them from left to right, type and result are those of the last (right-most) expression. This is similar to the concatenation of expressions with the comma operator in the C programming language.
As an addition to the comma operator of the C programming language, local variables can be declared in expression lists. The scope of these variables is the rest of the expression list, starting with the initializer of the local variable.