This is because the comma belong to the new line next statement and not the previous one. (As @Dave Newton states it in his comment below: the pseudo-BNF would be foo [, foo]*-ish)
For example:
If you have this:
a,
b,
c
If you need to remove the c
then you need to delete two things: de c
and the comma on the previous line. If you do this:
a
,b
,c
now you only need to delete the ,c line. It makes more sense this way, because the comma behind the b
in the first example only is needed because of the c
. It does look worse this way though. It's a trade off between maintainability of your code and the way it looks.