Andrei used to!string() in an early example in TDPL for some line-by-line processing. I'm not sure of the advantages/disadvantages of to!type vs .dup.
On Sun, Aug 8, 2010 at 11:44 PM, bearophile <[email protected]>wrote: > Walter Bright: > > If you want to conclude that Python is better at processing files, you > need to > > show it using each language doing it a way well suited to that language, > rather > > than burdening one so it uses the same method as the less powerful one. > > byLine() yields a char[], so if you want to do most kinds of strings > processing or you want to store the line (or parts of it), you have to idup > it. So in this case Python is not significantly less powerful than D. > > You can of course use the raw char[], but then you lose the advantages > advertised when you have introduced the safer immutable D2 strings. And in > many situations you have to dup the char[] anyway, otherwise your have all > kinds of bugs, that Python lacks. In D1 to avoid it I used to use dup more > often than necessary. I have explained this in the bug 4474. > > In this newsgroup my purpose it to show D faults, suggest improvements, > etc. In this case my purpose was just to show that byLine()+idup is slow. > And you have to thankful for my benchmarks. In my dlibs1 for D1 I have a xio > module that reads files by line that is faster than iterating on a > BufferedFile, so it's not a limit of the language, it's Phobos that has a > performance bug that can be improved. > > Bye, > bearophile >
