Microsoft открыл код стандартной библиотеки С++, поставляемой в Visual Studio

Материал из Викиновостей, свободного источника новостей

17 сентября 2019 года

На проходящей в эти дни конференции CppCon 2019 компания Microsoft объявила об открытии кода своей реализации стандартной библиотеки С++ (STL, C++ Standard Library), входящей в состав инструментария MSVC и среды разработки Visual Studio. Библиотека реализует возможности, описанные в актуальных стандартах C++14 и C++17, а также развивается в направлении поддержки будущего стандарта C++20, следуя за изменениями в текущем рабочем черновике. Код открыт под лицензией Apache 2.0 с исключениями для бинарных файлов, решающими проблему с включением runtime-библиотек в состав формируемых исполняемых файлов.

Разработку данной библиотеки в дальнейшем планируется вести как развиваемый на GitHub открытый проект, принимающий от сторонних разработчиков pull-запросы с исправлениями и реализацией новых возможностей (для участия в разработке требуется подписание CLA-соглашения о передаче имущественных прав на передаваемый код). Отмечается, что перевод разработки STL на GitHub поможет клиентам Microsoft отслеживать ход разработки, экспериментировать с самими свежими изменениями и помогать рецензировать поступающие запросы на добавление новшеств.

Открытие кода также позволит сообществу использовать в других проектах готовые реализации возможностей из новых стандартов. Например, лицензия на код выбрана таким образом, чтобы предоставить возможность обмениваться кодом с библиотекой libc++ от проекта LLVM. STL и libc++ отличаются внутренним представлением структур данных, но при желании разработчики libc++ могут портировать интересующую функциональность из STL (например, charconv) или оба проекта совместно смогут развивать какие-то новшества. Добавленные в лицензию Apache исключения отменяют требования по упоминанию использования исходного продукта при поставке конечным пользователям бинарных файлов, скомпилированных с STL.

Из ключевых целей проекта называется полное соответствие требованиям спецификаций, обеспечение высокой производительности, удобство использования (средства отладки, диагностики, выявления ошибок) и совместимость на уровне исходных текстов и ABI c прошлыми выпусками Visual Studio 2015/2017. Среди областей, которые Microsoft не заинтересована развивать, отмечаются портирование на другие платформы и добавление нестандартных расширений.

Источники[править]


Creative Commons
Creative Commons
Эта статья содержит материалы из статьи «Microsoft открыл код стандартной библиотеки С++, поставляемой в Visual Studio», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии[править]

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.