Thesis (PhD) - Indiana University, Computer Sciences, 2008Most programming languages do not allow programs to inspect their static type information or perform computations on it. C++, however, lets programmers write template metaprograms, which enable programs to encode static information, perform compile-time computations, and make static decisions about run-time behavior. Many C++ libraries and applications use template metaprogramming to build specialized abstraction mechanisms, implement domain-specific safety checks, and improve run-time performance. Template metaprogramming is an emergent capability of the C++ type system, and the C++ language specification is informal and imprecise. As a result, template metaprogramming oft...
International audienceIn generic programming, software components are parameterized on types. When a...
Abstract. Template metaprogramming (TMP) is an emerging new di-rection in C++ programming for execut...
Any partial recursive function can be computed at compile time, using C++ templates to define primi...
We investigate the relationship between C++ template metaprogramming and computational complexity, s...
This paper describes the Boost C++ template metaprogramming library (MPL), an extensible compile-tim...
Template metaprogramming is an emerging new direction of gen-erative programming: with the clever de...
Any partial recursive function can be computed at compile time, using C++ templates to define primi...
The C++ language has only a limited runtime type information system, which doesn’t provide full refl...
Templates are a language feature of C++ and can be used for metaprogramming. The metaprogram is exec...
We investigate the relationship between template metaprogramming and computational complexity, show...
Reflective Metaprogramming is capable of inspecting code, enables us to write templates, and can aut...
C++ does not support run-time resolution of template type arguments. To circumvent this restriction,...
AbstractC++ template metaprogramming is often regarded as a functional language, however, nowadays m...
The template system of C++ is expressive enough to allow the programmer to write programs which are ...
Abstract. Templates are a powerful but poorly understood feature of the C++ language. Their syntax r...
International audienceIn generic programming, software components are parameterized on types. When a...
Abstract. Template metaprogramming (TMP) is an emerging new di-rection in C++ programming for execut...
Any partial recursive function can be computed at compile time, using C++ templates to define primi...
We investigate the relationship between C++ template metaprogramming and computational complexity, s...
This paper describes the Boost C++ template metaprogramming library (MPL), an extensible compile-tim...
Template metaprogramming is an emerging new direction of gen-erative programming: with the clever de...
Any partial recursive function can be computed at compile time, using C++ templates to define primi...
The C++ language has only a limited runtime type information system, which doesn’t provide full refl...
Templates are a language feature of C++ and can be used for metaprogramming. The metaprogram is exec...
We investigate the relationship between template metaprogramming and computational complexity, show...
Reflective Metaprogramming is capable of inspecting code, enables us to write templates, and can aut...
C++ does not support run-time resolution of template type arguments. To circumvent this restriction,...
AbstractC++ template metaprogramming is often regarded as a functional language, however, nowadays m...
The template system of C++ is expressive enough to allow the programmer to write programs which are ...
Abstract. Templates are a powerful but poorly understood feature of the C++ language. Their syntax r...
International audienceIn generic programming, software components are parameterized on types. When a...
Abstract. Template metaprogramming (TMP) is an emerging new di-rection in C++ programming for execut...
Any partial recursive function can be computed at compile time, using C++ templates to define primi...