++C++; // 未確認飛行 C ブログ

http://ufcpp.net/

Archive for 4月 5th, 2015

ピックアップ Roslyn 4/5

with 2 comments

C# Design Meeting Notes for Mar 18, 2015

https://github.com/dotnet/roslyn/issues/1677

3/18 議事録。今回は、UserVoice (要望アンケート サイト)で、C# がらみの上位に入ってる項目について、現状の取り組み状況を説明。

とりあえず、一覧だけ抜き出し、状況のところだけ和訳。

  1. Non-nullable reference types (すでに取組中)
  2. Non-nullary constructor constraints (CLR のサポートが必要)
  3. Support for INotifyPropertyChanged (ちょっと目的限定しすぎ。しいていうならメタプログラミング?)
  4. GPU and DirectX support (ほとんどライブラリでの仕事。言語的にサポートできるとすると、ジェネリックの数値制約?)
  5. Extension properties and static members (確かに興味は持っている)
  6. More code analysis (これこそ、Roslynのアナライザーの存在意義)
  7. Extension methods in instance members (よい要求だと思う。優先度は低いけど)
  8. XML comments (言語に対する要求じゃない(docコメントはC#チームとは別枠みたい))
  9. Unmanaged constraint (CLR のサポートが必要)
  10. Compilable strings (nameof 式はこのために足した)
  11. Mulitple returns (取り組み中。タプルがそう)
  12. ISupportInitialize (ちょっと目的限定しすぎ。オブジェクト初期化子の動作をフックできればいいのかな?)
  13. ToNullable (null関連の取り組みはしてるんで、その一環に含まれるかも)
  14. Statement lambdas in expression trees (よい要求だと思う。でっかい機能だ!)
  15. Language support for Lists, Dictionaries and Tuples (よい。タプルについてはすでに取組中)

Proposal: Add Async support for Main() / Console Apps #1695

https://github.com/dotnet/roslyn/issues/1695

コンソール アプリで Main メソッドを非同期メソッドにさせて(async Task Main を認めて、中で await できるようにして)という要求。

ただ、同期コンテキストをどうしよう(未だと、コンソール アプリの SynchronizationContext.Current はnullで、GUI アプリなら問題なく動かせるようなものが、一工夫しないと動かなかったりする)という課題あり。

Over Our Dead Bodies タグ

https://github.com/dotnet/roslyn/issues/1746

このURL自体は、「C# にも XML リテラルを入れてほしい」という要望なんですが…

XML リテラル、VB では VB 9 (C# 3.0 と同世代)で導入された機能です。が、まあ、C# 的には「やっぱりあの時入れない判断してよかった」「特定のマークアップ言語仕様に依存するのはちょっと」と言われている機能。当然、C# チーム的にこの要望を受け入れるとは思えないわけですが。

「Over Our Dead Bodies」(ほしければ我々を倒してから行け!我々の目が黒いうちは絶対に許さん!)とかいうタグがついてる(笑)

Written by ufcpp

2015年4月5日 at 23:43

カテゴリー: 未分類