Mikrosofto malfermfonte la C++-norma biblioteko inkluzivita kun Visual Studio

En la konferenco CppCon 2019 okazanta ĉi tiuj tagoj, Microsoft anoncita pri malfermado de la kodo de lia efektivigo de la C++ Standard Library (STL, C++ Standard Library), kiu estas parto de la MSVC ilaro kaj la Visual Studio-disvolva medio. La biblioteko efektivigas ecojn priskribitajn en la nunaj C++14 kaj C++17-normoj, kaj ankaŭ evoluas al subteno por la estonta C++20-normo, sekvante ŝanĝojn en la nuna laborskizo. Kodo malfermi sub la permesilo Apache 2.0 kun esceptoj por binaraj dosieroj, kiuj solvas la problemon inkluzivi rultempajn bibliotekojn en la generitaj ruleblaj dosieroj.

La evoluo de ĉi tiu biblioteko en la estonteco estas planita esti efektivigita kiel malferma projekto evoluigita sur GitHub, akceptante tirpetojn de triaj programistoj kun korektoj kaj la efektivigo de novaj funkcioj (partopreno en evoluo postulas subskribon de CLA-interkonsento pri la translokigo. de proprietrajtoj al la transdonita kodo). Oni rimarkas, ke la translokigo de STL-disvolviĝo al GitHub helpos al Mikrosoftaj klientoj spuri la progreson de evoluo, eksperimenti kun la plej novaj ŝanĝoj kaj helpi revizii envenantajn petojn por aldoni novigojn.

Malferma fonto ankaŭ permesos al la komunumo uzi pretajn efektivigojn de funkcioj de la novaj normoj en aliaj projektoj. Ekzemple, la kodlicenco estas elektita por disponigi la kapablon kunhavigi kodon kun la biblioteko libc++ de la LLVM-projekto. STL kaj libc++ malsamas en la interna reprezentado de datumstrukturoj, sed se dezirite, libc++ programistoj povas porti funkciecon de intereso de STL (ekzemple, charconv) aŭ ambaŭ projektoj povas komune evoluigi kelkajn inventojn. La esceptoj aldonitaj al la Apache-licenco forigas la postulon citi la uzon de la origina produkto dum liverado de binaroj kompilitaj kun la STL al finuzantoj.

La ĉefaj celoj de la projekto inkluzivas plenan plenumon de specifpostuloj, certigante altan rendimenton, facilecon de uzo (sencimigaj iloj, diagnozoj, erardetekto) kaj kongruon ĉe la fontkoda nivelo kaj ABI kun antaŭaj eldonoj de Visual Studio 2015/2017. Inter la areoj, kiujn Microsoft ne interesiĝas pri disvolvi, estas porti al aliaj platformoj kaj aldoni ne-normajn etendaĵojn.

fonto: opennet.ru

Aldoni komenton