x3qt (Yury Polyakov) wrote in #note-6:
shyouhei (Shyouhei Urabe) wrote in #note-4:
Tell us how is it better than #12543, which is receiving negative feedbacks?
Syntax proposed in #12543 does not look good to me, specifically because it is not a single word and using already existing constructions, so can be confusing because it is a special meaning.
Adding a new reserved word is extremely expensive in the sense that it massively breaks backwards-compatibility. Every single piece of code everywhere in the world that every programmer has ever written that uses the identifier recur will be potentially broken by this change.
The code you proposed is perfectly legal today, which means that introducing your proposed change will change the meaning of existing code.
If you want to introduce a feature for adding new return semantics to methods you have to do it in a way which
- does not introduce a new keyword or reserved word
- does not change the meaning of existing code
- ideally is currently not valid Ruby code
has the advantage that it only uses already existing reserved words and keywords and is currently illegal, so there cannot possibly be any existing code that gets broken.