{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/2136","labels_url":"https://api.github.com/repos/dotnet/roslyn/issues/2136/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/roslyn/issues/2136/comments","events_url":"https://api.github.com/repos/dotnet/roslyn/issues/2136/events","html_url":"https://github.com/dotnet/roslyn/issues/2136","id":69710181,"number":2136,"title":"C# 7 Work List of Features","user":{"login":"MadsTorgersen","id":6677272,"avatar_url":"https://avatars.githubusercontent.com/u/6677272?v=3","gravatar_id":"","url":"https://api.github.com/users/MadsTorgersen","html_url":"https://github.com/MadsTorgersen","followers_url":"https://api.github.com/users/MadsTorgersen/followers","following_url":"https://api.github.com/users/MadsTorgersen/following{/other_user}","gists_url":"https://api.github.com/users/MadsTorgersen/gists{/gist_id}","starred_url":"https://api.github.com/users/MadsTorgersen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MadsTorgersen/subscriptions","organizations_url":"https://api.github.com/users/MadsTorgersen/orgs","repos_url":"https://api.github.com/users/MadsTorgersen/repos","events_url":"https://api.github.com/users/MadsTorgersen/events{/privacy}","received_events_url":"https://api.github.com/users/MadsTorgersen/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/dotnet/roslyn/labels/Area-Language%20Design","name":"Area-Language Design","color":"5319e7"},{"url":"https://api.github.com/repos/dotnet/roslyn/labels/Design%20Notes","name":"Design Notes","color":"fc2929"},{"url":"https://api.github.com/repos/dotnet/roslyn/labels/Language-C%23","name":"Language-C#","color":"207de5"},{"url":"https://api.github.com/repos/dotnet/roslyn/labels/Language-VB","name":"Language-VB","color":"207de5"}],"state":"open","locked":false,"assignee":{"login":"MadsTorgersen","id":6677272,"avatar_url":"https://avatars.githubusercontent.com/u/6677272?v=3","gravatar_id":"","url":"https://api.github.com/users/MadsTorgersen","html_url":"https://github.com/MadsTorgersen","followers_url":"https://api.github.com/users/MadsTorgersen/followers","following_url":"https://api.github.com/users/MadsTorgersen/following{/other_user}","gists_url":"https://api.github.com/users/MadsTorgersen/gists{/gist_id}","starred_url":"https://api.github.com/users/MadsTorgersen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MadsTorgersen/subscriptions","organizations_url":"https://api.github.com/users/MadsTorgersen/orgs","repos_url":"https://api.github.com/users/MadsTorgersen/repos","events_url":"https://api.github.com/users/MadsTorgersen/events{/privacy}","received_events_url":"https://api.github.com/users/MadsTorgersen/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/dotnet/roslyn/milestones/8","html_url":"https://github.com/dotnet/roslyn/milestones/C%23%207%20and%20VB%2015","labels_url":"https://api.github.com/repos/dotnet/roslyn/milestones/8/labels","id":962632,"number":8,"title":"C# 7 and VB 15","description":"\r\n\r\n<!---\r\n@huboard:{\"order\":0.375}\r\n-->\r\n","creator":{"login":"gafter","id":3804346,"avatar_url":"https://avatars.githubusercontent.com/u/3804346?v=3","gravatar_id":"","url":"https://api.github.com/users/gafter","html_url":"https://github.com/gafter","followers_url":"https://api.github.com/users/gafter/followers","following_url":"https://api.github.com/users/gafter/following{/other_user}","gists_url":"https://api.github.com/users/gafter/gists{/gist_id}","starred_url":"https://api.github.com/users/gafter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gafter/subscriptions","organizations_url":"https://api.github.com/users/gafter/orgs","repos_url":"https://api.github.com/users/gafter/repos","events_url":"https://api.github.com/users/gafter/events{/privacy}","received_events_url":"https://api.github.com/users/gafter/received_events","type":"User","site_admin":false},"open_issues":62,"closed_issues":11,"state":"open","created_at":"2015-02-02T23:41:34Z","updated_at":"2015-11-10T19:01:08Z","due_on":null,"closed_at":null},"comments":159,"created_at":"2015-04-21T00:21:05Z","updated_at":"2015-11-12T01:43:01Z","closed_at":null,"body":"This is a list of features we have looked at for C# 7, roughly categorized according to our current level of interest and estimated plausibility.\r\n\r\nPlease don't infer anything about the final shape of C# 7 (or future versions). The list is a tracking mechanism for work, not a description of the outcome. We have a long way to go yet!\r\n\r\nEach bucket is in no particular order. I'll try to think of a more systematic way of cross-referencing with proposals and notes, but wanted to get the list out there.\r\n\r\nI'll keep the list updated as we look at more feature ideas and change our minds about the relative importance.\r\n\r\n\r\n\r\nStrong interest\r\n===============\r\n\r\n* Tuples (Proposal: #347)\r\n* Pattern matching (Proposal: #206)\r\n* Records / algebraic data types (Proposal: #206)\r\n* Nullability tracking (Proposal: #227)\r\n* Async streams and disposal (Proposals: #114, #261)\r\n* Strongly typed access to wire formats (See #3910)\r\n\r\n\r\nSome interest\r\n=============\r\n\r\n* Covariant return types (Proposal: #357)\r\n* More support for expression trees (statements, more expressions) (Proposal: #2060)\r\n* Syntax for lists\r\n* Syntax for dictionaries\r\n* Serialization and data binding support for records (see #1303)\r\n* Deterministic disposal (Proposal: #161)\r\n* Immutable types (Proposal: #159)\r\n* Type providers\r\n* Existing or other ways of adding attributes (cross-assembly?)\r\n* Scripting features back into mainline language\r\n* Ref locals and ref returns (Proposal: #118)\r\n* readonly parameters and locals (Proposal: #115)\r\n* Attributes on lambdas (Proposal: #117)\r\n* Method contracts (requires and ensures) (Proposal: #119)\r\n* Extension members (#112 et al)\r\n* Compile-time attributes (ability to disappear in IL or at runtime. Could be more expressive)\r\n* Attributes in more places (persistable and non-)\r\n* Supersedes\r\n* Object initializers for immutable objects (#229)\r\n* Local functions (#259)\r\n\r\n\r\nSmall but useful\r\n================\r\n\r\n* Allow extension methods in non-static classes\r\n* More betterness (generic constraints, static vs instance) (Proposal: #250)\r\n* params IEnumerable / varargs (Proposal #36 and #37)\r\n* Binary literals (Proposal: #215)\r\n* Digit separators (Proposal: #216)\r\n\r\n\r\n\r\nInteresting but require CLR support\r\n===================================\r\n\r\n* Additional generic constraints (some may not need CLR) (see also #129, #154, #158, #262).\r\n* interfaces that can only be implemented internally\r\n* default implementations in interfaces (see #73, #258)\r\n* Array slicing syntax (Proposal: #120)\r\n* Static interface members\r\n\r\nSee also #420.\r\n\r\n\r\n\r\nProbably not this time\r\n======================\r\n\r\n* \"Metaprogramming\"\r\n* Hooks on object initializers\r\n* Safe fixed-size buffers (Proposal: #126)\r\n* Lambda capture lists (Proposal: #117)\r\n\r\n\r\nProbably never\r\n==============\r\n\r\n* INPC support\r\n* ISupportInitialize support (#2100)\r\n* Destructible types (Proposal: #161)\r\n* Implicitly typed lambdas (#14)\r\n* First item in a loop is special (#131)\r\n* XML literals (#1746)\r\n\r\n\r\nUnbucketed\r\n==========\r\n\r\n* yield foreach (non-quadratic) (#15)\r\n* declaration expressions (#254)\r\n* expressing unreachable code (#59, #1226)\r\n* Family AND Assembly access modifier (#1384)"},"comment":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/comments/155970259","html_url":"https://github.com/dotnet/roslyn/issues/2136#issuecomment-155970259","issue_url":"https://api.github.com/repos/dotnet/roslyn/issues/2136","id":155970259,"user":{"login":"alrz","id":3105979,"avatar_url":"https://avatars.githubusercontent.com/u/3105979?v=3","gravatar_id":"","url":"https://api.github.com/users/alrz","html_url":"https://github.com/alrz","followers_url":"https://api.github.com/users/alrz/followers","following_url":"https://api.github.com/users/alrz/following{/other_user}","gists_url":"https://api.github.com/users/alrz/gists{/gist_id}","starred_url":"https://api.github.com/users/alrz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alrz/subscriptions","organizations_url":"https://api.github.com/users/alrz/orgs","repos_url":"https://api.github.com/users/alrz/repos","events_url":"https://api.github.com/users/alrz/events{/privacy}","received_events_url":"https://api.github.com/users/alrz/received_events","type":"User","site_admin":false},"created_at":"2015-11-12T01:43:01Z","updated_at":"2015-11-12T01:43:01Z","body":"@gafter I see, thanks."}}