Software Unscripted

Richard Feldman
undefined
Oct 22, 2023 • 1h 7min

Disassembling Languages with Matt Godbolt

Matt Godbolt, author of godbolt.org Compiler Explorer, discusses disassembling language designs including reference counting optimizations, destructors and unwinding, and defending the decision of NaN != NaN. They also explore the benefits of Dwarf Debug Format, stack unwinding, memory allocation strategies, and the logic behind NaN in programming. Additionally, they touch on reference counting implementation and advantages of atomic instructions for thread sharing.
undefined
Oct 13, 2023 • 1h 5min

Designing Compilers for Speed with Troels Henriksen

In this podcast, Troels Henriksen, co-creator of the Futhark language, shares insights on designing compilers for faster performance. They discuss challenges in identifying dependencies in recursive functions, bringing names and scopes into functions, and the benefits of a compact tree representation in compiler design. They also explore how compilers can optimize program performance, the evolution of efficient function programming, and the goal of creating a fast functional programming language with automatic memory management.
undefined
Sep 21, 2023 • 1h 26min

Gradual vs Static Typing with José Valim

Richard talks with José Valim, creator of Elixir, about gradual vs static typing. They discuss dynamic typing in TypeScript, expressiveness and correctness in API design, resurgence of static typing, notebooks in data science, and the tug of war between gradual and static typing.
undefined
Sep 12, 2023 • 58min

The SemVer Rabbit Hole with Predrag Gruevski

Richard interviews Predrag Gruevski, author of cargo-semver-checks, on the challenges of semantic versioning in Rust, trade-offs in enforcement, issues with changing function types, alternative versioning, minor and patch versions, and automation in versioning schemes. They also discuss the tools rock glue and Trustfall for embedding rocks and querying codebases.
undefined
Sep 7, 2023 • 50min

Type System Complexity with Chris Krycho

Chris Krycho, TypeScript expert, discusses challenges of migrating code to TypeScript at LinkedIn, trade-offs between Rust and TypeScript in companies and operating systems, differences between JSON decoders in Elm and TypeScript, handling payload errors and backwards compatibility, complexities of TypeScript's type system, and balancing API hiding and exposing.
undefined
Aug 17, 2023 • 1h 18min

Making Parsing I/O Bound with Daniel Lemire

Daniel Lemire, creator of simdjson, the fastest JSON parser, discusses parsing performance, benchmarking, and real-world experimentation. They explore multi-threading benefits in parsing, eliminating parsing steps with Captain Proto, iterative development, AVX2 and AVX512 performance impact, handling comments and strings, different parsing approaches, and surprising results with hash maps and index maps in the Rust compiler.
undefined
Aug 8, 2023 • 55min

Niche Domain Knowledge with Ashley Williams

Richard talks with former Rust core team member Ashley Williams, aka ag_dubs,, about various different types of niche domain knowledge - from CSS tricks in web development to low-level systems programming, package managers, and even organization-specific domain knowledge. Hosted on Acast. See acast.com/privacy for more information.
undefined
12 snips
Jul 19, 2023 • 57min

Building a Terminal in Zig and Swift with Mitchell Hashimoto

Richard talks with HashiCorp cofounder Mitchell Hashimoto about a side project of his: a high-performance terminal emulator that he wrote using Zig and Swift, and which has become his daily driver terminal. Hosted on Acast. See acast.com/privacy for more information.
undefined
Jul 11, 2023 • 50min

React Hooks Design Review

Hosted on Acast. See acast.com/privacy for more information.
undefined
Jul 5, 2023 • 47min

Thinking in Array Languages with Alex Shroyer

Richard talks to to Alex Shroyer about his unusually extensive experiences with Array Languages like APL and J - where they come from, how they have more to offer than just extreme conciseness, and what feature creep looks like in a language that's mostly symbols.Links to Alex's website and more info about array languages:alexshroyer.comhttps://nsl.com/https://vector.org.uk/https://github.com/interregna/arraylanguage-companieshttps://tryapl.org/https://bqnpad.mechanize.systems/https://www.arraycast.com/https://aplwiki.com/wiki/APL_Farmhttps://discord.com/invite/yHna7nt7zx Hosted on Acast. See acast.com/privacy for more information.

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app