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.

Episoder(736)

Slaughtering Sacred Cows: Reconsidering Software Dev Truisms - JSJ 653

Slaughtering Sacred Cows: Reconsidering Software Dev Truisms - JSJ 653

Charles and Dan dive deep into the world of programming languages, development practices, and the trade-offs that shape our daily coding lives. Joining them is special guest Tomer Gabel, an experience...

15 Okt 20241h 45min

Unlocking Vue and Nuxt Potential: New Tools, Best Practices, and more - JSJ 652

Unlocking Vue and Nuxt Potential: New Tools, Best Practices, and more - JSJ 652

In this episode, AJ and Steve dive deep into the world of Vue.js and API integration with a special guest, Daniel Kelly, a seasoned lead instructor at Vue School. this episode is packed with valuable ...

8 Okt 202458min

Interactive Coding Tutorials with Tomek Salkowski: Enhancing Developer Experiences - JSJ 651

Interactive Coding Tutorials with Tomek Salkowski: Enhancing Developer Experiences - JSJ 651

AJ and Steve dive deep into the world of interactive coding tutorials alongside guest, Tomek Sułkowski. They kick off with a brief chat about the weather before delving into Tomek's expertise in creat...

1 Okt 202457min

Optimizing SQL and ORM Practices for High-Performance Applications - JSJ 650

Optimizing SQL and ORM Practices for High-Performance Applications - JSJ 650

In today's episode, Charles, Steve, and AJ, are joined by back-end engineer and team lead at Homebound, Stephen Haberman. We delve into the fascinating world of SQL c and its revolutionary approach to...

24 Sep 20241h 31min

Mentorship in Tech: Balancing Professionalism and Friendship for Maximum Growth and Accountability - JSJ 649

Mentorship in Tech: Balancing Professionalism and Friendship for Maximum Growth and Accountability - JSJ 649

They dive deep into the world of mentorship, personal growth, and problem-solving with our special guests, Joao and Manny, alongside our insightful panelists, AJ and Charles.In this episode, they expl...

17 Sep 20241h 19min

Unpacking Deno 2: Code Stability, Free Speech, and more - JSJ 648

Unpacking Deno 2: Code Stability, Free Speech, and more - JSJ 648

Today, Charles, Dan, AJ, and Steve dive into a range of fascinating discussions. Joining this episode is special guest, Ryan Dahl, the visionary creator behind Node.js and Deno.In this episode, they t...

10 Sep 20241h 34min

Opinionated Core Web Vitals - JSJ 647

Opinionated Core Web Vitals - JSJ 647

Dan Shappir takes the lead this week to discuss Core Web Vitals and how Google is pushing the web to be faster.He leads Chuck, Aimee, and AJ through the ways that developers can measure and improve th...

3 Sep 20241h 10min

Beyond JavaScript: Master TypeScript at Scale at SquiggleConf  - JSJ 646

Beyond JavaScript: Master TypeScript at Scale at SquiggleConf - JSJ 646

Dan together with Josh Goldberg, a prominent open-source maintainer and author of "Learning TypeScript, dive into the world of TypeScript and JavaScript with a special focus on the upcoming Squiggleco...

28 Aug 20241h 10min

Populært innen Business og økonomi

dine-penger-pengeradet
stopp-verden
rss-penger-polser-og-politikk
e24-podden
rss-borsmorgen-okonominyhetene
lydartikler-fra-aftenposten
finansredaksjonen
pengesnakk
tid-er-penger-en-podcast-med-peter-warren
utbytte
pengepodden-2
morgenkaffen-med-finansavisen
rss-markedspuls-2
livet-pa-veien-med-jan-erik-larssen
lederpodden
okonomiamatorene
rss-investering-gjort-enkelt
stormkast-med-valebrokk-stordalen
flypodden
shifter