Evolving API design in Rust
summary
Built a small 2D game engine called GG EZ by copying the Love 2D API into Rust and it works for real games, so the claim is: prefer simple, low-magic APIs that interoperate with ecosystem crates. Uses AppDirs, VFS, GFX RS, algebra and tokio as case studies and shows copy Love 2D API into Rust leads to usable code, while heavy trait metaprogramming (GFX RS, algebra) buys compile-time safety at the cost of discoverability. Iteration, real users and keeps complexity budget low decide redesigns.
AI-written summary · about
chapters (16)
- 0:00Intro
- 0:30GGEasy
- 3:10Ask for advice
- 3:45How to design a good API
- 5:30Drawing functions
- 7:05GGEZ
- 10:55Good API in Rust
- 12:30The Creator
- 13:20Algebra
- 14:40Know your tools
- 15:35Rust makes things subtly terrible
- 16:45Static strings
- 17:50Virtual file systems
- 18:45Path
- 19:50Design decisions
- 22:10Conclusion
related talks
43mClosing Keynote
41mType-Driven API Design in Rust
40mWriting a simple game in Rust
40mRust’s approach of getting things right
24mJourney to Fullstack Mobile Game Development in Rust
26mMaking Rust more Accessible through Game Development
31mA Rust Crate that also quacks like a modern C++ Library
02h 13m2D Graph scene in Rust
