On Thu, 06 May 2010 19:01:04 +0200, Philippe Sigaud wrote: > On Thu, May 6, 2010 at 18:24, Ali Çehreli <[email protected]> wrote: > >> Ali Çehreli wrote: >> >>> new to d wrote: >>> >>>> Is there any function in phobos that does something like that: >>>> >>>> auto a = [[1,2],[3,4]]; >>>> assert(equals(flatten(a), [1,2,3,4])); >>>> >>>> I am just learning D and ca't find anything like that in the docs. >>>> >>>> > I've this in a dsource project: > > http://svn.dsource.org/projects/dranges/trunk/docs/range2.html (look for > flatten or concat). It's a lazy range. Flatten depends on a template for > wrapping code, present in the traits2 module. > > http://www.dsource.org/projects/dranges/browser/trunk/range2.d > http://www.dsource.org/projects/dranges/browser/trunk/traits2.d > > Hmm, this is waiting for quite an update. I've lots of thing for > producing/mapping/filtering... ranges of ranges while conserving their > topology/rank. > If you find anything useful for you in this project, tell me!
These are great! Thank you. Coming from some of the languages that you cite as inspirations, I found the limited set of range HOFs in D2 to be really unfortunate. Your project fills the gap! Best, Graham
