2019-09-19

MSVCのSTLがGitHubで公開

https://github.com/microsoft/STL

MSVCのSTLがGitHubで公開された。ライセンスはLLVM例外条項付きのApache 2.0。更に興味深いことに、今後のSTLの開発はGitHubに移行する予定だそうだ。マイクロソフトも変わったものだ。

C++のテンプレートの都合上、STLのソースコードはMSVCに付属していて、読むことは誰にでもできた。理論的には、MSのEULAに縛られない読み方もできたはずだ。例えばEULAに同意せずにMSVCを入手し、インストラーを実行せずに手動でアーカイブを展開すればソースコードを読むことはできたはずだ。もちろん、わざわざそんな手間をかけてまで不自由ソフトウェアのソースコードを読みたいとは思わないし、民事上のリスクも背負いたくない。

そのため、私がC++を教育するときは、MSVCの存在は単に無視していた。libstdc++とlibc++は自由ソフトウェアであるので、その実装も含めて教育することができるが、MSVCは不自由なので、リスク回避のためにソースコードを読むこともできずにいた。MSVCを無視するなという声に対しては、不自由ソフトウェアに時間を浪費したくはないし、仮に私が教えたいにしても 、マイクロソフトは教えたがらないようだという都合のいい言い訳が成り立っていた。しかし、今後はそういう言い訳は通用しないようだ。

1 comment:

said...

そんなことはないですよ
標準に準拠してないわけでしょ
そこはgccでも同じですよ