New features for those who haven’t seen them:

// Primary constructors
public class NamedItem(string name)
{
    public string Name => name;
}

// Default lambda params
var IncrementBy = 
    (int source, int increment = 1) => 
        source + increment;

Console.WriteLine(IncrementBy(5)); // 6
Console.WriteLine(IncrementBy(5, 2)); // 7

// Type aliases
using Point = (int x, int y);
  • @hurp_mcderp
    link
    11 year ago

    Also, it’s still a tuple so you could simplify existing code without breaking any extension methods you have on them by making a separate type.

    It looks like this was added for flexibility and to make the aliasing system more orthogonal to the type rather than to fill a particular need but who knows.