Библиотека диапазонов, не основанная на итераторах C ++?

Я разочарован неудобством итераторов stl и ищу что-то более удобное. В частности, концепция, которую легче отображать и фильтровать, и которую проще реализовать: в основном перечисления в стиле C # / python / ruby ​​/ all-but-C ++.

Я наткнулся на Iterator от Андрея Александреску, который должен go! Лейтмотив boostcon 2009 года, в котором он описывает концепцию диапазона, которая в значительной степени является именно тем, что я ищу, и многое другое.

Кто-нибудь знает, было ли что-то подобное на самом деле реализовано? Я знаю boost :: range, но это не идеальное решение; он реализован в терминах итераторов (которые более запутаны и сложны, менее эффективны, менее общие и делают написание собственного, по крайней мере, таким же беспорядочным, как реализация итератора). Тем не менее, это лучше, чем ничего. Есть ли что-нибудь получше?

Edit: Было много дискуссий о том, почему это вообще привлекательно. На итерации более четко объясняет мотивацию. Я понимаю связь с D, но это не должно отвлекать от самого аргумента.

18
задан Eamon Nerbonne 31 December 2010 в 11:55
поделиться