Naming things

Vladimir Panteleev via Digitalmars-d digitalmars-d at puremagic.com
Sat Jun 20 12:38:07 PDT 2015


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.


More information about the Digitalmars-d mailing list