Running Doom in TypeScript’s Type System with Dimitri Mitropoulos - JSJ 684

Running Doom in TypeScript’s Type System with Dimitri Mitropoulos - JSJ 684

What if I told you someone managed to run Doom inside TypeScript’s type system? Sounds insane, right? That’s exactly what our guest Dimitri Mitropoulos did—and in this episode, we dive deep into the how, the why, and the mind-bending implications of this ambitious project. From type-level programming to the philosophical limits of Turing completeness, this is an episode that pushes the boundaries of what you thought was possible in JavaScript.

We talk about how the TypeScript type system evolved to become Turing-complete, how Dimitri pulled off this seemingly impossible feat, and why “Doom-complete” might just be the new gold standard for computational capability. Along the way, we touch on functional programming, generics, recursion, and even some Lambda Calculus. It’s part computer science theory, part coding madness, and 100% geeky goodness.

Episode Highlights
[3:05] – Dimitri explains how a simple thought experiment turned into a year-and-a-half-long obsession
[8:40] – The origins and significance of Turing completeness in type systems
[14:15] – Why running Doom in TypeScript is more about proving limits than just showing off
[19:55] – What it means to run programs inside the type system vs. TypeScript code itself
[27:10] – ASCII art as output, functional recursion for game state, and hover-over frames in your editor
[35:30] – How ignorance, determination, and obsession fueled the completion of the project
[45:20] – Personal insights: balancing family, burnout, and passion while chasing an impossible dream

Links & Resources
Dimitri Mitropoulos
Michigan TypeScript YouTube Channel – Dimitri's channel featuring the project
Type Challenges by Anthony Fu – Advanced TypeScript exercises
SquiggleConf – The TypeScript-focused conference Dimitri co-founded
Josh Goldberg – TypeScript expert and co-organizer of SquiggleConf


Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

Jaksot(738)

042 JSJ CSS and CSS Superset Languages

042 JSJ CSS and CSS Superset Languages

PanelBrian Turley (twitter blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) AJ O’Neal (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) D...

11 Tammi 201359min

041 JSJ Single Page Applications

041 JSJ Single Page Applications

PanelJamison Dance (twitter github blog) AJ O’Neal (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 02:09 - Follow Up to 040 JSJ ConferencesBroad Confe...

4 Tammi 201359min

040 JSJ Conferences

040 JSJ Conferences

Panel Trevor Tingey (twitter blog) Joe Eames (twitter github blog) Tim Caswell (twitter github howtonode.org) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:16 - Con...

28 Joulu 201257min

039 JSJ Sweet.js with Tim Disney

039 JSJ Sweet.js with Tim Disney

PanelTim Disney (twitter github blog) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Tim Caswell (twitter github howtonode.org) Charles Max Wood (t...

21 Joulu 201239min

038 JSJ Jasmine with Justin Searls

038 JSJ Jasmine with Justin Searls

PanelJustin Searls (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) AJ O’Neal (twitter github blog) Charles Max Wood (twit...

14 Joulu 201257min

037 JSJ Promises with Domenic Denicola and Kris Kowal

037 JSJ Promises with Domenic Denicola and Kris Kowal

PanelKris Kowal (twitter github blog) Domenic Denicola (twitter github blog) AJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (tw...

7 Joulu 201255min

036 JSJ DOM Rendering and Manipulating

036 JSJ DOM Rendering and Manipulating

PanelAJ O’Neal (twitter github blog) Jamison Dance (twitter github blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) Charles Max Wood (twitter github Teach Me To Code Intro to...

30 Marras 201248min

035 JSJ node-webkit

035 JSJ node-webkit

PanelJamison Dance (twitter github blog) Tim Caswell (twitter github howtonode.org) AJ O’Neal (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Intro to CoffeeScript) Discussion ...

16 Marras 201244min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
mimmit-sijoittaa
rss-rahapodi
psykopodiaa-podcast
rss-rahamania
rss-seuraava-potilas
herrasmieshakkerit
ostan-asuntoja-podcast
rahapuhetta
rss-20-30-40-podcast
taloudellinen-mielenrauha
rss-myynnilla-on-asiaa-kert-kenner
pomojen-suusta
rss-lahtijat
rss-karon-grilli
rss-sisalto-kuntoon
rss-draivi
rss-sami-miettinen-neuvottelija
rss-vaikuttavan-opettajan-vierella
rss-inderes-femme