GSoC-2011 project:: Containers
Lutger Blijdestijn
lutger.blijdestijn at gmail.com
Sat Mar 26 08:33:44 PDT 2011
Ishan Thilina wrote:
> @ steve & Johannes: Yeah, it works for me now :). I informed the site
> owners about this and he has rectified it :)
>
> @Denis:
>
>>You are right, indeed. To say it shortly, ranges are D's version of
>>iterators or
> generators, especially powerful and general. With its own set of issues
> (somewhat
>>complicated, rather opaque types, various bugs remaining), but globally
>>extremely
> useful and usable. Most of Phobos2 (the std lib) builds on ranges; this
> applies even >more to collections: if you wish to implement new
> collections for D, it is certainly required that they hold range factories
> for iteration. Sometimes, more than one (eg >tree traversal breadth-first
> vs depth-first, leaves only...).
>>
>>About D collections: aside std.container in Phobos, Steven Schweighoffer
>>has a
> fairly advanced project called dcollections:
> http://www.dsource.org/projects>/dcollections. As I understand it, it is a
> bit of a concurrent for std.container, but there seems to be a possibility
> for them to converge in the future. In >any case, >you should definitely
> study it, if only to take inspiration and avoid double work.
>>
>>Use the D learn mailing list to ask people for help in understanding D's
>>more
> advanced features and issues.
>>
>>Denis
>>--
>
> Thank you very much for that helpful answer.
> The biggest challenge now i have is to find good resources to learn about
> ranges. Any suggestions ?
Boostcon 2009 talk 'iterators must go' also recommended:
http://blip.tv/file/2432106
The docs and sourcecode of std.range and std.algorithm is most relevant
though, and this newsgroup or .learn for discussion and questions.
> I'll look at the dcollections. I didn't know such a thing existed. It will
> be a great help for me :).
More information about the Digitalmars-d
mailing list