Thoughts on the Metaclass proposal
summary
Metaclasses let you enforce constraints, generate members and transform existing members — example: private methods are rejected, the compiler generates a virtual destructor and turns methods pure virtual — while opting a named subset of classes. Compile-time reflection iterates a translation unit to discover conforming types or recurring bug patterns. Tools include Andrew Sutton's Clang fork and cppx.godbolt.org, and an experimental workshop at C++ Montreal proves the workflow works.
AI-written summary · about
chapters (7)
- 0:00Start
- 0:22In a nutshell
- 0:58Example
- 1:25Design patterns
- 2:04Reflection on the whole translation unit
- 2:39Immutable first
- 3:58Experiment right now
related talks
02h 02mPeering forward: C++'s next decade
01h 39mKeynote - C++ Metaprogramming: evolution and future direction
01h 05mC++ Reflection Based Libraries to Look Forward To
01h 03mC++ Reflection: Back on Track
01h 36mPlenary: Cooperative C++ Evolution - Toward a Typescript for C++
54mCompile-Time Validation in C++ Programming
55mHow bad is meta-programming still today?
01h 18mMeta Polymorphism
