I think [] and {} are better for clarity, though I agree with your point about semicolons. For example, Lua completely ignores newlines, and semicolons are only needed to disambiguate in some very rare cases.
http://www.lua.org/manual/5.2/manual.html#3.3