On Sunday, 10 August 2014 at 17:29:24 UTC, Walter Bright wrote:
 1. labels
 2. case statements
 3. default statements
 4. ?: expressions

and overloading this with more meanings is, in my not-so-humble-opinion, not a good idea given the very marginal benefit it might have.

 5. Access permissions (public/private/protected).
 6. File length attributes (@safe: @system: @trusted:)

But in all cases (except 4), the final symbol is the colon, and it's effect lasts for that scope unless overridden. I don't see how it would be making things all that much more complex. Unlike with templates in C++ where the <>'s were overloaded for a new (and completely unrelated) confusing purpose, the :'s use wouldn't really change, and it would remain the last symbol for it's declaration.

Although I'm not sure how much it adds for complexity to the compiler (if any).

Reply via email to