It amazes me how difficult it is to design new features to a
programming language.  Once a language is baked in its original
form it’s almost impossible to add new semantics let alone
syntax rules.  Operators are hellish.  You want to invent new
ones, but you are generally limited to the common symbols found
on the standard keyboard.  That’s why so many languages focus on
using braces and brackets, because they are free and easy to
type.  Though, once you’ve allocated them to one purpose you
cannot readily reallocate them to another.  You can try to
overload them, and give them some contextual dependency, but
that usually ends up in a mess.  I know, I advocated for a long
time using the brackets as a filter operator for the X#
language.  I even built in all the contextual baggage into the
compiler so it would fundamentally work, most of the time.  In
the end it was a wash.  If I could do it all over again, I’d
find another way.   We get into this same trouble when designing
new features for C#.  Symbols to us