Рабочая группа комитета по стандартам языка программирования C++ выдвинула предложение о дальнейшем развитии языка, сделав упор на простоту и безопасность в ущерб обратной совместимости и совместимости на уровне двоичного кода. Все это порождает дополнительные вопросы в отношении того, не появятся ли в результате у языка различные ответвления.
В опубликованном 2 марта документе в качестве основных целей и приоритетов дальнейшего развития C++ называются простота написания и чтения программного кода, а также быстрота и масштабируемость разработки. Авторы уверены, что в мире существует потребность в C++ как в высокопроизводительном языке. А вот прямая и обратная совместимость, равно как и устойчивость двоичного интерфейса приложений (application binary interface, ABI) языка и его библиотек к основным целям не относятся.
Авторы документа намерены позаботиться об эффективности разработки и производительности исполняемой среды. Что же касается прямой и обратной совместимости, по их мнению, необходимо обеспечивать возможность перехода от одной версии C++ к другой, а не их совместимость. Такие предпочтения объясняются опытом эволюции программного обеспечения и стремлением двигаться только вперед. Поддержка унаследованных моделей компиляции и компоновки также не относятся к числу приоритетов. Ради достижения своих главных целей авторы в любой момент готовы все это поменять.
Кроме того, предпочтение отдается более совершенным, специализированным технологиям декомпозиции программных подсистем, а не стабильности ABI в различных версиях языка и библиотек. «Наш опыт говорит о том, что обеспечение устойчивости на уровне ABI для высокоуровневых конструкций создает излишнюю постоянную и существенную нагрузку в ходе проектирования, – утверждается в документе. – И это становится препятствием для эволюции, которая и является одной из заявленных целей».
Некоторые программисты, пишущие на C++, назвали выдвинутые предложения интересными, добавив при этом, что не удивятся, если «се закончится появлением различных ответвлений языка.
Авторы документа сочли необходимым подчеркнуть, что выдвинутые ими предложения ориентированы на их собственные сценарии использования и могут не подойти абсолютно всем пользователям. Группа из 17 авторов, представляющих различные организации, в том числе компании Google и Nvidia, подчеркнула, что не призывает к достижению консенсуса. Документ опубликован на сайте open-standard.org, где находятся веб-страницы организаций ISO и Standard C++ Foundation, курирующих дальнейшее развитие C++.