3 ms·
> Is there any reason while the Ruby 1.8 behaviour that duplicate variable names are allowed was changed? Because in general allowing duplicate argument names
by msbarnett 14y ago
> Is there any reason while the Ruby 1.8 behaviour that duplicate variable names are allowed was changed?
Because in general allowing duplicate argument names is a terrible idea and a rich source of bugs?
> This seems a much cleaner way of allowing this construct.
I feel the exact opposite. A privileged 'disregard' symbol gives you the power of signalling that you don't care about certain arguments, without the 'shoot-yourself-in-the-foot' side effect of easily accidentally shadowing what you intended to be distinct entities.
- anonymouz 14y agoI can see the argument for having a special symbol for this - but that is not what's happening here. The underscore is still a perfectly valid variable name and is used as such, only it behaves different from every other variable name. If it's supposed to be a special symbol don't make it a valid variable name.