Using .net as an example we’ll go over the technical decisions that influenced how todays languages look like. We will look at some key technologies that enabled the creation of .net, the reasons for its creation and the origin of its core features.
Video of the conference (with video starting with at my talk. The whole conference is in that video) :
I have created the following diagram to make following the topics of the talk simpler. There are many ways to link these, and
Resources
Microsoft early history
- Microsoft: key facts- Irish Times
- History of Microsoft - Wikipedia
- The History of .net from Richard Campbell from .Net Rocks
Virtual Machines
- Many BCPL papers and links by Martin Richards
- Z-Machine talk by Ross McKinlay
- https://en.wikipedia.org/wiki/UCSD_Pascal
ML family of programming languages
Java and the JVM
Lighting and early days of .Net
- The history of C#
- History of F# by Don Syme
- Interesting discussion about tail calls in C#
- History of Mono
- .NET Framework
.NET Generics
- Design and Implementation of Generics for the .NET Common Language Runtime - Paper - Andrew Kennedy , Don Syme
- Generics in C#
- How Generics were added to .Net
- Generics in the common type system
Don Syme and F#
- History of F# by Don Syme
Other resources
- (The evolution of C#: Lead designer describes modernization journey, breaks it down about getting func-y)[https://www.theregister.com/2020/11/11/the_evolution_of_c_lead/]
- Why No One Uses Functional Languages. / Wadler, Philip. In: ACM Sigplan Notices, Vol. 33, No. 8, 08.1998, p. 23-27.
- Why hasn’t functional programming taken over yet The answer by Eric Lippert in this thread
Final words
If you enjoyed this talk and the subject, I have done some other talks about history and philosophy of Programming languages:
- A brief and incomplete history of programming languages - Curry On
- Keynote: Inviting everyone to the party
Be warned, history of PL is an appealing rabbit hole. If you want to delve (a lot) deeper into the history of PL the whole series of books on based on the HoPL conferences books are a great resource.