What is more adaptable, more words or more symbols?
I used to like Python for its abundance of english words instead of operators which makes it more readable.
However, I have often seen the common notion where people prefer symbols over keywords. Lately, some of the newer languages have added both new keywords and new symbols.
For eg: Rust using |var| semantics for callback functions. The popular defer that has existed for very long in multiple languages. C adding [[...]] for attributes
Now even though I am saying || and [[]] are new symbols added, they aren't operators, they are just replacing some brackets essentially for a different type of task.
With this context, here is my question:
What if instead of these keywords:
await, async, defer, try, catch, weren't keywords, they were replaced by some operator?
There are two cases in my mind, either replace the keywords with a single operator (@ could replace await), annotating the data, or, use a combination of operators (-! could be used to mark a function that can produce an error).
I have the concern, that it may look too ugly because there are a bunch of operators, and in the case of combination of operators, two operators together, changing the meaning of the single operator is also weird.
But, I still wanted to ask, seeing how more experienced people view this situation.
Also, what if, both the operator and the keyword is present? Would that just be wrong because now there are two ways to do the same thing?