On Thursday, 25 June 2015 at 13:04:12 UTC, Vladimir Panteleev
wrote:
On Wednesday, 24 June 2015 at 05:20:38 UTC, Jonathan M Davis
wrote:
When adding lazy versions in the past, for better or worse,
we've generally gone for using nouns, whereas you're
suggesting adjectives based coming from the past tense of a
verb (though the verb "to case" has nothing with the case of
letters).
OK, so I didn't really understand what were you referring to,
since the only examples I found while looking through the
*stable* documentation were joiner and splitter. But I went
through the list of new symbols, and I found that a few more
have been added after the last release to std.string:
en/detabber, left/right/centerJustifier, soundexer
So, one option is to stay consistent with these additions, and
go with upperCaser and lowerCaser, even if those sound a bit
odd.
Another option would be to rename those additions as well, so
we would have:
en/detabbed, left/right/centerJustified, soundexed, upperCased,
lowerCased
I don't know if this counts as being outside of the scope of
this thread.
Any thoughts? Or is everyone bored to death already? :)
I prefer the noun naming scheme to the adjective naming scheme.
We really haven't been using adjectives much, and I think that
nouns make more sense, since what you're basically doing is
constructing an object. So, I'd just as soon not start using
adjectives for functions which return lazy ranges.
Also, the less that we have to rename the better, so if many of
the newer functions are already nouns, then it makes sense to
continue that (and it wouldn't surprise me if some of the newer
ones were in 2.067, in which case, it's likely too late to change
them unless they're particularly bad).
- Jonathan M Davis