On 09/07/12 14:54, marcandre (Marc-Andre Lafortune) wrote:
>
> Issue #6693 has been updated by marcandre (Marc-Andre Lafortune).
>
>
> Hi,
>
> regularfry (Alex Young) wrote:
>> I don't know about anyone else, but I'm already using _foo as a
>> pattern for private-like markers.
>
> I don't think that it would be confusing. We don't confuse variables
> with methods already, right?

You might not, but it's a common gotcha with local variables and private 
methods.


> Also, I feel the convention for this already exists with two
> underscore before and after the method, in particular
> SimpleDelegate#__getobj__ and #__setobj__

That's true, it does exist, but in my head that specific convention is 
reserved for core/stdlib.  Maybe I'm being overly paranoid about that.

> Everyone is of course free to use their own. In any case, is it
> frequent that we delegate to an object for which we don't know the
> methods in advance?

Well, yes - part of the point of the VCR class I showed is that it's 
library code that's usable pretty much anywhere.  I use it (and things 
like it) in testing a fair amount, where in general I want to be able to 
take advantage of method_missing and not have to care about the 
specifics of the delegate.  Also, while I might know all the methods on 
the delegate *now*, I don't have foreknowledge of all the methods which 
will ever be implemented on it as the project develops.

There is precedent for what you're suggesting, in that Erlang does the 
same, so it's not unreasonable.  It's just close enough to home that it 
makes me uncomfortable.

-- 
Alex

>
>
> ---------------------------------------- Feature #6693: Don't warn
> for unused variables starting with _
> https://bugs.ruby-lang.org/issues/6693#change-27894
>
> Author: marcandre (Marc-Andre Lafortune) Status: Feedback Priority:
> Low Assignee: Category: core Target version: 2.0.0
>
>
> Currently, variables which are set but not used will generate a
> warning (ruby -w), except if they have the special name "_".
>
> So best practice is to use "_" for all unused variables. This does
> not encourage readable code.
>
> # Currently must read: _, _, _, suffix = parse_name
>
> # could read: _first, _middle, _last, suffix = parse_name
>
> We should not warn for unused variables starting with a "_".
>
> This would create an option (but no obligation) to use more
> descriptive names than "_" without generating warnings.
>
>
>