Why Static Typing Came Back • Richard Feldman • GOTO 2022
Why Hacker News recommends it
HN commenters cite it as a clear account of the trade-offs between static and dynamic typing and why the industry is swinging back to types.
What it is
Richard Feldman's GOTO Copenhagen 2022 talk on why dynamic languages like Python, Ruby, PHP and JavaScript rose in the 1990s and why each now has a popular static type checker. It argues that modern static typing recovers the advantages that made dynamic languages attractive.
Recommended by 2 HN commenters across 2 different months, 2023 to 2024.
What Hacker News said
Strong rec raphlinus · 2023-07 · on “Dynamic Languages Strike Back (2008)”
I think the suitable followup to this is the Richard Feldman talk, "Why Static Typing Came Back."[1] It gives the major reasons why one would prefer one over the other, and makes the case that static types can provide most of the actual benefits of dynamic languages, but the reverse is not true. [1]: [this video]
Recommends dansalvato · 2023-07 · on “Why Use Pascal?”
I saw a talk that touched on this recently: [this video] He explains that dynamically-typed languages like Python, Ruby, and JS became popular in the 90s because they offered a fast feedback loop for website building, and they didn't need an IDE or compilers, which were slow (and often not free). It ended up not being worth trading your development time for the performance increase when all your users were connecting via 56k modem anyway. The talk makes a lot of other cool points about how development has changed in the past decade or two, and why the trend is moving back to static typing.
Recommends raphlinus · 2023-09 · on “Strong arrows: a new approach to gradual typing”
Yeah, Rich Feldman has a good talk on this, entitled Why Static Typing Came Back[1]. It makes a good argument that static typing can recover most of the advantages traditionally accounted to dynamic typing. Rapid iteration you can get from incremental compilers, being concise you can get from powerful type inference, etc. Conversely, the advantages of static typing (largely boiling down to increased reliability) cannot easily be captured by dynamically typed languages. Gradual typing, particularly successful by TypeScript, might be an interesting middle ground, or it might just be a reflection of the dynamic history of JS. [1]: [this video]
Cites zogrodea · 2024-04 · on “The last days of my type checker for JavaScript”
I believe Dart was originally gradually typed, and then abandoned the gradual typing for strict-typing-by-default? That doesn't quite sound properly type-safe to me although still safer than how Javascript is by default. My only reference is a memory of this talk by Richard Feldman but I might be wrong or misremembering. [this video]