On 04/26/2010 01:10 PM, Ellery Newcomer wrote:
Andrei Alexandrescu<and...@...>  writes:


I looked at the design. It is very solid and elegant, but I suggest we
save it for a different opportunity. Scenarios in which code running on
a platform yet needs extensive functionality for the other are a tad
tenuous.


Part of the point of the path manipulation routines in dmdz.d was to get around
the fact that dmd/windows doesn't have posix path manipulation. Another part was
to convert from one to the other. I don't think such scenarios are tenuous at
all. As far as abstractions are concerned, though, no idea.

I see. But since zip files work on both Windows and Unix, there must be a common ground of functionality that works for both. I'm hoping to insist on that instead of enacting a schism. After the schism, widening the incompatibilities will become the path of least resistance.

ps Lars, what do you think of my path2list (splits a path into an array [range?]
of the path elements) and its inverse? It looks like it could be implemented
very cleanly in your rewrite.

I suggest we go with lazy ranges throughout. No memory allocation unless the user asks for it by calling std.array.array(range). For example, splitter() vs. split() was a huge accelerator in virtually all my text processing programs.


Andrei
_______________________________________________
phobos mailing list
[email protected]
http://lists.puremagic.com/mailman/listinfo/phobos

Reply via email to