2016年08月17日

C#6.0 の言語仕様はどこにある?

VisualStudio2015が正式リリースされたのが昨夏。同時にC#の言語仕様も6.0版に上りました。

追加になった機能や文法は各所で紹介されてはいますが、マイクロソフトからの公式な仕様はどこにあるんでしょうか、探してみましたが見つかりません。

VisualStudio2015をインストールすると言語仕様が記載されたドキュメントも併せてインスコされます。デフォルトの設定だったら以下になります。

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC#\Specifications\1041\CSharp Language Specification.docx

開いてみれば分かりますが、これC#5.0の旧仕様。

MSDNを探すとポータルはここ。
https://msdn.microsoft.com/ja-jp/library/ms228593.aspx

読んでみるとダウンロードできるというのでリンクをだとるとここ。
https://www.microsoft.com/en-us/download/details.aspx?id=7029

ここも6.0ではなくて5.0のまま。他もいろいろ探しても見つかりません。

関連ありそうなのがこれ、動画での説明(英語)で「What's new in C#6.0」というもの
https://channel9.msdn.com/Series/ConnectOn-Demand/211

もう一つがMSDNのブログの記事(英語)
https://blogs.msdn.microsoft.com/csharpfaq/2014/11/20/new-features-in-c-6/
ただし、正式版ではなくプレビュー版の説明なので、採用予定だったが不採用となった機能なども紹介されているので要注意。

非公式のものはGitHubにありました(英語)。
https://github.com/ljw1004/csharpspec/blob/gh-pages/README.md

ちょっと引用します。
Microsoft has not yet released an official copy of the C#6 spec. This is an unofficial draft. When Microsoft does release its official copy, before end 2016 at the latest, then this current repository will be deleted. That's because I wouldn't want to have two copies of the C#6 spec floating around.

「この原稿は非公式版です。マイクロソフト社から公式の言語仕様が発表されたらスグ削除する予定。だって2つも要らないでしょ。」とありますが、削除されてないってことは、やはり公式の言語仕様は未発表なんですかね。

大きな変更はなくて、便利機能追加だったとしても公式の言語仕様は必要だと思うんだけど。
posted by RR at 01:35 | Comment(0) | 規約・参考サイト | このブログの読者になる | 更新情報をチェックする