Feeling of Computing

Propositions as Types by Philip Wadler


Listen Later

The subject of this episode's paper — Propositions as Types by Philip Wadler — is one of those grand ideas that makes you want to go stargazing. To stare out into space and just disassociate from your body and become one with the heavens. Everything — life, space, time, existence — all of it is a joke! A cosmic ribbing delivered by the laws of the universe or some higher power or, perhaps, higher order. Humanity waited two thousand years, from the time of the ancient Greeks through until the 1930s, for a means to answer questions of calculability, when three suddenly arrived all at once:

  • General recursive functions by Gödel in 1934, with functions of sets of natural numbers.
  • Lambda calculus by Alonzo Church in 1936, with anonymous single-variable functions.
  • Turing machines by Alan Turing in 1937, with a process for evaluating symbols on a tape.

Then it was discovered that these three models of computation were, in fact, perfectly equivalent. That any statement made in one could be made in the others. A striking coincidence, sure, but not without precedent. But then it was quietly determined (in 1934, again in 1969, and finally published in 1980) that computation itself is in a direct correspondence with logic. That every proposition in a given logic corresponds with a type in a given programming language, every proof corresponds with a program, and the simplification of the proof corresponds with the evaluation of the program.

The implications boggle the mind. How could this be so? Well, how could it be any other way? Why did it take so long to discover? What other discoveries like this are perched on the precipice of revelation?

Philip Wadler is here to walk us through this bit of history, suggest answers to some of these questions, and point us in a direction to search for more.

And we are here, dear listener, to level with you that a lot of this stuff is miserably hard to approach, presented with the symbols and language of formal logic that is so often inscrutable to outsiders. By walking you through Wadler's paper (and the much more approachable Strange Loop talk), and tying it in with the cultural context of modern functional programming, we hope you'll gain an appreciation for this remarkable, divine pun that sits beneath all of computation.

Links

=> patreon.com/futureofcoding — but only if you back the Visual Programming tier!! I'm warning you!

  • Wadler's Strange Loop talk Propositions as Types
  • Cocoon is good. It's not, like, Inside or Limbo good, but it's good. Actually, just play Inside. Do that ASAP.
  • Hollow Knight, also extremely good. Can't wait for Silksong. But seriously, if you're reading this and have haven't played Inside, just skip this episode of the podcast and go play Inside. It's like 3 hours long and it's, like, transformatively great.
  • Chris Martens has done some cool work (eg) bringing together linear logic and games.
  • Meh: Gödel, Escher, Bach by Douglas Hofstadter
  • Yeh: Infinity and the Mind by Rudy Rucker
  • Heh: To Mock a MockingBird by Raymond Smullyan.
  • The hierarchy of automata
  • Games: Agency as Art
  • The Incredible Proof Machine is what some would call a "visual programming language" because proofs are programs. But it's actually really cool and fun to play with. Approach it like a puzzle game, and give it 10 minutes or so to get its hooks into you.
  • "Stop Doing Logic" is part of the Stop Doing Math meme. Unrelated: Ivan's song Don't Do Math.
  • Bidirectional Type Checking, a talk by David Christiansen
  • List Out of Lambda, a blog post by Steve Losh

Nobody noticed that these links were silly last time, so this time I'm drawing more attention to it:

  • Ivan: MastodonEmail
  • Jimmy: MastodonTwitter

This link is legit:

  • DM us in the FoC Slack

https://futureofcoding.org/episodes/068

Support us on Patreon: https://www.patreon.com/feelingofcomputing

See omnystudio.com/listener for privacy information.

...more
View all episodesView all episodes
Download on the App Store

Feeling of ComputingBy Ivan Reese, Jimmy Miller, and Lu Wilson

  • 4.9
  • 4.9
  • 4.9
  • 4.9
  • 4.9

4.9

27 ratings


More shows like Feeling of Computing

View all
99% Invisible by Roman Mars

99% Invisible

26,221 Listeners

Marketplace by Marketplace

Marketplace

8,765 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

289 Listeners

EconTalk by Russ Roberts

EconTalk

4,266 Listeners

Accidental Tech Podcast by Marco Arment, Casey Liss, John Siracusa

Accidental Tech Podcast

2,139 Listeners

LINUX Unplugged by Jupiter Broadcasting

LINUX Unplugged

268 Listeners

Talk Python To Me by Michael Kennedy

Talk Python To Me

585 Listeners

Darknet Diaries by Jack Rhysider

Darknet Diaries

8,043 Listeners

The Indicator from Planet Money by NPR

The Indicator from Planet Money

9,530 Listeners

CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

CoRecursive: Coding Stories

190 Listeners

Dwarkesh Podcast by Dwarkesh Patel

Dwarkesh Podcast

502 Listeners

The Rest Is History by Goalhanger

The Rest Is History

15,261 Listeners

Software Unscripted by Richard Feldman

Software Unscripted

29 Listeners

Search Engine by PJ Vogt

Search Engine

4,551 Listeners

Oxide and Friends by Oxide Computer Company

Oxide and Friends

62 Listeners