~/talk

Secrets of C++ Scripting Bindings: Bridging Compile Time and Run Time

slides:none on file

Starts from first principles and actually builds a tiny scripting engine (complete, runnable 96-line engine) that registers C++ functions via template deduction, boxes values with std::any vs std::variant tradeoffs, and dispatches calls with a simple stack-based runtime. Covers practical limits: overload resolution costs, handling noexcept/const/ref qualifiers, static_casts for overloads, and why Lua/sol2 Swig pybind ChaiScript approaches differ. Includes CompilerExplorer link and runnable example.

AI-written summary · about

  1. 0:00Introduction
  2. 1:48Why this talk
  3. 3:36SWIG overview and limits
  4. 7:21ChaiScript intro and features
  5. 9:47Minimal ChaiScript example
  6. 12:37Conexper evolution
  7. 14:05Goals of demo
  8. 15:30Scripting engine interface
  9. 21:35Function pointers and qualifiers
  10. 27:39Function binding evolution
  11. 31:52Generic function storage types
  12. 35:26Function registration system
  13. 36:54Generic function invokers
  14. 40:54Function names and arity tracking
  15. 41:59Invoking runtime functions
  16. 43:22Compile-time knowledge importance
  17. 44:56Stack-based execution
  18. 46:19Stack language rules
  19. 47:22Void return handling
  20. 49:13Overloading challenges
  21. 50:16Stack management execution
  22. 51:40Script parsing to commands
  23. 52:0496-line engine demo
  24. 53:27Performance and data structures
  25. 55:18Overloading strategies
  26. 57:51Type-based overloading
  27. 58:55SWIG overload resolution
  28. 59:18Homework and improvements
  29. 1:00:01Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.