Compilers, Runtimes, and Funtimes | Ep 5


Episode Artwork
1.0x
0% played 00:00 00:00
Feb 17 2025 63 mins   1

This week Kamran and Erik try to dissect the complex landscape of JavaScript and TypeScript compilers, transpilers, interpreters, engines, and runtimes (oh my!). What are the tools, what are they used for, why is the world so complicated, and what should you care about as a TS developer?

  • (04:55) - This Week in TypeScript: Node.js Corepack Issue Affects Users

  • (06:16) - This Week in TypeScript: Vite and Vitest Security Vulnerabilities

  • (07:18) - This Week in TypeScript: 2ality on Enum Patterns

  • (08:51) - This Week in TypeScript: 2ality's Tutorial on Publishing ESM Packages with TypeScript

  • (09:53) - This Week in TypeScript: Should We Move On to ESM-Only?

  • (13:13) - This Week in TypeScript: HTTP2 Support Across Node.js, Bun, and Deno... Or Lack Thereof

  • (14:14) - This Week in TypeScript: Nx Has Some New TypeScript Monorepo Guides

  • (14:38) - This Week in TypeScript: Zero to Mastery Shares a TypeScript Cheat Sheet

  • (15:09) - This Week in TypeScript: TS Comment Directives

  • (17:21) - Deep Dive: Compilers and Runtimes

  • (19:32) - Deep Dive: What's the Difference Between a Compiler and Transpiler?

  • (21:11) - Deep Dive: Why Do We Need a TypeScript Compiler?

  • (22:02) - Deep Dive: The TypeScript Compiler (TSC)

  • (23:38) - Deep Dive: What's an Interpreter?

  • (25:06) - Deep Dive: What's an Engine?

  • (27:52) - Deep Dive: Recap So Far

  • (28:31) - Deep Dive: Babel, the OG Transpiler

  • (29:23) - Deep Dive: What is SWC?

  • (31:12) - Deep Dive: Using the verbatimModuleSyntax TSConfig Flag

  • (32:35) - Deep Dive: What is esbuild?

  • (34:23) - Deep Dive: Okay, What's the Difference Between SWC and esbuild?

  • (35:51) - Deep Dive: So, What is oxc Then??

  • (37:03) - Deep Dive: Erik Says checker.ts is "Gigundous" (???)

  • (37:58) - Deep Dive: Wait, oxc Can Output Type Declarations?!

  • (39:34) - Deep Dive: Writing Your TypeScript So It Compiles Faster

  • (41:10) - Deep Dive: What Does deno compile Do?

  • (42:12) - Deep Dive: What Are The Different JS/TS Runtimes?

  • (43:43) - Deep Dive: What Differentiates Bun from Deno?

  • (45:26) - Deep Dive: Serverless JavaScript Runtimes (workerd, Vercel Edge)

  • (46:48) - Deep Dive: Writing Isomorphic JavaScript or TypeScript

  • (47:44) - Deep Dive: Who Will Stop This Madness?

  • (50:11) - Deep Dive: Should Microsoft "Fix" TSC?

  • (53:43) - Deep Dive: WHAT DOES ALL THIS MEAN?

  • (57:36) - Secrets of the Handbook: Named Tuple Values

  • (01:00:59) - Cool Stuff: Node ES Language Support Matrix

  • (01:01:46) - Cool Stuff: VSCode Pretty TS Error Extension


Week of February 3, 2025

Community Highlights


Compilers and Runtimes Deep Dive


Links


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