u/Epistechnein r/functionalprogramming • Recommends
#lineartypes#rustownership#haskell
A Hitchhiker's Guide to Linearity by Daniel Marshall | Lambda Days 2023
15K subscribers • 57 videos on Hallway
- Recommended by 2 people: 2 in engineering communities.
- Presented by Daniel Marshall
Intermediate. Assumes working knowledge.
1.2K views3 years ago2 recommendations
Programming languagesComputer scienceLanguage design and type systemsFunctional programming
Daniel Marshall explores the design space of linear, uniqueness, and quantitative types across languages like Haskell, Idris, and Rust.
Ever since Girard came up with linear logic back in the 1980s, computer scientists have been trying to figure out how to bring the idea of linearity into the realm of programming languages in order to demonstrate benefits in the real world. Nowadays, there are enough languages starting to take inspiration from linear logic to make your head spin; whether it's linear types in Haskell, uniqueness types in Clean, quantitative types in Idris, or the ownership system in Rust, there seems to be a different approach for everyone - but which is right for you? In this talk, we'll take a whirlwind tour through the design space. I'll explain the strengths and weaknesses of each of these ideas and show you how mixing and matching them can help to improve both safety and performance when working with resources such as file handles, mutable arrays, and communication channels, taking lessons from my ongoing work towards unifying these various concepts in our very own research language, Granule. Let's stay in touch! twitter.com/LambdaDaysWhy it's here
2 people recommend thisWhat people say. Recommended as a clear and comprehensive overview of linear types and ownership models in modern programming languages.
u/mttdin r/ProgrammingLanguages • Recommends
u/mttdin r/ProgrammingLanguages • Mentions
On “Higher RAII, and the Seven Arcane Uses of Linear Types”
u/WittyStick0in r/ProgrammingLanguages • Mentions
On “Not quite an affine type system”
u/WittyStickin r/ProgrammingLanguages • Mentions
On “Implementation of Uniqueness Types (= Smart Pointer?)”