std.uni.toLowerCase / .toUpperCase

Tofu Ninja via Digitalmars-d digitalmars-d at puremagic.com
Tue Jun 23 16:27:26 PDT 2015


On Tuesday, 23 June 2015 at 23:17:54 UTC, Meta wrote:
> On Tuesday, 23 June 2015 at 22:58:32 UTC, Vladimir Panteleev 
> wrote:
>> On Tuesday, 23 June 2015 at 22:45:10 UTC, Vladimir Panteleev 
>> wrote:
>>> A rename can be proposed by creating a subthread: [...]
>>
>> Rationale:
>>
>> As with setExt, std.uni already contains functions called 
>> toLower/toUpper, thus the only difference in name is that the 
>> implied word "Case" is omitted. The distinction is not 
>> memorable.
>>
>> Proposed new name: lowerCased / upperCased
>
> I really hate this naming scheme for functions that take lazy 
> parameters. I still don't see why we don't do the (IMO) 
> simplest and most intuitive thing and name them lazyToLower / 
> lazyToUpper (or toLowerLazy / toUpperLazy). There is precedent 
> with C#'s handling of async functions; for example, 
> AccessTheWebAsync or GetStringAsync[1]. Your proposed naming 
> scheme seems like it's trying to be too "clever" and really 
> just ends up causing unnecessary confusion. This is not Ruby.
> [1]https://msdn.microsoft.com/en-us/library/hh191443.aspx

Yes please! If I didn't know what they were replacing, I would 
have no idea what withExtension, lowerCased, or upperCased meant 
at all. They hardly seem better than what they are replacing. 
Just do setExtensionLazy / toLowerLazy / toUpperLazy. It is much 
simpler and clearer.


More information about the Digitalmars-d mailing list