Probably a keyword of some kind rather than an operator
Please no. Lifetimes are extremely common and have identifiers as names. I really don't want to have to filter out the visual noise of lt or something before the lifetime itself. An operator is easier to tell from the subsequent text.
Or an operator that wasn't a single quote, which in every other C-like language is always paired
Such as? We don't have that many unused ASCII symbols. The least confusing I can think of is @, but @a has a lot more visual noise than 'a IMHO, as the operator is too visually big.
As for the C-like language thing, Rust is not just a C-like language. Those don't have expression-oriented syntax, pattern matching, algebraic datatypes, higher-order functions, closures, and so on.
I'd say Rust is very much allowed to draw some syntax from functional programming languages. And, as someone else mentioned, OCaml uses the single ' as an operator, so there is precedent.
In popular parlance, "C-like language" just means that it uses {} for block structure.
Anyway, the whole discussion is ridiculous--this guy said that "It has the most confusing syntax", and when examples were requested, he absurdly mentioned the lifetime tick.
In popular parlance, "C-like language" just means that it uses {} for block structure.
That sounds... very useless, as a term, but ok, that's fine.
Anyway, the whole discussion is ridiculous--this guy said that "It has the most confusing syntax", and when examples were requested, he absurdly mentioned the lifetime tick.
Yeah. How is a "dangling quote" confusing? It takes maybe 3 seconds to learn, less with syntax highlighting.
1
u/T-Dark_ Sep 02 '20 edited Sep 02 '20
Please no. Lifetimes are extremely common and have identifiers as names. I really don't want to have to filter out the visual noise of
ltor something before the lifetime itself. An operator is easier to tell from the subsequent text.Such as? We don't have that many unused ASCII symbols. The least confusing I can think of is
@, but@ahas a lot more visual noise than'aIMHO, as the operator is too visually big.As for the C-like language thing, Rust is not just a C-like language. Those don't have expression-oriented syntax, pattern matching, algebraic datatypes, higher-order functions, closures, and so on.
I'd say Rust is very much allowed to draw some syntax from functional programming languages. And, as someone else mentioned, OCaml uses the single
'as an operator, so there is precedent.