C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond (C++ In-Depth Series)
By David Abrahams, Aleksey Gurtovoy. 2004
332 citations recorded by the source corpus.
View Paper: https://www.semanticscholar.org/paper/db88c35ef8bfe49af63e9966ee08ad478d255190
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
- Conrad Sanderson
- Dirk Eddelbuettel
- Ryan R. Curtin
- Romain François
- Brian Vinter
- Weifeng Liu
- Gregor Kastner
- Michael Hahsler
Citations in the corpus
- ad-heap: an Efficient Heap Data Structure for Asymmetric Multicore Processors (2014, methodology): “We use a lockless multi-producer single-consumer (MPSC) queue programming tool in the DKit C++ Library [6] (based on multithread components in the Boost C++ Libraries [1]) for simulating the AMP queueing system.”
- RcppArmadillo: Accelerating R with high-performance C++ linear algebra (2014, methodology): “…for various object types, and later extended to a programming construct in its own right called template meta-programming (Vandevoorde and Josuttis, 2002; Abrahams and Gurtovoy, 2004) Operator overloading allows mathematical operations to be extended to userdefined objects, such as matrices.”
- Armadillo: An Open Source C++ Linear Algebra Library for Fast Prototyping and Computationally Intensive Experiments (2010, methodology): “• An efficient delayed-operations framework, based on template meta-programming and recursive templates [1] [19] , allowing fast matrix manipulations.”
- Rcpp: Seamless R and C++ Integration (2011, background): “ Standard Template Library (STL) containers such as std::vector<T> or std::map<T>, as long as the template parameter type T is itself wrappable; A discussion of template metaprogramming (Vandevoorde and Josuttis 2003; Abrahams and Gurtovoy 2004) is beyond the scope of this article.”
- Armadillo: a template-based C++ library for linear algebra (2016, methodology): “Armadillo internally employs an expression evaluator based on template meta-programming techniques (Abrahams and Gurtovoy 2004), to automatically combine several operations in order to increase speed and efficiency.”