# Gabriel Nordeborn - Rescript Page: https://stenobird.com/podcast/devtools-fm/gabriel-nordeborn-rescript Text version: https://stenobird.com/podcast/devtools-fm/gabriel-nordeborn-rescript.md Podcast: [devtools.fm: Developer Tools, Open Source, Software Development](https://stenobird.com/podcast/devtools-fm) Published: 2025-10-06T06:09:47+00:00 Episode link: https://podcasters.spotify.com/pod/show/devtoolsfm/episodes/Gabriel-Nordeborn---Rescript-e3952di Audio file: https://anchor.fm/s/dd6922b4/podcast/play/109266802/https%3A%2F%2Fd3ctxlq1ktw2nl.cloudfront.net%2Fstaging%2F2025-9-6%2F408732346-44100-2-59f10999362ca.m4a Processing state: processed JSON: https://stenobird.com/v1/public/podcasts/devtools-fm/episodes/gabriel-nordeborn-rescript Duration seconds: 2891 ## Resource Explore the design philosophy of ReScript, a strongly typed language that compiles to JavaScript with a focus on simplicity and fast feedback loops. Learn how its sound type system and native error handling provide a more maintainable alternative to TypeScript. ## Highlights - Main idea: ReScript prioritizes a small, simple language surface area to ensure high maintainability and fast compilation - Practical takeaway: Use ReScript's native Result and Option types to enforce exhaustive error handling across your entire call stack - Failure mode: Avoid treating JavaScript interop as a 1:1 mapping; writing effective bindings is an art that requires tailoring APIs to ReScript's strengths - Main idea: The language leverages polymorphic variants and structural typing to track possible error states automatically through inference - Practical takeaway: ReScript version 12 is moving toward a more JavaScript-centric identity by cleaning up legacy build systems and optimizing for the modern web ## Topics ReScript, TypeScript, Functional Programming, Type Systems, JavaScript Interop, React, Compiler Design, Software Engineering ## Chapters - 1:00 — Introduction to Gabriel Nordeborn: Gabriel discusses his background in behavioral science and his transition into software engineering. - 11:20 — The ReScript Philosophy: An overview of ReScript's focus on simplicity, fast compiler feedback, and its contrast with TypeScript. - 15:05 — Core Language Features: A look at variants, records, and pattern matching, and the importance of adding features with a high bar for cost. - 19:00 — Error Handling and Async: Discussing the benefits of using Result types and the pitfalls of unhandled errors in async/await patterns. - 22:40 — JavaScript Interop and Bindings: The challenges of defining types for the JavaScript ecosystem and the art of writing effective bindings. - 33:30 — React Integration and Ecosystem: How ReScript supports React and the ongoing efforts to maintain compatibility with modern React features. - 41:00 — The Future of ReScript: Insights into the ReScript version 12 roadmap, including build system cleanups and AI-driven error correction. ## Actions - request_transcript: `POST https://stenobird.com/v1/public/podcasts/devtools-fm/episodes/gabriel-nordeborn-rescript/transcription-requests` — Idempotently request low-priority transcript generation for this episode. - read_markdown: `GET https://stenobird.com/podcast/devtools-fm/gabriel-nordeborn-rescript.md` — Read the agent-friendly Markdown representation of this episode resource. A page view does not enqueue transcription. Agents should invoke `request_transcript` explicitly when they need this episode processed. ## Transcript Full transcripts are not published on public pages unless there is a clear rights basis.