Microsoft は、Visual Studio に付属する C++ 標準ライブラリのコードを公開しました

最近開催されている CppCon 2019 カンファレンスで、マイクロソフトは 発表した 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 の互換性が含まれます。 Microsoft が開発に興味のない分野には、他のプラットフォームへの移植や非標準の拡張機能の追加などがあります。

出所: オープンネット.ru

コメントを追加します