DOOM.ts | Dimitri Mitropoulos | Ep 13

DOOM.ts | Dimitri Mitropoulos | Ep 13

This week on the pod, we talk to Dimitri Mitropoulos about building DOOM in the TypeScript type system. We walk through all the nitty gritty and explore this truly amazing engineering feat! We touch on things that Dimitri learned and discovered along the way, and how you might be surprised what you can accomplish by trying! In the news, Zod 4 Beta drops with awesome new features.


Chapters

  • (00:00) - Intro
  • (00:37) - SquiggleConf 2025
  • (01:00) - Personal News
  • (04:28) - Dimitri's Background and Michigan TypeScript
  • (08:35) - JSON Parser in TypeScript Types
  • (09:08) - Where do you start with DOOM in Types?
  • (10:01) - "DOOM" Complete
  • (13:57) - How do you run DOOM in TS?
  • (17:36) - Debugging an Emulator in TS Types
  • (19:22) - How does DOOM work?
  • (20:45) - Using Web Assembly
  • (22:49) - Understanding WebAssembly and TypeScript Integration
  • (24:59) - The Concept of Abstraction in Programming
  • (27:02) - Challenges in Implementing WebAssembly from the Spec
  • (28:59) - Ambiguities in Specifications and Their Impact
  • (30:40) - Debugging Techniques and Error Handling
  • (32:24) - Innovative Use of Overflow in Game Development
  • (35:40) - Insights Gained from TypeScript During the Project
  • (38:24) - The Complexity of TypeScript Types
  • (43:08) - Time Travel Debugging and Memory Management
  • (45:00) - The Most Challenging Aspects of the Project
  • (48:32) - Reactions to DOOM
  • (53:10) - The Dawn of TypeScript Go
  • (01:02:14) - Lessons Learned and Future Directions
  • (01:08:37) - Dimitri Says Goodbye!
  • (01:09:50) - News for the Week of April 7th
  • (01:14:42) - Community Posts
  • (01:17:39) - Secret of the Handbook
  • (01:19:07) - Cool Stuff from Erik
  • (01:19:51) - Debugging and Performance Optimization Techniques

Dimitri's Links


News Links


Excalibur Games


Sponsored by Excalibur.js
Excalibur.js is the friendly TypeScript game engine for making 2D web games. Use your TypeScript or JavaScript skills to make games! Excalibur comes out-of-the-box with everything you need to make web games, like physics, sprites, animations, sound effects, input, and particles. Design your assets with tools like Aseprite and Tiled, then load them natively using first-party plugins.

Music
Seahorse Dreams by Kubbi (Spotify)

Creators & Guests

Tämä jakso on lisätty Podme-palveluun avoimen RSS-syötteen kautta eikä se ole Podmen omaa tuotantoa. Siksi jakso saattaa sisältää mainontaa.

Jaksot(87)

TS 7 Compiler API Plans, Elysia 2 Beta, and JSX in ASP.NET Core | News | Ep 76

TS 7 Compiler API Plans, Elysia 2 Beta, and JSX in ASP.NET Core | News | Ep 76

News for the week of July 27, 2026: insights into what's coming in TS 7.1, rendering JSX and TSX natively using ASP.NET Core, and Elysia gets rewritten with the new v2 beta. From the community: semant...

7 Elo 1h 2min

Type-aware Linting Stable in oxlint, Qwik v2 Beta, and Octane Turns Up the Heat on React | News | Ep 75

Type-aware Linting Stable in oxlint, Qwik v2 Beta, and Octane Turns Up the Heat on React | News | Ep 75

News for the week of July 20, 2026: Oxlint type-aware linting is now stable, Qwik v2 is now in beta, and the successor to Inferno is lighting up React. From the community: must-watch talks from Softwa...

30 Heinä 53min

Announcing TypeScript 7, Bun 1.4 is in Rust, and Vite+ Beta | News | Ep 74

Announcing TypeScript 7, Bun 1.4 is in Rust, and Vite+ Beta | News | Ep 74

News for the first half of July, 2026: TypeScript 7 is now generally available, Bun's Rust port will be official in v1.4, plus Nuxt 4.5, and Astro 7.1 updates. From the community: Tangled is the new h...

21 Heinä 1h 16min

TypeScript, Agents, and What Skills Will Matter Tomorrow | Kent C Dodds | Ep 73B

TypeScript, Agents, and What Skills Will Matter Tomorrow | Kent C Dodds | Ep 73B

In this episode, we interview Kent. C Dodds, a prolific developer educator and TypeScript fan, to talk about his new courses and where he sees the future of software development going. Should you stil...

2 Heinä 57min

TypeScript 7 RC, a Bun-like DX for Node.js, and k8s in the Browser | News | Ep 72

TypeScript 7 RC, a Bun-like DX for Node.js, and k8s in the Browser | News | Ep 72

News for the week of June 15, 2026: TypeScript 7 RC, Astro 7, Babel 8, React Router 8, and a new Bun-like DX for Node.js. From the community: k8s simulated in the browser, relocating rigor, and which ...

23 Kesä 1h 9min

Stack Overflow for Agents, Nuxi Agent, and Safari 27 Beta | News | Ep 71

Stack Overflow for Agents, Nuxi Agent, and Safari 27 Beta | News | Ep 71

News for the week of June 8, 2026: Nuxi agent helps you learn Nuxt, Stack Overflow builds a dedicated knowledge base for agents, and new talks from Web Engine Hackfest and JSNation available for your ...

16 Kesä 49min

VoidZero Joins Cloudflare, New npm 12 Security Defaults, and Angular 22 | News | Ep 70

VoidZero Joins Cloudflare, New npm 12 Security Defaults, and Angular 22 | News | Ep 70

News for the week of June 1, 2026: VoidZero joins Cloudflare, npm 12 will fix security defaults, and Angular 22 is out. From the community: tips every TS developer should know, how numpy-ts got faster...

11 Kesä 38min

Astro 6.4, Rust's Restriction on LLMs, and Why tsgo Uses So Much Memory | News | Ep 69

Astro 6.4, Rust's Restriction on LLMs, and Why tsgo Uses So Much Memory | News | Ep 69

News for the week of May 25, 2026: Astro's new Markdown processor API, Rust's take on LLM authorship, and new stage 4 TC39 proposals. From the community: highlights.Sponsored by Excalibur.jsExcalibur....

2 Kesä 1h 6min

Suosittua kategoriassa Politiikka ja uutiset

uutiscast
aikalisa
politiikan-puskaradio
ootsa-kuullut-tasta-2
rss-ootsa-kuullut-tasta
otetaan-yhdet
rss-podme-livebox
rss-seksicast
tervo-halme
linda-maria
rikosmyytit
aihe
rss-kaikki-uusiksi
rss-vaalirankkurit-podcast
rss-sanna-ukkola-show-verkkouutiset
rss-bimbolia
the-ulkopolitist
rss-asiastudio
eevan-politiikkapodi-totuuksia-suomesta
rss-girls-finish-f1rst