On Saturday, 20 June 2015 at 18:46:45 UTC, Steven Schveighoffer wrote:
I think the issue we are struggling with here is that:

abbreviate -> abbreviated

This makes some sense. However, the past participle of "set" is "set".

So "set the extension" -> "a set extension" doesn't work, because "set" doesn't change. Our enemy here is the English language :)

If the original was named something like "modifyExt", then "modifiedExt" would be fine.

I would understand that if it was part of a consistent pattern for new names. However, judging by toLower/toLowerCase, there is none - and, if I understand Walter Bright's argument correctly, he argues that since we were not consistent in naming when creating std.algorithm, there is no reason to be consistent about it now.

And my understanding of the pushback from Walter about renaming really has to do with avoiding breaking code for the sake of renaming. At this point (before setExtension has ever been released), it's "what is the best name". No code should be broken, the renaming objection shouldn't apply. I'm 100% in favor of not having both setExt and setExtension to mean different but similar things.

Just to clarify, it's still not too late to rename setExt.

And 'with' doesn't work with every possible updated version, we have to work around the quirks of English here.

I think just using different verbs/prepositions would work. For example, "asLowerCase".

But really, the egregious error is the slightly different yet identical names. It's like having setExt and set_ext mean different things. This also reminds me of std.regex vs. std.regexp. I never knew which one was the "new" version.

At least that was temporary. This is going to be set in stone once 2.068 rolls out.

Reply via email to