I wonder how the landscape of popular programming languages would look today if MSR had not taken all that extra work into adding generics into C#? I know the idea is certainly not original to MSR (and has some precursors in C++ templates, and in SML/Ocaml/Haskell and co). Would generics have made it into C# in another fashion? (The article suggests erasure), or would C# and Java been generic-less?
C# would have been a boring Java clone, albeit one better done than Java.
I have to give major props to MSR for basically turning C# into the trajectory of more functional features but wrapped in a way imperative drones can understand them, while keeping them useful - it’s basically almost a conservative F# at this point.