ブログ 2018/07/11 ピックアップRoslyn 7/11: using patterns and declarations C# 8.0での追加目標で、using ステートメント絡みの機能が2つほど。 Using patterns and declarations #1703 1つは、パターン ベース(IDiposableインターフェイスの実装不要)でusingが使えるようになるというもの。 もう1つは、変数宣言・変数のスコープに紐づいたusing。 パターン ベースで using C# の言語機能のいくつかは、単にメソッド呼び出しに変換するだけのシンタックスシュガーが多いです。 foreach、… 続きを読む 2018/06/30 ピックアップRoslyn 6/30: Working with Data C# 6.0 くらいの頃から脈々とずっとテーマに挙がっている「データ」関連の機能で、2つほど提案が挙がっています。 Proposal: "data" classes for C# #1667 Proposal: Named tuples #1673 新しいものが出たというよりは、プライマリ コンストラクターとかレコード型とか言われていたものを、コンパクトに分割した感じのものです。 長らく先延ばしになっていた機能ですが、C# 8.0 でいよいよ実装しようとい… 続きを読む 2018/05/31 .NET Core 2.1 正式リリース .NET Core 2.1 が正式リリースされたみたいですね。 Announcing .NET Core 2.1 内部的にかなりパフォーマンス改善してるとか、 .NET Global Toolsが使えるとか、 SourceLinkに対応したらしいとかいろいろありますが。 C# 的に直接的に関わってくるのはSpan<T>構造体のリリースでしょうか。 C# 7.2で、Span<T>がらみの言語機能がいろいろ入っているんですが、 肝心のSpan<T&… 続きを読む 2018/05/24 ピックアップRoslyn 5/24 珍しくまめに議事録の投稿が。 C# Language Design Notes for May 21. 2018 今回はこの21日の Design Meeting 議事録1件のみの追加。 さらっと内容紹介: target typed new 要はこんなやつ。 // 今まで M(new A(1)); // 提案: 左辺から推測できる場合、型名を省略可能 M(new (1)); プロトタイプ実装のプルリクが出ていて、いつでも通せる状態ではあるんですが、 ちょ… 続きを読む 2018/05/20 ピックアップRoslyn 5/20: 5月の Design Notes 5月の Language Design Notes が2件ほど追加されました。 C# Language Design Notes for May 2, 2018 C# Language Design Notes for May 14, 2018 さらっと抜粋。 switch 式 先週書いた通り、現状のプレビュー版では、以下のような文法で「式」としてswitchを書けます。 var s = x switch { 1 => "one", 2 => "… 続きを読む 新しい投稿へ 過去の投稿へ
2018/07/11 ピックアップRoslyn 7/11: using patterns and declarations C# 8.0での追加目標で、using ステートメント絡みの機能が2つほど。 Using patterns and declarations #1703 1つは、パターン ベース(IDiposableインターフェイスの実装不要)でusingが使えるようになるというもの。 もう1つは、変数宣言・変数のスコープに紐づいたusing。 パターン ベースで using C# の言語機能のいくつかは、単にメソッド呼び出しに変換するだけのシンタックスシュガーが多いです。 foreach、… 続きを読む
2018/06/30 ピックアップRoslyn 6/30: Working with Data C# 6.0 くらいの頃から脈々とずっとテーマに挙がっている「データ」関連の機能で、2つほど提案が挙がっています。 Proposal: "data" classes for C# #1667 Proposal: Named tuples #1673 新しいものが出たというよりは、プライマリ コンストラクターとかレコード型とか言われていたものを、コンパクトに分割した感じのものです。 長らく先延ばしになっていた機能ですが、C# 8.0 でいよいよ実装しようとい… 続きを読む
2018/05/31 .NET Core 2.1 正式リリース .NET Core 2.1 が正式リリースされたみたいですね。 Announcing .NET Core 2.1 内部的にかなりパフォーマンス改善してるとか、 .NET Global Toolsが使えるとか、 SourceLinkに対応したらしいとかいろいろありますが。 C# 的に直接的に関わってくるのはSpan<T>構造体のリリースでしょうか。 C# 7.2で、Span<T>がらみの言語機能がいろいろ入っているんですが、 肝心のSpan<T&… 続きを読む
2018/05/24 ピックアップRoslyn 5/24 珍しくまめに議事録の投稿が。 C# Language Design Notes for May 21. 2018 今回はこの21日の Design Meeting 議事録1件のみの追加。 さらっと内容紹介: target typed new 要はこんなやつ。 // 今まで M(new A(1)); // 提案: 左辺から推測できる場合、型名を省略可能 M(new (1)); プロトタイプ実装のプルリクが出ていて、いつでも通せる状態ではあるんですが、 ちょ… 続きを読む
2018/05/20 ピックアップRoslyn 5/20: 5月の Design Notes 5月の Language Design Notes が2件ほど追加されました。 C# Language Design Notes for May 2, 2018 C# Language Design Notes for May 14, 2018 さらっと抜粋。 switch 式 先週書いた通り、現状のプレビュー版では、以下のような文法で「式」としてswitchを書けます。 var s = x switch { 1 => "one", 2 => "… 続きを読む