Re: #sorted/#sorted:

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: #sorted/#sorted:

Julian Fitzell-2
On Thu, Dec 24, 2009 at 12:19 AM, Stéphane Ducasse
<[hidden email]> wrote:
>> #sorted, #sorted: -- VW already has this. VA is adding it.
>>>
>>> What is sorted? a boolean predicate method?
>>> What a bad name. Did they forgot Kent?
>>
>> An example of my previous message -- this name is confusing and should
>> probably not be used.
>
> Yes I agree

I'm not interested in waging a battle over naming with hundreds of
people on a mailing list. I can give a few examples of why I think
it's clear, but in the end, my usage (being pragmatic and concerned
primarily with compatibility) is going to go with the majority of
platforms.

Adjective method selectors seem to normally be side-effect free and
return a copy of the object modified in some way, e.g.: #capitalized,
#shuffled, #padded:to:with:, #withBlanksTrimmed. I can't think of any
method selectors that are adjectives and don't return a modified copy
of the object (though I'm sure someone will come up with some
examples).

Methods selectors that cause the object to do something or to change
itself in some way are pretty much all imperative verbs: #grow,
#clear, #close (there are, of course, plenty of verbal selectors that
*do* return a copy).

And for what it's worth, nouns tend to be accessors (#name, #size) and
predicates (#isEmpty, #canUnderstand:) tend to be test methods. There
are plenty of other grammar-based patterns.

I can see an argument for #copySorted, but personally I don't think it
makes things much clearer and by that logic you need to have
#copyShuffled, #copyWithBlanksTrimmed, etc. Since adjectives always
seem to return a copy anyway, the "copy" verb seems redundant.

Anyway, that's all I have to say about it. You guys carry on and name
the method anything you like - I was just letting you know what the
other platforms have. :)

Julian

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: #sorted/#sorted:

Stéphane Ducasse

On Dec 24, 2009, at 10:12 AM, Julian Fitzell wrote:

> On Thu, Dec 24, 2009 at 12:19 AM, Stéphane Ducasse
> <[hidden email]> wrote:
>>> #sorted, #sorted: -- VW already has this. VA is adding it.
>>>>
>>>> What is sorted? a boolean predicate method?
>>>> What a bad name. Did they forgot Kent?
>>>
>>> An example of my previous message -- this name is confusing and should
>>> probably not be used.
>>
>> Yes I agree
>
> I'm not interested in waging a battle over naming with hundreds of
> people on a mailing list.

why?
We are discussing and getting a consensus.

> I can give a few examples of why I think
> it's clear, but in the end, my usage (being pragmatic and concerned
> primarily with compatibility) is going to go with the majority of
> platforms.

We are pragmatic too. We try to avoid that people always do the same mistakes
and get polymorphic classes - which is too me really important. We got burnt by that with VW.
You know the asSortedCollection everywhere or not wanted a copy


> Adjective method selectors seem to normally be side-effect free and
> return a copy of the object modified in some way, e.g.: #capitalized,
> #shuffled, #padded:to:with:, #withBlanksTrimmed. I can't think of any
> method selectors that are adjectives and don't return a modified copy
> of the object (though I'm sure someone will come up with some
> examples).
>
> Methods selectors that cause the object to do something or to change
> itself in some way are pretty much all imperative verbs: #grow,
> #clear, #close (there are, of course, plenty of verbal selectors that
> *do* return a copy).
>
> And for what it's worth, nouns tend to be accessors (#name, #size) and
> predicates (#isEmpty, #canUnderstand:) tend to be test methods. There
> are plenty of other grammar-based patterns.
>
> I can see an argument for #copySorted, but personally I don't think it
> makes things much clearer and by that logic you need to have
> #copyShuffled, #copyWithBlanksTrimmed, etc. Since adjectives always
> seem to return a copy anyway, the "copy" verb seems redundant.
>
> Anyway, that's all I have to say about it. You guys carry on and name
> the method anything you like - I was just letting you know what the
> other platforms have. :)

This is important but now you can also say to VA people that copying
VW is not always the best choice.



>
> Julian
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project