{"podcast":{"title":"devtools.fm: Developer Tools, Open Source, Software Development","slug":"devtools-fm","podcast_index_feed_id":3745116,"rss_url":"https://anchor.fm/s/dd6922b4/podcast/rss","website_url":"https://devtools.fm","image_url":"https://d3t3ozftmdmh3i.cloudfront.net/staging/podcast_uploaded_nologo/37046549/ce6a315e5ecf42d2.jpeg","author":"Andrew Lisowski, Justin Bennett","episode_count":172,"summary":"A podcast about developer tools and the people who make them. Join us as we embark on a journey to explore modern developer tooling and interview the people who make it possible. We love talking to the creators front-end frameworks (React, Solid, Svelte, Vue, Angular, etc), JavaScript and TypeScript runtimes (Node, Deno, Bun), Languages (Unison, Elixor, Rust, Zig), web tech (WASM, Web Containers, WebGPU, WebGL), database providers (Turso, Planetscale, Supabase, EdgeDB), and platforms (SST, AWS, Vercel, Netlify, Fly.io).","last_synced_at":null,"page_url":"https://stenobird.com/podcast/devtools-fm"},"episode":{"title":"Gabriel Nordeborn - Rescript","slug":"gabriel-nordeborn-rescript","published_at":"2025-10-06T06:09:47+00:00","page_url":"https://stenobird.com/podcast/devtools-fm/gabriel-nordeborn-rescript","show_page_url":"https://stenobird.com/podcast/devtools-fm","url":"https://podcasters.spotify.com/pod/show/devtoolsfm/episodes/Gabriel-Nordeborn---Rescript-e3952di","audio_url":"https://anchor.fm/s/dd6922b4/podcast/play/109266802/https%3A%2F%2Fd3ctxlq1ktw2nl.cloudfront.net%2Fstaging%2F2025-9-6%2F408732346-44100-2-59f10999362ca.m4a","summary":"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.","meta_description":"A deep dive into ReScript: a web-focused language featuring pattern matching, robust React integration, and a focus on developer productivity.","key_points":["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"],"chapters":[{"start_ms":60000,"title":"Introduction to Gabriel Nordeborn","summary":"Gabriel discusses his background in behavioral science and his transition into software engineering."},{"start_ms":680000,"title":"The ReScript Philosophy","summary":"An overview of ReScript's focus on simplicity, fast compiler feedback, and its contrast with TypeScript."},{"start_ms":905000,"title":"Core Language Features","summary":"A look at variants, records, and pattern matching, and the importance of adding features with a high bar for cost."},{"start_ms":1140000,"title":"Error Handling and Async","summary":"Discussing the benefits of using Result types and the pitfalls of unhandled errors in async/await patterns."},{"start_ms":1360000,"title":"JavaScript Interop and Bindings","summary":"The challenges of defining types for the JavaScript ecosystem and the art of writing effective bindings."},{"start_ms":2010000,"title":"React Integration and Ecosystem","summary":"How ReScript supports React and the ongoing efforts to maintain compatibility with modern React features."},{"start_ms":2460000,"title":"The Future of ReScript","summary":"Insights into the ReScript version 12 roadmap, including build system cleanups and AI-driven error correction."}],"topics":["ReScript","TypeScript","Functional Programming","Type Systems","JavaScript Interop","React","Compiler Design","Software Engineering"],"duration_seconds":2891,"processing_state":"processed","actions":[{"name":"request_transcript","method":"POST","url":"https://stenobird.com/v1/public/podcasts/devtools-fm/episodes/gabriel-nordeborn-rescript/transcription-requests","description":"Idempotently request low-priority transcript generation for this episode."},{"name":"read_markdown","method":"GET","url":"https://stenobird.com/podcast/devtools-fm/gabriel-nordeborn-rescript.md","description":"Read the agent-friendly Markdown representation of this episode resource."}]}}