Существуют ли какие-либо языковые препятствия C ++, которые мешают переходу на D-диапазоны?

Это перекрестный вопрос C ++ / D.D язык программирования имеетдиапазоны что в отличие от библиотек C ++, таких какBoost.Range- не основаны на парах итераторов. ОфициальныйC ++ Ranges Study Group кажется, увязли в гвоздях технической спецификации.

Вопрос: есть ли у нынешнего C ++ 11 или будущего стандарта C ++ 14 какие-либо препятствия, мешающие внедрению диапазонов D, а также версии с соответствующим диапазоном<algorithm>- оптовая?

Я не знаю D или его диапазонов достаточно хорошо, но они кажутся ленивыми и сочетаемыми, а также способны предоставить расширенный набор алгоритмов STL. Учитывая их претензию на успех для D, было бы очень неплохо иметь библиотеку для C ++. Интересно, насколько важны уникальные функции D (например, строковые миксины, унифицированный синтаксис вызова функций) для реализации его диапазонов и может ли C ++ имитировать это без особых усилий (например, C ++ 14constexpr похоже, очень похоже на оценку функции времени компиляции D)

Примечание: я ищу технические ответы, а не мнения о том, подходят ли диапазоны D в качестве библиотеки C ++.

Ответы на вопрос(2)

Ваш ответ на вопрос