GSoC-2011 project:: Containers

Fawzi Mohamed fawzi at gmx.ch
Tue Mar 29 13:55:17 PDT 2011


On 29-mar-11, at 21:32, spir wrote:

> On 03/29/2011 08:34 PM, Ishan Thilina wrote:
>>> I can try to answer your questions, but I have not applied to be an
>>> official mentor.  Just want to make that clear.
>>>
>>> My previous message was "I would be a mentor for this, but  
>>> (reasons why I
>>> will not)"
>>>
>>> Sorry if that is not what you read.
>>>
>>> -Steve
>>
>> That's ok, You have given me enough encouragement to carry on this  
>> project. :-)
>>
>> ---------------------------------
>>
>> The project idea page gives only a brief introduction to the  
>> project. From the
>> ongoing conversation in this mailing list I feel that different  
>> people different
>> expectations from this project. But it is hard to make everyone  
>> happy. (Me my self
>> being new to will need more time to get familiar with the advanced  
>> concepts of D.)
>> So I want to know what are the containers that you hope me to  
>> implement in phobos?
>
> I have in mind a general Tree & Node, or TreeNode idea; especially  
> implementing all common tree traversal schemes (including leaves  
> only) and the background mechanisms to insert/remove/change given  
> nodes and search/count/replace given values. It may not be used as  
> is --because various tree kinds actually are very different-- but  
> could be highly useful, I guess, either as template or as supertype  
> to be derived from.
> Comments? (I would probably do it anyway.)

I would very much like to have also persistent containers.
I have implemented a Batched array for example in D1, which can grow  
on one side, and one can have persistent slices, and pointers to  
elements that remain fixed.
For structures that just grow and multithreaded programming without  
(or with very limited) locking these structures are very useful.
Also variations of those presented in Purely Functional Data  
Structures of Chris Okasaki, would be nice to have.

Fawzi



More information about the Digitalmars-d mailing list