Scripting at the Speed of Thought: Lua and C++ with sol3
summary
A C++ binding library that replaces tuple-heavy compile‑time plumbing with a runtime-backed registry, sol2/sol3 exposes C++ classes as Lua usertypes with automatic overloading, container and pointer support and a sol::reference ARC type, plus convenience stack::push/get/check helpers and proxy conversions. The new usertype storage drops about 15% less compile time in tests, runs benchmarks against 13 libraries and matches sol2 performance while improving inheritance lookups and interoperating with other binders like Kaguya.
AI-written summary · about
chapters (15)
- 0:00Introduction to scripting
- 3:24Lua fundamentals
- 6:51Limitations of C API
- 10:21Abstracting the C API
- 14:00Reference management
- 16:48Type handling and proxies
- 19:32Language limitations
- 22:18User types and binding
- 27:55Automatic registration
- 30:39Interop with other libraries
- 36:12Customization points
- 42:28Compile time and performance
- 47:11Benchmarks and results
- 51:52Future improvements
- 54:13Conclusion and Q&A
related talks
01h 33mC++20 + Lua = Flexibility
33mHowling at the Moon: Lua for C++ Programmers
01h 01mSecrets of C++ Scripting Bindings: Bridging Compile Time and Run Time
35mInterfacing Lua and Ruby with C
47mRapid Development of Software Solutions with C++ and Lua
01h 00m“Practical Performance Practices"
01h 03mFrom acrobatics to ergonomics: a field report on how to Make libraries helpful
01h 44mImproving C++ Compilation Times: Tools & Techniques
