Microsoft va obtenir la biblioteca estàndard C++ inclosa amb Visual Studio

A la conferència CppCon 2019 que té lloc aquests dies, Microsoft va anunciar sobre l'obertura del codi de la seva implementació de la biblioteca estàndard de C++ (STL, biblioteca estàndard de C++), que forma part del conjunt d'eines MSVC i de l'entorn de desenvolupament de Visual Studio. La biblioteca implementa les característiques descrites als estàndards C++14 i C++17 actuals, i també està evolucionant cap al suport per al futur estàndard C++20, després dels canvis en l'esborrany de treball actual. Codi obert sota la llicència Apache 2.0 amb excepcions per als fitxers binaris que resolen el problema d'incloure biblioteques en temps d'execució als fitxers executables generats.

El desenvolupament d'aquesta biblioteca en el futur està previst que es dugui a terme com un projecte obert desenvolupat a GitHub, acceptant sol·licituds d'extracció de desenvolupadors de tercers amb correccions i la implementació de noves característiques (la participació en el desenvolupament requereix la signatura d'un acord CLA sobre la transferència). dels drets de propietat del codi transferit). Cal assenyalar que la transferència del desenvolupament STL a GitHub ajudarà els clients de Microsoft a fer un seguiment del progrés del desenvolupament, experimentar amb els darrers canvis i ajudar a revisar les sol·licituds entrants per afegir innovacions.

El codi obert també permetrà a la comunitat utilitzar implementacions ja fetes de característiques dels nous estàndards en altres projectes. Per exemple, la llicència de codi s'escull per oferir la possibilitat de compartir codi amb la biblioteca libc++ del projecte LLVM. STL i libc++ difereixen en la representació interna de les estructures de dades, però si ho desitgen, els desenvolupadors de libc++ poden portar la funcionalitat d'interès des de STL (per exemple, charconv) o tots dos projectes poden desenvolupar conjuntament algunes innovacions. Les excepcions afegides a la llicència d'Apache eliminen el requisit de citar l'ús del producte original quan s'entreguen binaris compilats amb l'STL als usuaris finals.

Els objectius clau del projecte inclouen el compliment total dels requisits d'especificació, assegurant un alt rendiment, facilitat d'ús (eines de depuració, diagnòstic, detecció d'errors) i compatibilitat a nivell de codi font i ABI amb versions anteriors de Visual Studio 2015/2017. Entre les àrees que a Microsoft no li interessa desenvolupar es troben portar a altres plataformes i afegir extensions no estàndard.

Font: opennet.ru

Afegeix comentari