BinaryHeap is a range so it goes in std.range. Agree?

Walter Bright newshound1 at digitalmars.com
Wed Jun 9 12:48:38 PDT 2010


Andrei Alexandrescu wrote:
> On 06/09/2010 07:57 AM, Michel Fortin wrote:
>> On 2010-06-08 17:41:22 -0400, "Simen kjaeraas" <simen.kjaras at gmail.com>
>> said:
>>
>>> Now, my favorite way of dealing with this: Where would I look for a
>>> binary heap if I wanted one? I would think of it as a container, and 
>>> thus
>>> check std.container. If it was not there, I would use the search 
>>> function
>>> to find it. I can invent reasons, but it's mostly grounded in learned
>>> names and categories.
>>
>> And if you were accustomed to the STL, you'd just look for a binary heap
>> header to include instead of trying to philosophize about which category
>> of things it fits best. That's why I suggested "std.binaryheap" earlier.
>> (Could be "std.binheap" if you want it short.)
> 
> I don't think this will scale. There are quite a few data structures out 
> there, I'm afraid we'll have too many modules too soon.

One solution is to have std.container consist of the following:

public import std.containers.binaryheap;
public import std.containers.redblacktree;
...



More information about the Digitalmars-d mailing list