So dove trovare la specifica del linguaggio C # 5 ma non riesco a trovare la specifica del linguaggio C # 6 da nessuna parte.
Dov'è la specifica del linguaggio C # 6 ?
So dove trovare la specifica del linguaggio C # 5 ma non riesco a trovare la specifica del linguaggio C # 6 da nessuna parte.
Dov'è la specifica del linguaggio C # 6 ?
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC#\Specifications\1033\CSharp Language Specification.docx
(dove si 14.0
riferisce a VS2015) è solo una copia della vecchia specifica C # 5, non una nuova specifica che riflette la "realtà" di VS2015 e C # 6.
Risposte:
Al momento della scrittura (maggio 2016) Microsoft non ha ancora terminato l'aggiornamento delle specifiche per C # 6. Nel frattempo, ho pubblicato l'ultima bozza corrente di Microsoft delle specifiche C # 6 qui: https://github.com/ljw1004/csharpspec/blob/gh-pages/README.md
Questa bozza attuale è quasi finita, salvo per alcuni commenti e controlli da fare. (Questa versione è stata convertita in github + markdown, ma ha anche collegamenti per scaricare versioni DOCX e PDF della specifica e un collegamento per scaricare la grammatica in formato ANTLR).
Per un elenco completo di tutte le modifiche alle specifiche da C # 5 a C # 6, vedere la richiesta pull: https://github.com/ljw1004/csharpspec/pull/1/files
(Perché Microsoft non è ancora riuscita a rilasciare ufficialmente la specifica C # 6? A causa del lavoro in corso per allinearsi con ECMA, che ovviamente richiede tempo; sembrava un peccato spendere sforzi per una versione della specifica C # 6 ora solo per avere una versione successiva della specifica C # 6 che verrà rilasciata più tardi dopo l'allineamento con ECMA).
when
parola chiave? Ho trovato solo frammenti e si tratta più del filtro delle eccezioni come argomento generale piuttosto che dei dettagli sulla parola chiave.
Non esistono specifiche per C # 6.0 allo stesso livello di una volta per le versioni precedenti.
La cosa più vicina sono le note di progettazione per Roslyn su CodePlex (e andando avanti su GitHub).
Ecco un elenco delle funzionalità di C #:
https://roslyn.codeplex.com/wikipage?title=Language%20Feature%20Status&referringTitle=Documentation
Ed ecco le note per l'operatore di propagazione null, ad esempio:
https://roslyn.codeplex.com/discussions/540883
Poiché il team di progettazione del linguaggio si è trasferito su GitHub, è possibile continuare a seguire il filtro Design Notes nel repository Roslyn per vedere la creazione di C # 7.0:
L'ultima bozza della specifica C # 6 è su https://github.com/dotnet/csharplang/blob/master/spec/README.md