Vol. 8, No. 5, September–October Z A Semantic Definition of Separate Type Checking in C ++ with Concepts
BibTeX
@MISC{Zalewski_vol.8,,
author = {Marcin Zalewski},
title = {Vol. 8, No. 5, September–October Z A Semantic Definition of Separate Type Checking in C ++ with Concepts},
year = {}
}
OpenURL
Abstract
We formalize the informal definition of C ++ concepts that is currently considered by the C ++ standardization committee for inclusion in the next version of the language. Our definition captures the basic semantics of separate type checking, where conceptconstrained templates are checked separately from their uses and comprises of three main parts: non-standard name lookup, type checking of constrained templates, and implementation binding in concept maps. The formalization reveals two possible problems in the informal definition: hiding of names is not respected and incompatible implementations can be bound to concept entities. Furthermore, our definition allows formulating intuitively correct code that is rejected by the informal specification. 1







