News for hackers. Stuff that matters.
Re:Why do long options start with two dashes? (2019) by eyelidlessness on Thursday April 08, 2021 @08:42PM (#26745541)
Weirdly, this kind of syntactic idiosyncrasy is something that got me interested in Erlang. Finally a language that uses full stops when a routine full stops. I find most of the rest of its syntax uncomfortable (I didn’t spend much time with the language, I’m sure it’s fine when you’re used to it), but I always found it weird to end a completed statement with a statement-list-joining punctuation mark.
Re:Why do long options start with two dashes? (2019) by samatman on Thursday April 08, 2021 @10:23PM (#26746072)
This was inherited from Prolog, which ends terms with a full stop.

Most other languages didn't want to handle the syntactic ambiguity of using the period as a decimal point and a statement separator.

Re:Why do long options start with two dashes? (2019) by eyelidlessness on Thursday April 08, 2021 @10:37PM (#26746138)
I thought of mentioning the Prolog heritage. Weirdly CSS (having the worst syntax consistency of any language I can think of) is hyphen-heavy and solves its negation infix operator ambiguity well: it needs to be surrounded by whitespace.

For Prolog/Erlang, I think the preceding syntax is disambiguating enough

Re:Why do long options start with two dashes? (2019) by GoblinSlayer on Friday April 09, 2021 @05:48AM (#26748539)
COBOL terminates some statements with a period. And before that FLOW-MATIC https://en.wikipedia.org/wiki/FLOW-MATIC
Re:Why do long options start with two dashes? (2019) by eythian on Friday April 09, 2021 @05:20AM (#26748369)
> I always found it weird to end a completed statement with a statement-list-joining punctuation mark.

But if you're producing a list of statements, isn't a statement-list-joining punctuation mark the perfect thing to use?

There's also the difference in different languages between statement separators and statement terminators, but I don't really know enough about it.

Re:Why do long options start with two dashes? (2019) by weinzierl on Friday April 09, 2021 @03:51AM (#26747779)
I always thought this is a Wirthism because Pascal ends unit and program with an "end." (with a dot), whereas function and procedure are terminated with "end;". (with a semicolon). I don't know about other Wirth languages though, maybe it is Pascal specific and not really something typical for Wirth?
Re:Why do long options start with two dashes? (2019) by macintux on Thursday April 08, 2021 @11:37PM (#26746422)
The punctuation in Erlang mirrors English so closely I find it frustrating when people complain about it.

It's incredibly simple. Comma means "and", semi-colon ends a clause, full stop closes out the entire thought.

Re:Why do long options start with two dashes? (2019) by toast0 on Friday April 09, 2021 @03:42AM (#26747726)
Erlang is great, and I got used to the punctuation, but it's kind of a pain when you're moving code around.

Oh, now this is the last thing, gotta take off the ; or replace a , with a .

At least when I was starting out, I'd have loved a more C-like syntax with {} and consistently semicolons. Of course, Elixir came and just got rid of most punctuation, which I like less.

Anyway, it's consistent and after a couple weeks of messing it up, I can consistently see where the mistake is from the compiler error; after several years, I still sometimes mess it up, but oh well. I can't recall having messed up the punctuation so much that it still compiled but wasn't what I meant, so it's almost always quick to recover.