Where Can I Find the C# Language Specification 6.0

2019-01-16 11:12发布

问题:

I know where to find the C# 5 Language Specification but I cannot find the C# 6 Language Specification anywhere.

Where is the C# 6 Language Specification?

回答1:

At time of writing (May 2016) Microsoft hasn't yet finished updating the spec for C#6. In the meantime, I put up Microsoft's latest current draft of the C#6 spec here: https://github.com/ljw1004/csharpspec/blob/gh-pages/README.md

This current draft is almost finished, save for a few remaining TODO comments and checking. (This version has been converted into github+markdown, but it also has links to download DOCX and PDF versions of the spec, and a link to download the grammar in ANTLR format).

For a complete list of all spec changes from C#5 to C#6, see the pull request: https://github.com/ljw1004/csharpspec/pull/1/files

(Why hasn't Microsoft yet got around to officially releasing the C#6 spec? because of work in progress to align with ECMA, which of course takes time; it seemed a shame to expend effort on a release of the C#6 spec now only to have a subsequent version of the C#6 spec come out later after alignment with ECMA).



回答2:

There aren't specification for C# 6.0 at the same level there used to be for previous versions.

The closest thing is the design notes for Roslyn on CodePlex (and moving forward on GitHub).

Here's a list of the C# features:

https://roslyn.codeplex.com/wikipage?title=Language%20Feature%20Status&referringTitle=Documentation

And here are the notes for the null-propagating operator for example:

https://roslyn.codeplex.com/discussions/540883


Since the language design team moved to GitHub you can continue following the Design Notes filter on the Roslyn repository to see C# 7.0 coming into existence:

https://github.com/dotnet/roslyn/labels/Design%20Notes



回答3:

The latest draft of the C# 6 specification is at https://github.com/dotnet/csharplang/blob/master/spec/README.md