Microsoft Visual Studio бағдарламасымен қамтылған C++ стандартты кітапханасының бастапқы көзі ашық

Осы күндері өтіп жатқан CppCon 2019 конференциясында Microsoft жариялады MSVC құралдар жинағының және Visual Studio әзірлеу ортасының бөлігі болып табылатын C++ стандартты кітапханасының (STL, C++ стандартты кітапханасы) іске асыру кодын ашу туралы. Кітапхана ағымдағы C++14 және C++17 стандарттарында сипатталған мүмкіндіктерді жүзеге асырады, сонымен қатар ағымдағы жұмыс жобасындағы өзгерістерден кейін болашақ C++20 стандартын қолдауға қарай дамып келеді. Код ашық Apache 2.0 лицензиясы бойынша орындалатын орындалатын файлдарға орындау уақытының кітапханаларын қосу мәселесін шешетін екілік файлдарды қоспағанда.

Болашақта бұл кітапхананың дамуын GitHub-та әзірленген, түзетулермен және жаңа мүмкіндіктерді енгізумен үшінші тарап әзірлеушілерінен тарту сұрауларын қабылдайтын ашық жоба ретінде жүзеге асыру жоспарлануда (әзірлеуге қатысу тасымалдау туралы CLA келісіміне қол қоюды талап етеді. берілген кодқа меншік құқығы). STL әзірлеуін GitHub жүйесіне көшіру Microsoft тұтынушыларына әзірлеу барысын бақылауға, соңғы өзгерістермен тәжірибе жасауға және инновацияларды қосу үшін келіп түскен сұрауларды қарауға көмектесетіні атап өтілген.

Сондай-ақ ашық бастапқы код қауымдастыққа басқа жобаларда жаңа стандарттардағы мүмкіндіктердің дайын іске асыруларын пайдалануға мүмкіндік береді. Мысалы, код лицензиясы кодты кітапханамен ортақ пайдалану мүмкіндігін қамтамасыз ету үшін таңдалады libc++ LLVM жобасынан. STL және libc++ деректер құрылымдарының ішкі көрсетілімінде ерекшеленеді, бірақ қажет болса, libc++ әзірлеушілері STL-ден (мысалы, charconv) қызығушылық тудыратын функционалдық мүмкіндіктерін тасымалдай алады немесе екі жоба да кейбір инновацияларды бірлесіп әзірлей алады. Apache лицензиясына қосылған ерекшеліктер соңғы пайдаланушыларға STL-мен құрастырылған екілік файлдарды жеткізу кезінде бастапқы өнімді пайдалануды көрсету талабын жояды.

Жобаның негізгі мақсаттарына спецификация талаптарына толық сәйкестік, жоғары өнімділікті қамтамасыз ету, пайдаланудың қарапайымдылығы (отладтау құралдары, диагностика, қателерді анықтау) және бастапқы код деңгейінде үйлесімділік және Visual Studio 2015/2017 алдыңғы шығарылымдарымен ABI кіреді. Майкрософт әзірлеуге мүдделі емес салалардың арасында басқа платформаларға тасымалдау және стандартты емес кеңейтімдерді қосу бар.

Ақпарат көзі: opennet.ru

пікір қалдыру