Resolving Template MetaProgramming Challenges Using Type_expr
summary
Type_Expr is a C++ TMP library that rewrites and extends Fabio.npl ideas and shows concrete techniques: crash compiler to inspect types via diagnostic-driven debugging and an eval_pipe style pipeline, a zip-with-index approach to build element storage, and a constructor-tag trick that maps a sorted tuple by type size back to positional arguments to minimize layout. It demonstrates a limited std::format clone using the detection idiom for selective indexing, and supports compile-time function generation like compile-time eval/eval_pipe plus helpers (fork, respectively, repeat, group_by, unique).
AI-written summary · about
chapters (9)
- 0:00Introduction to library
- 1:07Debugging template metaprogramming
- 5:26Simple Tuple implementation
- 13:42Expanding type lists
- 19:20Optimizing Tuple storage
- 28:48Limited std::format implementation
- 41:20Comparison with other libraries
- 50:20Library functions showcase
- 1:00:52Q&A and performance
related talks
50mExpression Templates: Past, Present, Future
01h 06mExpression Templates - Past, Present, Future
59mExpression Templates: Past, Present, Future
01h 01m“How bad is Meta-Programming still today?"
57mIntroduction to C++ Template Metaprogramming
01h 00mModern Template Metaprogramming: A Compendium, Part I
01h 30mRethinking the Way We Do Templates in C++
58mExploration of C++20 Meta Programming
