Earlier quoted context omitted.
Thank you! Now corrected. Informally: incredibly, one reads and re-reads, edits multiple times in a span of hours, and still leaves errors and imprecisions. Of course it was the period or "full-stop" - in reading, also as I had defined the colon differently in the next paragraph... By the way, you made me note that 'full-stop' is British English and 'period' is American English. As some of us prefer to write in Inter…
"UN English" generally follows British/Oxford usage, although there are a few exceptions: writing "Mr." with the full stop, "sulfur" rather than "sulphur", "1.30 pm" (not 1:30 pm or 13:30) etc. I think it's a decent compromise. All the Zs make it look weird to British readers, and all the Us make it look weird to Americans. https://www.un.org/dgacm/en/content/editorial-manual/punctua... ("full stop").
The melancholy decline of the semicolon
111–120 of 260 posts
Re: The melancholy decline of the semicolon
#112Re: The melancholy decline of the semicolon
#113Re: The melancholy decline of the semicolon
#114Re: The melancholy decline of the semicolon
#115Earlier quoted context omitted.
For a couple of decades now college professors have been death on passive voice sentences, which tends to create students and then writers who avoid long sentences for fear they aren't "punchy" enough.
And the sad thing is, they don’t even know what the passive voice is! See G. K. Pullum, Fear and Loathing of the English Passive [ http://www.lel.ed.ac.uk/~gpullum/passive_loathing.html ]. Their unintentional hypocrisy is quite something, e.g.: > … it makes little difference if you decide to look at prose written by the advisers on usage themselves. Consider the beginning of E. B. White's introduction to his revision…
Re: The melancholy decline of the semicolon
#116I am seeing a use of the instruments that seems quite confused. The semicolon is part of the division of the expression of thought in supersets and subsets of structural affinity: comma, semicolon, period, new paragraph. (Which also means that the semicolon has a necessary role in general: whenever the structure is best defined also using that level of affinity.) The dash, the colon and the brackets are instead relat…
Re: The melancholy decline of the semicolon
#117Earlier quoted context omitted.
It's a trade-off. You can either assume all statements end at the end of the line, and require a continuation character (backslash in Python) if that isn't the case; or you can require a statement terminator (semicolon/closing brace in Rust) for all statements. The downside of assuming statements end at the end of the line is that you need to have special rules for when that isn't the case (such as Python's implicit…
Thanks, this makes perfect sense. Python we are using \n instead of ; as the statement terminator. Just didn't got what you mean by "python's implicit statement continuation inside braces" ?
x = (
object
.method1()
.method2()
)Re: The melancholy decline of the semicolon
#118Completely off topic but, after doing python for ages, recently started writing Rust and semicolon does seems useless. We are doing the indentation and new lines anyway, why not just make them as default language construct as python does. (autodidact developer here, feel free to ELI5 and enlighten me)
Well, have you ever run into the x = some_long_expression + another_long_expression problem? In Python you need to be careful to wrap that in () or use a \ before the newline to avoid it parsing as two lines, e.g. x = some_long_expression; + another_long_expression; In particular, if you have a builder expressions let x = someBuilder() .setVal(x) .build() You'd need to wrap the entire thing in () to avoid it getting…
Re: The melancholy decline of the semicolon
#119Completely off topic but, after doing python for ages, recently started writing Rust and semicolon does seems useless. We are doing the indentation and new lines anyway, why not just make them as default language construct as python does. (autodidact developer here, feel free to ELI5 and enlighten me)
Well, have you ever run into the x = some_long_expression + another_long_expression problem? In Python you need to be careful to wrap that in () or use a \ before the newline to avoid it parsing as two lines, e.g. x = some_long_expression; + another_long_expression; In particular, if you have a builder expressions let x = someBuilder() .setVal(x) .build() You'd need to wrap the entire thing in () to avoid it getting…
I guess that's because in the REPL Python need's to know whether the line has finished yet or not. OCaml and F# uses two semicolons ';;' for that purpose, but only in the REPL. In Haskell you can use braces and semicolons or '{:' and ':}' in the REPL.
Re: The melancholy decline of the semicolon
#120Earlier quoted context omitted.
Well, have you ever run into the x = some_long_expression + another_long_expression problem? In Python you need to be careful to wrap that in () or use a \ before the newline to avoid it parsing as two lines, e.g. x = some_long_expression; + another_long_expression; In particular, if you have a builder expressions let x = someBuilder() .setVal(x) .build() You'd need to wrap the entire thing in () to avoid it getting…
To be fair, that's really more of a python-specific deficiency than a general problem with significant whitespace. Haskell for example interprets further-indented lines as a continuation of the current expression, only ending the expression when it sees a new line of the same or lesser indentation.