www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Re: Proposal for std.path replacement

Lars T. Kyllingstad Wrote:

 On Sat, 05 Mar 2011 14:33:07 -0800, Jonathan M Davis wrote:
 
 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 kyllingen.NOSPAMnet> wrote in message
 news:ikofkc$322$1 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).

Interestingly, it seems drive names are actually restricted to one letter. See the last paragraph of this section: http://en.wikipedia.org/wiki/Drive_letter#Common_assignments -Lars

Drive names in AmigaOS are longer by default iirc. Anyway, Microsoft might someday depart from the idea of drive letters. Whether they might support longer names or just abandon drive identifiers altogether is of course insolubly unknown, but I think names are at least a more general concept than letters (so as not to lock ourselves in with a passing coherence).
Mar 06 2011