The Trouble With Types
Offered By: Strange Loop Conference via YouTube
Course Description
Overview
Explore the controversial topic of static typing in programming languages through this thought-provoking conference talk by Martin Odersky, creator of Scala. Delve into the advantages and disadvantages of static typing, examining its impact on code organization, error prevention, and developer productivity. Gain insights into the challenges of designing an ideal type system that balances correctness, documentation, simplicity, and ease of use. Discover the main categories of static type systems and their trade-offs, while considering new developments in the field. Learn from Odersky's expertise as he discusses the future of type systems and their potential to improve the programming experience.
Syllabus
Intro
Static: Points in Favor
Dynamic: Points in Favor
What is Good Design?
Elements Of Great Designs
Example: Bach Fugues
What Is A Good Language for Design?
Type Systems Landscape
Static Type Systems
(1) My Way or the Highway
(3) Type it to the Max
Making Good Use of Nothing
Other Strengths of Dynamic
(3) Cutting Corners
Abstractions
Types in Scala
Non-Orthogonal Design
Too Many Combinations?
Projections Reduce Dimensionality
Projections Help Remove Features
Dot and Dotty
Types in Dotty
Modelling Generics
Making Parameters Public
Expressing Existentials
Expressing Higher-Kinded
In a Nutshell
Will this Be Scala?
The Essence of Scala
Types Are Trouble
Taught by
Strange Loop Conference
Tags
Related Courses
Programming LanguagesUniversity of Virginia via Udacity Compilers
Stanford University via Coursera Programming Languages, Part A
University of Washington via Coursera CSCI 1730 - Introduction to Programming Languages
Brown University via Independent Intro to Java Programming
San Jose State University via Udacity