Proposal for std.path replacement

Jonathan M Davis jmdavisProg at gmx.com
Sat Mar 5 14:33:07 PST 2011


On Saturday 05 March 2011 08:32:55 Lars T. Kyllingstad wrote:
> On Fri, 04 Mar 2011 08:14:44 -0500, Nick Sabalausky wrote:
> > "Lars T. Kyllingstad" <public at kyllingen.NOSPAMnet> wrote in message
> > news:ikofkc$322$1 at digitalmars.com...
> > 
> >> As mentioned in the "std.path.getName(): Screwy by design?" thread, I
> >> started working on a rewrite of std.path a long time ago, but I got
> >> sidetracked by other things.  The recent discussion got me working on
> >> it again, and it turned out there wasn't that much left to be done.
> >> 
> >> So here it is, please comment:
> >>    http://kyllingen.net/code/ltk/doc/path.html
> >>    https://github.com/kyllingstad/ltk/blob/master/ltk/path.d
> > 
> > I don't want to jinx it, but there seems to be a lot of agreement in
> > this thread. Seriously, how often does that happen around here? :)
> 
> Not too often, so I take it as a good sign that I'm onto something. ;)
> 
> The only disagreement seems to be about the naming, so let's have a round
> of voting.  Here are a few alternatives for each function.  Please say
> which ones you prefer.
> 
>  * dirSeparator, dirSep, sep

dirSep and pathSep. Having Separator in the name is unnecessarily long.

>  * currentDirSymbol, currentDirSym, curDirSymbol

currDirSym and parentDirSym (and currDirSymbol and parentDirSymbol if 
abbreviating both current and symbol is too much). Shorter but still quite 
clear.

I would _definitely_ use two r's when abbreviating current though, since current 
has two r's. I confess that it' a major pet peeve of mine when I see current 
abbreviate with one r. It feels like it's being spelled wrong, since current has 
two r's.

>  * basename, baseName, filename, fileName

baseName

>  * dirname, dirName, directory, getDir, getDirName

dirName

>  * drivename, driveName, drive, getDrive, getDriveName

driveLetter would probably be better actually - though it _could_ be more than 
one letter if someone has an insane number of drives (it's usually referred to 
as a drive letter though). Barring that, drive would be fine (as long as it's a 
property).

>  * extension, ext, getExt, getExtension
>  * stripExtension, stripExt
> 
> (The same convention will be used for stripExtension, replaceExtension
> and defaultExtension.)

I'm a bit torn between extension and ext  -I'd like ext but am afraid it's a bit 
too short for clarity. However, I _do_ think that all of the names which use 
Extension as a prefix should use Ext instead. It's much shorter and still quite 
clear.

- Jonathan M Davis


More information about the Digitalmars-d mailing list