Why shouldn't you use the semi-colon to terminate lines? This is pretty
common practice to do, even if the compiler does it automatically. Is there
a specific reason you think it shouldn't be done?
A semicolon doesn't just make it easier for the compiler, it makes it
easier to read as well. Because you know where the line is (should be)
terminating.
That's why I disagree with this, but perhaps there's a good reason not too.
I'm curious about other people's views.
For more information:
http://code.google.com/p/amx-netlinx-common/wiki/CodeFormatAndCommenting
I second the use of semi-colons to terminate lines. Most of the time, the
compiler and I agree on the end of a line/command... but the couple of
times we have differed, the compiler did not inform me and I spent hours
trying to figure out what happened. The compiler does support them, it just
does not require them.
Other than use in rare single-line constructs, semicolon terminators
are completely superfluous in NetLinx. Semicolon statement terminators
at the end of lines add nothing to the code. Code will compile fine
with or without them. I know lines terminate when the statement has
ended (peren-newline, bracket-newline, doublequote-newline). The rules
don't change there. Adding them to the ends of lines in NetLinx is
equal only to decoration.
By allowing them, they are sure to be forgotten in some instances. The
code will still work, but this will hinder readability and hinders
using the code as a learning tool ("Why isn't this line terminated?
Why does it still work?")
I come from a programming background in C and PHP, so I'm very used to
semicolons as terminators. I also deal with languages that either
don't use them (PIC assembly) or that can use them, but usually
shouldn't (such as Haskell). I've gotten used to not using them in
NetLinx, even though it is similar to other popular languages, as they
are not necessary and they add nothing to the code.
Changed the column width to 81 characters, noticed that it includes the
code-folding section as 1 character, so setting it to 81 actually gives you
80.