Interactive Metaprogramming Shell based on Clang
summary
An interactive C++ metaprogramming shell based on Clang exposes actual template execution: a patched Clang (templight) emits a template instantiation trace that a debugger replays, giving forward/back traces, breakpoints and GDB‑like stepping. The project implements meta shell plus an MDB debugger, supports include paths and environment reloads, evaluates boxed integers/booleans, and demonstrates Fibonacci and factorial metaprograms interactively. The tools work live (online demo and installers exist) and reveal concrete instantiation order and types rather than vague examples.
AI-written summary · about
chapters (15)
- 0:00Intro
- 0:20Agenda
- 8:33Metaprogramming in C++
- 9:05Application areas
- 9:31Lambda expressions
- 10:47Expression templates
- 11:08Parsing at compile time
- 11:59C++ template metaprogramming
- 14:24C++ template metafunction
- 16:23Metashell demo
- 31:03Technical break
- 31:32Tool support
- 33:02Fibonacci
- 40:02Metadebugger
- 45:00Future plans
related talks
45mCycript: JS/ObjC/Java Hybrid REPL
27mParsing, Compiling, and Static Metaprogramming
34mVisualising program execution
31mJavaScript Compilers For Fun and Profit
22mImplement an Esoteric Programming Language for Fun
32mFeedback and the REPL
56mEmbind and Emscripten: Blending C++11, JavaScript, and the Web Browser
50mMetaprogramming in JavaScript
