type inference
40:39Edwin Brady - Idris 2 - Type-driven Development of Idris
19K views • 7 years ago
Curry On!
Edwin Brady, creator of Idris, presents Idris 2 and demonstrates type-driven development, where the compiler assists by filling holes and suggesting implementations from types.
43:23Edwin Brady - Idris 2: Type-driven development of Idris | Code Mesh LDN 18
20K views • 7 years ago
Code Sync
Edwin Brady presents Idris 2, a rewrite of the Idris dependently typed language, and shows type-driven development in practice. The demos show the compiler filling in whole functions from their types.
1:11:42ElixirConf 2023 - José Valim - The foundations of the Elixir type system
38K views • 3 years ago
ElixirConf
José Valim's ElixirConf US 2023 closing keynote on the foundations of the Elixir type system, covering set-theoretic types and gradual typing with strong arrows.
54:31Does APL Need a Type System? by Aaron W Hsu at #FnConf18
6K views • 7 years ago
ConfEngine
Aaron Hsu's FnConf18 talk asks whether APL needs a static type system. He argues that APL's expressiveness and rapid iteration already deliver the benefits usually credited to types.
38:36"A Little Taste of Dependent Types" by David Christiansen
48K views • 8 years ago
Strange Loop Conference
David Christiansen gives a Strange Loop 2018 introduction to dependent types, where one language serves for both compile-time and run-time code and programs unite with proofs. It draws on his book The Little Typer.
46:36Type-Driven Development in Idris — Edwin Brady
26K views • 11 years ago
Scala World
Edwin Brady, creator of Idris, introduces type-driven development in a dependently typed language. He shows types being written first and programs derived with interactive editing, then extends beyond simple examples to programs that interact with users and networks.
1:04:35The Algebra of Algebraic Data Types
27K views • 13 years ago
London Haskell
A London Haskell talk on the algebra of algebraic data types, showing how sum and product types behave like arithmetic. It frames types as numbers obeying algebraic laws.
40:15Bringing Types to Elixir by Giuseppe Castagna and Guillaume Duboc | ElixirConf EU 2023
7K views • 3 years ago
Code Sync
ElixirConf EU 2023 talk by Giuseppe Castagna and Guillaume Duboc on bringing set-theoretic types to Elixir, and the benefits such a type system could offer such as catching bugs.
42:43"Propositions as Types" by Philip Wadler
143K views • 11 years ago
Strange Loop Conference
Philip Wadler's Strange Loop talk on Propositions as Types, the link between logic and computation (the Curry-Howard correspondence). He traces its history through Church, Godel and Turing and shows how it shaped theorem provers and programming languages.
56:58Philip Wadler - Propositions as Types (Lambda Days 2016)
20K views • 10 years ago
Erlang Solutions
Philip Wadler's Lambda Days talk on propositions as types, the link between logic and computation that underlies theorem provers and programming language design.
1:42:53Edward Kmett - Type Classes vs. the World
36K views • 11 years ago
Boston Haskell
Edward Kmett speaks at the Boston Haskell meetup about type classes and the design tradeoffs of global coherence compared with other approaches to implicit instances. It covers why uniqueness of instances matters for reasoning and refactoring.
47:25Introducing SILE: A New Typesetting System
5K views • 11 years ago
lathosjp
The SILE author's FOSDEM 2015 talk introducing SILE, a TeX-inspired typesetting system with frame-based layout, Unicode, OpenType and a Lua-based extensible design.
13:45A 10x faster TypeScript
608K views • 1 year ago
Microsoft Developer
Anders Hejlsberg introduces the native port of the TypeScript compiler, written in Go, which promises roughly 10x faster tooling. He demos compiling VS Code and explains where the speedup comes from.
1:15:19Types are like the Weather, Type Systems are like Weathermen - Matthias Felleisen
16K views • 10 years ago
ClojureTV
Matthias Felleisen's keynote uses weather prediction as an analogy for type systems, arguing they forecast problems so you can act on them. It draws on his experience developing Typed Racket.
39:40"Type-Driven Program Synthesis" by Nadia Polikarpova
15K views • 8 years ago
Strange Loop Conference
Nadia Polikarpova's Strange Loop talk on program synthesis driven by refinement types, as in Synquid. It shows how rich type specifications can be turned into verified, executable code.
25:06"Making Impossible States Impossible" by Richard Feldman
63K views • 10 years ago
elm-conf
Richard Feldman's elm-conf talk on designing models so that bugs from impossible application states cannot occur, using Elm's compiler and types. It demonstrates techniques for making invalid states unrepresentable.
1:03:29Maybe Not - Rich Hickey
181K views • 7 years ago
ClojureTV
Rich Hickey's Clojure/Conj 2018 keynote argues that Maybe/Option types and rigid type signatures are a poor way to model data that changes over time. He builds the case around optionality, schema growth and compatibility, and presents the ideas behind Clojure spec as an alternative.
18:12Type 2 diabetes | Sarah Hallberg | TEDxPurdueU
11.9M views • 11 years ago
TEDx Talks
Dr. Sarah Hallberg argues in a TEDx talk that type 2 diabetes can be treated and potentially reversed through diet, especially by restricting carbohydrates. TED flagged the talk as outside its guidelines and warned against taking it as medical advice.
19:12Taking Vector Transposes Seriously | Jiahao Chen | JuliaCon 2017
7K views • 9 years ago
The Julia Programming Language
Jiahao Chen's JuliaCon 2017 talk argues that vector transposes should be taken seriously in type systems and linear algebra libraries. It explains why treating vectors as matrices causes trouble in languages.
50:49Domain Modeling Made Functional - Scott Wlaschin - KanDDDinsky 2019
74K views • 6 years ago
KanDDDinsky
Scott Wlaschin shows how statically typed functional languages, using F# examples, can model a business domain so that invalid states cannot be represented. The type system acts almost like an instant unit test at compile time.
22:15Badness 0 (Apostrophe‛s version)
258K views • 2 years ago
suckerpinch
Tom 7's pilot episode of a series that plays with type systems and absurd programming, presented as a parody of the GPL v3 license. It mixes a typesetting experiment with a long, story-driven intro on the origin of TeX. Source code and papers are linked from the author's site.
25:37CUFP 2013: Julien Verlaguet, Facebook: Analyzing PHP statically
5K views • 13 years ago
CUFP 2013
Julien Verlaguet of Facebook describes applying static analysis and type inference to a very large PHP codebase, using OCaml. The work led to the Hack language.
1:03:34Simon Peyton Jones - Linear Haskell: practical linearity in a higher-order polymorphic language
19K views • 8 years ago
Curry On!
Simon Peyton Jones presents linear types for Haskell, showing how practical linearity can fit into a higher-order polymorphic language. The talk covers motivations such as resource handling and relates the ideas to Rust.
40:20"Shen: A Sufficiently Advanced Lisp" by Aditya Siram
26K views • 12 years ago
Strange Loop Conference
Aditya Siram introduces Shen, a small hosted Lisp with macros, a built-in Prolog and an optional type system. The talk demos a full web app moving between functional, logic and imperative styles, including turning JSON into a type with macros.
37:32Dr. Jason Fung - 'The Aetiology of Obesity'
681K views • 10 years ago
Low Carb Down Under
Dr. Jason Fung, a nephrologist, presents his view of the causes of obesity and type 2 diabetes, focusing on hormones such as insulin rather than calories alone. The talk draws on research and his Intensive Dietary Management program.
52:01Why Static Typing Came Back • Richard Feldman • GOTO 2022
157K views • 3 years ago
GOTO Conferences
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.
1:29:49Going Native 2012 Keynote Stroustrup
33K views • 14 years ago
savage309
Bjarne Stroustrup's keynote at Going Native 2012 covers the ideas behind C++11, including using types to prevent errors and simplifying code with the STL.
1:07:22Invited Talk - Guy Steele
39K views • 9 years ago
ClojureTV
Guy Steele's invited talk at Clojure/conj on the informal metanotation computer scientists use in papers to describe languages. He traces how this notation developed and why it is often unspecified and arcane.
1:04:53Julia: to Lisp or not to Lisp?
24K views • 10 years ago
European Lisp Symposium
Stefan Karpinski's European Lisp Symposium 2016 talk asks whether Julia is a Lisp. He covers the features it borrows from Lisp, such as macros and closures, and where it departs, including syntax and its type system, with generated machine code shown.
36:10Dr. Jason Fung - 'Therapeutic Fasting - Solving the Two-Compartment Problem'
6.4M views • 10 years ago
Low Carb Down Under
Dr. Jason Fung, a nephrologist, explains therapeutic fasting as a treatment for obesity and type 2 diabetes. He frames it around the two-compartment problem of fat storage and insulin resistance.
51:40Domain Modeling Made Functional - Scott Wlaschin
71K views • 9 years ago
NDC Conferences
Scott Wlaschin's NDC talk on using statically typed functional programming, F# in particular, to model a business domain. Types are used to represent the domain precisely and to encode business rules so that illegal states cannot be built, with the compiler acting as an instant unit test.
1:12:122017 ACM PPoPP Keynote: It's Time for a New Old Language
7K views • 9 years ago
Guy Steele
Guy Steele's PPoPP 2017 keynote surveying the history of computer science metanotation, including BNF, inference rules, and overline notation. He argues the field's notations are inconsistent and fragmented.
36:58"A (Not So Gentle) Introduction To Systems Programming In ATS" by Aditya Siram
26K views • 9 years ago
Strange Loop Conference
Aditya Siram introduces ATS, a statically typed ML-like language that compiles to C and offers type-safe pointer arithmetic and a full proof language. The Strange Loop talk shows off C interop, concurrency and verification features with non-trivial examples.
59:31ClojureScript in the Age of TypeScript — David Nolen
29K views • 5 years ago
ChariotSolutions
David Nolen explains how ClojureScript is used at Vouch.io to build mobile and web software with a single language and REPL-driven workflow. The talk includes a live coding demo of React Native development.
30:40What's Bad About Julia | Jeff Bezanson | JuliaCon 2019
37K views • 7 years ago
The Julia Programming Language
Julia co-creator Jeff Bezanson candidly lists fundamental problems with the language at JuliaCon 2019, including modularity, types and compiler latency, and how they might be solved.
44:382017 LLVM Developers’ Meeting: “Implementing Swift Generics ”
21K views • 9 years ago
LLVM
Swift compiler engineers explain how Swift implements generics using dictionary-passing with reified type metadata. They compare it with Java-style uniform representation and C++ or Rust monomorphization.
42:25Glenn Vanderburg - Cló: The Algorithms of TeX in Clojure
9K views • 11 years ago
ClojureTV
Glenn Vanderburg presents Cló, a Clojure library that reimplements TeX's core typesetting algorithms as composable functions. He shows what translating procedural, literate-programming code into functional form teaches.
24:56Millennials Don't Exist! Adam Conover at Deep Shift
4M views • 10 years ago
Adam Conover
Adam Conover's talk at a millennial marketing conference argues that generations are an unscientific, condescending idea and that millennials do not exist as a real category. The description notes that researcher Jean Twenge later said he misrepresented some of her work.
59:04On the Expressive Power of Programming Languages by Shriram Krishnamurthi [PWLConf 2019]
27K views • 7 years ago
PapersWeLove
Shriram Krishnamurthi's PWLConf 2019 talk on the formal notion of expressive power of programming languages, based on Felleisen's paper. It explains how to tell when a feature adds power by whether emulating it requires global rewriting.
1:10:11Self and Self: Whys and Wherefores
30K views • 16 years ago
Stanford
David Ungar of IBM Research reflects at Stanford on the Self language project and argues the real legacy of ideas is the people. He covers its history, philosophy, successes and failures.