Back to Csharplang

C# Language Design Notes for 2024

meetings/2024/README.md

latest13.0 KB
Original Source

C# Language Design Notes for 2024

Mon Dec 9, 2024

C# Language Design Meeting for December 9th, 2024

  • First-class span open questions
  • Simple Lambda Parameters
  • Collection expression arguments

Wed Dec 4, 2024

C# Language Design Meeting for December 4th, 2024

  • First-class span open questions
    • Preferring ReadOnlySpan<T> over Span<T> conversions
    • Conversions in expression trees

Wed Nov 20, 2024

C# Language Design Meeting for November 20th, 2024

  • Extensions
  • Dictionary Expressions

Wed Nov 13, 2024

C# Language Design Meeting for November 13th, 2024

  • Extensions

Mon Nov 4, 2024

C# Language Design Meeting for November 4th, 2024

  • not and or patterns
  • Notes on notes

Wed Oct 30, 2024

C# Language Design Meeting for October 30th, 2024

  • Extensions

Mon Oct 28, 2024

C# Language Design Meeting for October 28th, 2024

  • Increment and Decrement Operators in null conditional access
  • yield in try / catch

Mon Oct 21, 2024

Canceled

Wed Oct 16, 2024

C# Language Design Meeting for October 16th, 2024

  • Simple lambda parameters
  • Unbound generic types in nameof
  • typeof string constants

Mon Oct 14, 2024

C# Language Design Meeting for October 14th, 2024

  • Extensions

Wed Oct 9, 2024

C# Language Design Meeting for October 9th, 2024

  • Extensions

Mon Oct 7, 2024

C# Language Design Meeting for October 7th, 2024

  • Extensions

Wed Oct 2, 2024

C# Language Design Meeting for October 2nd, 2024

  • Open questions in field
    • readonly contexts and set
    • Conditional code
    • Interface properties and auto-accessors
  • Extensions

Mon Sep 30, 2024

C# Language Design Meeting for September 30th, 2024

  • Extensions

Wed Sep 25, 2024

  • C# 14 (no notes)

Mon Sep 23, 2024

  • Design review (no notes)

Wed Sep 18, 2024

C# Language Design Meeting for September 18th, 2024

  • Nullability in field
  • Extensions naming

Wed Sep 11, 2024

C# Language Design Meeting for September 11th, 2024

  • Better conversion from collection expression and params collections
  • First-class span types
    • Reverse
    • New ambiguities
    • Covariant arrays

Wed Sep 4, 2024

C# Language Design Meeting for September 4th, 2024

  • Triage (no milestone)
    • Type inference using method group natural type
    • Collection Expressions Next (C#13 and beyond)
    • Dictionary expressions
    • Extending patterns to "as"
    • params in parameters
  • Triage (working set)
    • Only Allow Lexical Keywords in the Language
    • Permit variable declarations under disjunctive patterns
    • CallerCharacterNumberAttribute
    • Task<T> nullability covariance
    • Nullable analysis of LINQ queries

Wed Aug 28, 2024

C# Language Design Meeting for August 28th, 2024

  • Nullable in ref ternaries
  • Block-bodied switch expression arms

Mon Aug 26, 2024

C# Language Design Meeting for August 26th, 2024

  • field keyword open questions
    • field in property initializers
    • Interaction with partial properties
    • readonly field

Wed Aug 21, 2024

C# Language Design Meeting for August 21st, 2024

  • Better conversion from collection expression
  • field keyword nullability

Mon Aug 19, 2024

C# Language Design Meeting for August 19th, 2024

  • Better conversion from collection expression

Wed Aug 14, 2024

C# Language Design Meeting for August 14th, 2024

  • field keyword
    • field nullability
    • field in event accessor
    • Scenarios similar to set;

Wed Jul 24, 2024

C# Language Design Meeting for July 24th, 2024

  • Discriminated Unions
  • Better conversion from collection expression with ReadOnlySpan<T> overloads

Mon Jul 22, 2024

C# Language Design Meeting for July 22nd, 2024

  • Extensions
  • Ref structs implementing interfaces

Wed Jul 17, 2024

C# Language Design Meeting for July 17th, 2024

  • Overload resolution priority open questions
  • Better conversion from collection expression with ReadOnlySpan<T> overloads

Mon Jul 15, 2024

C# Language Design Meeting for July 15th, 2024

  • field keyword
  • First-Class Spans Open Question

Wed Jun 26, 2024

C# Language Design Meeting for June 26th, 2024

  • Extensions

Mon Jun 24, 2024

C# Language Design Meeting for June 24th, 2024

  • First-Class Spans
  • field questions
    • Mixing auto-accessors
    • Nullability

Mon Jun 17, 2024

C# Language Design Meeting for June 17th, 2024

  • params Span breaks
  • Overload resolution priority questions
    • Application error or warning on overrides
    • Implicit interface implementation
  • Inline arrays as record structs

Wed Jun 12, 2024

C# Language Design Meeting for June 12th, 2024

  • params Span breaks
  • Extensions

Mon Jun 10, 2024

C# Language Design Meeting for June 10th, 2024

  • ref structs implementing interfaces and in generics

Mon Jun 3, 2024

C# Language Design Meeting for June 3rd, 2024

  • Params collections and dynamic
  • Allow ref and unsafe in iterators and async

Wed May 15, 2024

C# Language Design Meeting for May 15th, 2024

  • field and value as contextual keywords
    • Usage in nameof
    • Should value be a keyword in a property or indexer get? Should field be a keyword in an indexer?
    • Should field and value be considered keywords in lambdas and local functions within property accessors?
    • Should field and value be keywords in property or accessor signatures? What about nameof in those spaces?
  • Dictionary expressions

Mon May 13, 2024

C# Language Design Meeting for May 13th, 2024

  • First-class span types questions
    • Delegate conversions
    • Variant conversion existence
  • Overload resolution priority questions
    • Attribute shape and inheritance
    • Extension overload resolution

Wed May 8, 2024

C# Language Design Meeting for May 8th, 2024

  • readonly for primary constructor parameters

Wed May 1, 2024

C# Language Design Meeting for May 1st, 2024

  • Adjust binding rules in the presence of a single candidate

Wed Apr 24, 2024

C# Language Design Meeting for Apr 24th, 2024

  • Adjust dynamic binding rules for a situation of a single applicable candidate

Mon Apr 22, 2024

C# Language Design Meeting for Apr 22nd, 2024

  • Effect of language version on overload resolution in presence of params collections
  • Partial type inference: '_' in method and object creation type argument lists

Wed Apr 17, 2024

C# Language Design Meeting for Apr 17th, 2024

  • Relax Add requirement for collection expression conversions to types implementing IEnumerable
  • Extensions

Mon Apr 15, 2024

C# Language Design Meeting for Apr 15th, 2024

  • Non-enumerable collection types
  • Interceptors
  • Relax Add requirement for collection expression conversions to types implementing IEnumerable

Mon Apr 8, 2024

C# Language Design Meeting for Apr 8th, 2024

  • Implementation specific documentation

Mon Apr 1, 2024

C# Language Design Meeting for Apr 1st, 2024

  • Async improvements (Async2)

Wed Mar 27, 2024

C# Language Design Meeting for Mar 27th, 2024

  • Discriminated Unions

Mon Mar 11, 2024

C# Language Design Meeting for Mar 11th, 2024

  • Dictionary expressions

Mon Mar 4, 2024

C# Language Design Meeting for Mar 4th, 2024

  • Breaking changes: making field and value contextual keywords
  • Overload resolution priority

Wed Feb 28, 2024

C# Language Design Meeting for Feb 28th, 2024

  • Extensions

Mon Feb 26, 2024

C# Language Design Meeting for Feb 26th, 2024

  • ref structs in generics
  • Collection expressions

Wed Feb 21, 2024

C# Language Design Meeting for Feb 21st, 2024

  • Declaration of ref/out parameters in lambdas without typename
  • params collections
    • Metadata format
    • params and scoped across overrides
    • required members and params parameters

Wed Feb 7, 2024

C# Language Design Meeting for Feb 7th, 2024

  • Partial type inference
  • Breaking change warnings

Mon Feb 5, 2024

C# Language Design Meeting for Feb 5th, 2024

  • First-class span types
  • Collection expressions: inline collections

Wed Jan 31, 2024

C# Language Design Meeting for January 31st, 2024

  • Relax "enumerable" requirement for collection expressions
  • params collections evaluation orders

Mon Jan 29, 2024

C# Language Design Meeting for January 29th, 2024

  • params collections
    • Better function member changes
    • dynamic support
  • dynamic and ref local function bugfixing

Mon Jan 22, 2024

C# Language Design Meeting for January 22nd, 2024

Wed Jan 10, 2024

C# Language Design Meeting for January 10th, 2024

  • Collection expressions: conversion vs construction

Mon Jan 8, 2024

C# Language Design Meeting for January 8th, 2024

  • Collection expressions
    • Iteration type of CollectionBuilderAttribute collections
    • Iteration type in conversions