Improving CSV parsing performance, Episode 2 (Was: Re: Speed of csvReader)
Jesse Phillips via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Tue Jan 26 10:56:24 PST 2016
On Tuesday, 26 January 2016 at 06:27:49 UTC, H. S. Teoh wrote:
> On Sun, Jan 24, 2016 at 06:07:41AM +0000, Jesse Phillips via
> Digitalmars-d-learn wrote: [...]
>> My suggestion is to take the unittests used in std.csv and try
>> to get your code working with them. As fastcsv limitations
>> would prevent replacing the std.csv implementation the API may
>> not need to match, but keeping close to the same would be best.
>
> My thought is to integrate the fastcsv code into std.csv, such
> that the current std.csv code will serve as fallback in the
> cases where fastcsv's limitations would prevent it from being
> used, with fastcsv being chosen where possible.
That is why I suggested starting with the unittests. I don't
expect the implementations to share much code, std.csv is written
to only use front, popFront, and empty. Most of the work is done
in csvNextToken so it might be able to take advantage of
random-access ranges for more performance. I just think the
unittests will help to define where switching algorthims will be
required since they exercise a good portion of the API.
More information about the Digitalmars-d-learn
mailing list