Я был разочарован необоснованностью stl-итераторов и искал что-то более пригодное для использования. В частности, концепция, которую легче сопоставлять и фильтровать, и другую, которая также легче реализовать: в основном, С#/python/ruby /все-но-С++-типы.
Я наткнулся на Андрея Александреску Итератор должен уйти! в майкоте boostcon 2009 года, в котором он описывает концепцию диапазона, которая в значительной степени именно то, что я ищу, и многое другое.
Кто-нибудь знает, действительно ли что-то подобное было реализовано? Я знаю о boost:: range, но это не идеальное решение; он реализуется с точки зрения итераторов (что более запутанно и сложно, менее эффективно, менее общее, и делает запись вашей собственной, по крайней мере, такой же грязной, как реализация итератора). Тем не менее, это лучше, чем ничего. Там что-нибудь лучше?
Изменить: было много дискуссий о том, почему это вообще привлекательно. На итерации более четко объясняет мотивацию. Я понимаю связь с D - но это не должно отвлекаться от самого аргумента.