"Sometimes problems are even more valuable than solutions. What should we do something about can be more important than what should we do about it."
I det här avsnittet snackar Chris Klug och Johan Nordberg med Mads Torgersen från Microsoft om C#, .NET och hur ett programmeringsspråk egentligen utvecklas över tid.
Hur går det egentligen till när man lägger till en ny feature i ett programmeringsspråk som används av miljontals utvecklare? Vad händer från att någon föreslår något på GitHub till att det faktiskt blir en del av språket - och varför är det ofta viktigare att förstå problemet än att bara bygga den föreslagna lösningen?
Vi pratar om språkdesign och varför C# inte bara kan kopiera features rakt av från andra språk, och hur teamet väger nytta, bakåtkompatibilitet, runtime, prestanda och komplexitet mot varandra. Mads berättar också om sin tid med Anders Hejlsberg, kopplingen till TypeScript, hur async/await egentligen blev till, varför implementationen blev ett avancerat compiler-trick – och varför den nu rör sig närmare runtime.
Det blir dessutom prat om generics, nullable reference types, features som nästan kom med men stoppades i sista stund, och varför användning av utropstecken i C# faktiskt ska kännas lite smutsigt.
Medverkande: Chris Klug, Johan Nordberg och Mads Torgersen.
Länkar:
C# language design repo
.NET Blog
Mads Torgersen på Microsoft DevBlogs