RuleExpression.ZeroOrManyWithHangingSeparator is the same as
ZeroOrManyWithSeparator, except that it allows for a hanging separator – a separator located at the end of the list (not followed by an element).
This example parses code such as:
that is the code either with a comma at the end of the list or without it.
ZeroOrManyWithSeparator rule would prohibit a comma at the end of the list.