Nim Nuggets: Systems Programming & Metaprogramming Magic
summary
Fast compiler bootstraps from C in about 6 minutes and the Nim LSP builds from scratch in ~1 minute, enabling very quick feedback. The talk shows true compile‑time introspection (a macro that diffs two record types and generates a compile‑time migrate path), static resource management with destructor hooks and affine‑style sinks, and working C++ interop that uses std::vector/unique_ptr and emits a compile‑time factorial; demos run and are valgrind clean.
AI-written summary · about
chapters (31)
- 0:00Intro
- 0:15What is Nim
- 1:17Why Nim
- 2:35Static introspection
- 3:06Interop
- 4:01C
- 6:05Manual Memory Management
- 8:03You Can Do It
- 9:00Uniform Function Call Syntax
- 9:59Functions
- 10:18Data Exploration
- 11:01Static introspection
- 12:02Compile time
- 13:56Type calculation
- 14:50Fizzbuzz
- 15:26Migration
- 16:19Migration Story
- 16:31Why Care
- 17:21Embrace the boilerplate
- 18:07Good first issues
- 18:38Demo
- 22:58Takeaway
- 23:36Static Resource Management
- 26:47Destructor Injection
- 27:06Linear Types
- 30:32Getting Out of the Users Way
- 31:27Disable Copying
- 32:13Resource Management
- 32:44C Interrupt
- 40:07Low Risk Gamble
- 40:27Wrap Up
related talks
01h 13mJai Demo and Design Explanation (KEYNOTE) - Updated
01h 04mWhat Can Compiler Benchmarks Reveal About Metaprogramming Implementation Strategies
39mLightning talks
01h 00mJust-in-Time Compilation
54mRapid Prototyping in C++
55mHow bad is meta-programming still today?
39mLightning Talks
01h 22mCostless Software Abstractions for Parallel Architectures
