On Thu, Dec 24, 2009 at 12:19 AM, Stéphane Ducasse <[email protected]> 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 [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
