boost.tmp: your DSL for Metaprogramming
summary
A new DSL called boost.tmp implements tacit template metaprogramming in C++11, with lazy-by-default expression templates, pipe-like composition and a call macro that lets closures manipulate packs and short-circuit decisions. Benchmarks show order of magnitude faster type-manipulation than Hana and consistent speedups versus std traits (examples use 500-element lists and is_same microbenchmarks). It handles SFINAE via a maybe/nothing model and tag-dispatch to avoid exploding instantiations; prototype exists but remains young and experimental.
AI-written summary · about
chapters (7)
- 0:00Start
- 4:16What's the Most Common Meta Programming Feature
- 8:52Template Argument Deduction
- 18:57Standard Conjunction
- 31:03Memoization
- 33:47Benchmark
- 35:50Tacit Metaprogramming
related talks
41mTemplate meta-programming: Why you must get it
01h 39mKeynote - C++ Metaprogramming: evolution and future direction
54mModern Template Techniques
01h 10mThe Three Little Dots and the Big Bad Lambdas
01h 22mCostless Software Abstractions for Parallel Architectures
59mModern Template Metaprogramming: A Compendium, Part II
40mAn inspiring introduction into Template Meta Programming
01h 00mMetaprogramming with Boost.Hana: Unifying Boost.Fusion and Boost.MPL
