JavaScript Jabber

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

9 snips
Aug 1, 2025
Dimitri Mitropoulos, the mastermind behind running Doom within TypeScript's type system and co-founder of SquiggleConf, dives into this mind-bending experience. He explores the evolution of TypeScript to Turing-completeness and the philosophical implications of his project. Discover the challenges of type-level programming, functional recursion, and even ASCII art as output. Dimitri shares his journey fueled by determination and obsession, reflecting on balancing personal life and burnout while pushing the boundaries of computation in a unique, geeky way.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
INSIGHT

TypeScript's Powerful Type System

  • TypeScript's type system evolved from simple types to powerful constructs like literal types and generics.
  • It acts as a mini programming language layered on JavaScript, enabling complex type-level programming.
INSIGHT

Limits of Turing Completeness

  • Being Turing complete means a system can perform any computation, like a universal computer.
  • However, practical usefulness depends on constraints like time and memory, not just theoretical completeness.
INSIGHT

Recursion Powers TypeScript Loops

  • TypeScript type system has no explicit loops but uses recursion within conditionals to achieve looping.
  • The entire state machine logic in the project is handled via pure functional recursion and conditionals.
Get the Snipd Podcast app to discover more snips from this episode
Get the app