std.algorithm imporvments

monarch_dodra monarchdodra at gmail.com
Wed Jul 18 08:50:20 PDT 2012


On Tuesday, 17 July 2012 at 17:19:31 UTC, Jonathan M Davis wrote:
> On Tuesday, July 17, 2012 10:47:50 Andrei Alexandrescu wrote:
>> On 7/17/12 4:41 AM, monarch_dodra wrote:
>> > On Monday, 16 July 2012 at 22:42:47 UTC, Andrei Alexandrescu
>> > 
>> > wrote:
>> >> Wow, this is awesome. Did you discover that by inspection 
>> >> or by
>> >> testing? I think a "malicious input range" would be a great 
>> >> tool for
>> >> assessing which algorithms fail on input ranges.
>> >> 
>> >> Andrei
>> > 
>> > The first I discovered testing with a "ConsumableRange",
>> > actually. The second, I found by inspection.
>> > 
>> > I'll correct those two issues myself, but I don't feel
>> > comfortable with the other issues.
>> 
>> You may want to submit them as bug requests. Thanks!
>
> Yes. Please do. It's on my todo list to improve std.algorithm 
> and std.range's
> tests (particularly for reference type ranges), and I've gotten 
> started on it,
> but it could take a while to get it all done, and anything that 
> you find will
> be valuable in not only figuring out what needs fixing but also 
> in figuring out
> what needs better testing.
>
> bugzilla: http://d.puremagic.com/issues
>
> - Jonathan M Davis

Hi Jonathan,

I've made changes to algorithm to the best of my abilities. If it 
does not meet requirements, please tell me what is wrong, and all 
work on it as I can. I've put an in-depth explanation of the 
changes in the pull request description.

Slightly on topic, did you read my post about "Definition of 
"OutputRange" insuficient""? Would it be OK to add "hasLength" to 
range.d? This would be the first step to making outputRanges more 
useable, without directly changing the definition of an output 
range quite yet.


More information about the Digitalmars-d mailing list