type-level programming
47:30John Backus: Function Level Programming and the FL Language 1987
3K views • 9 years ago
Arthur Vard
A 1987 talk in which John Backus, creator of Fortran, presents function-level programming and the FL language, a successor to his FP work. It is an archival recording with links to the related paper.
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.
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.
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.
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.
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.
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: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.
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.
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.
40:57"Hedy: A Gradual programming language" by Felienne Hermans (Strange Loop 2022)
17K views • 4 years ago
Strange Loop Conference
Felienne Hermans presents Hedy, a gradual programming language for teaching kids that moves through levels from almost no syntax toward full Python. The talk covers why error messages and syntax are scary for beginners.
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.
43:16Pure Functional Programming in Excel • Felienne Hermans • GOTO 2016
26K views • 10 years ago
GOTO Conferences
Felienne Hermans argues that Excel is the world's most popular programming language and shows how spreadsheets work as a pure functional language. She implements a few mathematical problems in spreadsheet formulas to illustrate why they are so powerful and approachable.
1:04:45Stanford Seminar - Concatenative Programming: From Ivory to Metal
14K views • 8 years ago
Stanford Online
Jon Purdy's Stanford EE380 seminar giving an overview of concatenative programming, from function composition theory and history down to low-level implementation and correctness benefits.
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.
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.
1:02:49Reboot Develop 2017 - Jonathan Blow, Thekla Inc. / Making Game Programming Less Terrible
112K views • 9 years ago
Reboot Develop
Jonathan Blow's Reboot Develop 2017 talk on making game programming less terrible, discussing software bloat, slowness and the design goals behind his own programming language.
56:49Escape from the Heap: Low-Level Programming in Common Lisp
17K views • 10 years ago
Arthur Gleckler
Ahmon Dancy of Franz Inc explains low-level programming in Common Lisp, including off-heap data structures used in AllegroGraph to manage memory outside the garbage collector.
1:08Winning at programming competitions is a negative factor for being good on the job
67K views • 11 years ago
pkrumins
A one-minute clip of Peter Norvig saying that Google found programming contest success correlates negatively or poorly with job performance. The description links to a blog post discussing it.
1:05:56Lang NEXT 2014 Panel Systems Programming in 2014 and Beyond
3K views • 8 years ago
25msr
A panel from the Lang NEXT 2014 conference on systems programming in 2014 and beyond. Language designers including Bjarne Stroustrup and Rob Pike discuss the topic, including C++ header compile times.
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.
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.
46:09Why Isn't Functional Programming the Norm? – Richard Feldman
1.6M views • 7 years ago
Metosin
Richard Feldman argues that functional programming is not the norm largely because of historical accidents, such as C++ popularity, platform exclusivity, marketing spend and network effects, rather than merit. He traces the history of how languages become mainstream.
32:56Bret Victor The Future of Programming
305K views • 13 years ago
Joey Reid
Bret Victor's DBX 2013 talk, delivered in the guise of a 1973 IBM engineer with an overhead projector. It surveys forgotten ideas from 1960s and early 70s computing and warns against assuming you know what you're doing.
1:18:21"Uncle" Bob Martin - "The Future of Programming"
1.8M views • 10 years ago
Paul Stringer's Mobile Tech
Robert C. Martin (Uncle Bob) traces the history of software from 1948 to today, looking at the problems programmers faced, how they were solved, and what mistakes the profession made. He then projects where the field is going, including professionalism and regulation.
52:09"How to teach programming (and other things)?" by Felienne Hermans
34K views • 7 years ago
Strange Loop Conference
Felienne Hermans's Strange Loop keynote on the history and pedagogy of teaching programming. She questions exploration-only approaches like Logo and discusses research supporting explicit instruction and rote practice.
1:02:36The Pervert's Guide to Computer Programming Languages - SXSW
28K views • 9 years ago
Vulk Coop
A SXSW talk by W Watson that uses Lacanian psychoanalysis, with nods to Zizek, to critique popular programming languages. It argues that people choose and defend languages for emotional and ideological reasons rather than rational ones.
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.
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.
35:59Literate Programming in the Large
18K views • 13 years ago
Next Day Video
Timothy Daly, an original author of the Axiom computer algebra system, talks about turning a large Common Lisp codebase into a literate program. He argues code should be written as readable manuals, and the talk was given at Write the Docs 2013.
1:02:27Procedural Programming: It Never Went Away — Kevlin Henney | Build Stuff
28K views • 8 years ago
Build Stuff - #1 Software Dev Conf
Kevlin Henney argues that procedural programming never went away despite later paradigms such as OO and functional. He traces the history of structured programming and shows where procedural thinking still lives in modern code and why it matters for readability.
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.
1:29:27The Forgotten Art of Structured Programming - Kevlin Henney [C++ on Sea 2019]
245K views • 7 years ago
cpponsea
Kevlin Henney revisits structured programming, from Go To Statement Considered Harmful to block-structured code and object orientation. He argues it still matters for how we write code today.
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.
59:03Breaking Down Programming Paradigms: APL's Surprising Learning Curve // Aaron Hsu // Dyalog '17
7K views • 9 years ago
Dyalog User Meetings
Aaron Hsu explains why programmers often find APL harder to learn than people with no programming background. He identifies eight patterns that contrast traditional software engineering practice with APL practice, starting from Ken Iverson's language design principles.
1:10:42Elements of Programming Style - Brian Kernighan
138K views • 9 years ago
Institute for Advanced Study
Brian Kernighan's 2009 talk at Princeton on the Elements of Programming Style, discussing readable code, avoiding cleverness and flawed examples in programming tutorials.
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.
1:00:00How to Build a Startup Without Funding by Pieter Levels @ Dojo Bali
355K views • 8 years ago
@levelsio
Pieter Levels talks at Dojo Bali about building startups without venture capital through bootstrapping, persistence and learning many skills as a generalist. He reviews his own past projects.
52:40Keynote. Professor Steven G. Johnson | JuliaCon 2019
18K views • 7 years ago
The Julia Programming Language
Steven G. Johnson, MIT professor and FFTW co-author, gives a JuliaCon 2019 keynote on metaprogramming and staged programming in Julia, showing how it enables high-performance numerical code and when not to use macros.