Это вопрос пересечения С++/D. Язык D имеет диапазоны, которые, в отличие от С++ библиотеки, такие как Boost.Range - не основаны на парах итератора. Официальная Исследовательская группа по диапазонам С++, похоже, увязла в решении технических проблем.
Вопрос: имеет ли текущий С++ 11 или предстоящий стандарт С++ 14 какие-либо препятствия, препятствующие использованию диапазонов D, а также подходящую версию <algorithm>
- оптовой?
Я не знаю D или его диапазоны достаточно хорошо, но они кажутся ленивыми и сложными, а также способны обеспечить надмножество алгоритмов STL. Учитывая их претензию на успех для D, было бы неплохо иметь библиотеку для С++. Интересно, насколько важны D уникальные функции (например, строковые миксины, синтаксис единообразных функций) для реализации его диапазонов и может ли С++ имитировать это без особых усилий (например, С++ 14 constexpr
кажется весьма похожим на время компиляции D функция оценки)
Примечание. Я ищу технические ответы, а не мнения о том, соответствуют ли диапазоны D правильному дизайну как библиотека С++.