C++ Mixins
summary
Claims a composition system for bare‑metal C++ that replaces virtuals with static interface mixins and implementation mixins found by ability tags, implemented via a factory alias make_mixin, ADL for for_each and an access/protect cast trick. Demonstrations target microcontrollers and a 100‑widget tree that compiles in about a minute with tiny release size; profiler comparisons claim vendor drivers lose by orders of magnitude (he cites ~300×). Works functionally but leaves hard problems: constructors, debug bloat and confusing template errors.
AI-written summary · about
chapters (13)
- 0:00Einleitung
- 1:57Bare metal drivers
- 12:14Associating abilities with a mixin
- 16:50Encapsulation
- 19:38Inter implementation mixin access
- 20:52Init and Destruct
- 25:25Dynamic mixins
- 37:37Statically linking Widgets
- 41:07Event dispatch
- 42:30Signals slots
- 44:17Step
- 47:52Liberasure style composable type erasure
- 52:11@odinthenerd
related talks
05mDynaMix: A New Take on Polymorphism in C++
01h 04mFunctional C++ for Fun and Profit
01h 05mExpressing Implementation Sameness and Similarity - Polymorphism in Modern C++
01h 18mMeta Polymorphism
05mWishful Thinking
54mC++26: an overview
01h 00mLightweight Operator Fusion Using Data-Centric Function Interfaces in C++
05mThoughts on the Metaclass proposal
