Rustacean Station

Migrating C to Rust with Jonas Kruckenberg

Freitag, 30. Oktober 2026 · 30 min

MP3

Shownotes

Allen Wyma talks with Jonas Kruckenberg (jonaskruckenberg.de) from Mainmatter (mainmatter.com) about migrating production C and C++ codebases to Rust and the C to Rust Migration Book (mainmatter.com/c-to-rust-migration-book). They discuss incremental migration, refactoring legacy code, designing safe FFI boundaries, and testing undefined behavior.

Contributing to Rustacean Station

Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor!

• Twitter: @rustaceanfm (twitter.com/rustaceanfm)

• Discord: Rustacean Station (discord.gg/cHc3Gyc)

• Github: @rustacean-station (github.com/rustacean-station)

• Email: hello@rustacean-station.org

Timestamps

• [@00:00] - Intro

• [@00:10] - Welcome and introducing Jonas Kruckenberg

• [@01:52] - From JavaScript and Tauri to Rust, k23, and Mainmatter

• [@04:41] - Incremental migration versus a complete rewrite

• [@07:51] - The C to Rust Migration Book

• [@13:11] - Why starting with leaf modules can fail

• [@15:31] - Refactoring C before rewriting it in Rust

• [@17:26] - Building safe Rust interfaces over C linked lists

• [@22:06] - Undefined behavior and legacy FFI code

• [@23:29] - Porting strcmp calls with null pointers

• [@25:24] - Testing tools, assertions, and the FFI trust boundary

• [@27:39] - Finding the book and getting in touch

• [@28:25] - Memory safety and the future of Rust

Referenced resources

• The C to Rust Migration Book (mainmatter.com/c-to-rust-migration-book)

• Tauri (tauri.app)

• github.com/JonasKruckenberg/k23

Credits

Intro Theme: twitter.com/AerocityMusic

Audio Editing: Plangora (twitter.com/plangora)

Hosting Infrastructure: Jon Gjengset (thesquareplanet.com)

Show Notes: Plangora (twitter.com/plangora)

Hosts: Allen Wyma (twitter.com/allenwyma)

0:00 / 0:00