Eric Niebler did a very interesting discussion targeting Range proposals for C++17.

I think it would be great inspiration for future improvements on D ranges:

The shortcomings of classical C++ (begin, end) ranges: http://ericniebler.com/2014/02/16/delimited-ranges/

The shortcomings of infinite ranges represented by (begin, end) ranges: http://ericniebler.com/2014/02/18/infinite-ranges/

Fixing ranges by allowing begin type to be different from end type, allowing Sentinel Ranges: http://ericniebler.com/2014/02/21/introducing-iterables/

Making this new Range (called by the author as Iterable) capable of dealing with infinite ranges: http://ericniebler.com/2014/02/27/ranges-infinity-and-beyond/

How this discussion touches D ranges design decisions?

Reply via email to