[intro.structure] # 4 General principles [[intro]](./#intro) ## 4.2 Structure of this document [intro.structure] [1](#1) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/intro.tex#L1045) [[lex]](lex "5 Lexical conventions") through [[cpp]](cpp "15 Preprocessing directives") describe the C++ programming language[.](#1.sentence-1) That description includes detailed syntactic specifications in a form described in [[syntax]](syntax "4.3 Syntax notation")[.](#1.sentence-2) For convenience, [[gram]](gram "Annex A (informative) Grammar summary") repeats all such syntactic specifications[.](#1.sentence-3) [2](#2) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/intro.tex#L1053) [[support]](support "17 Language support library") through [[exec]](exec "33 Execution control library") and [[depr]](depr "Annex D (normative) Compatibility features") (the [*library clauses*](#def:library_clauses "4.2 Structure of this document [intro.structure]")) describe the C++ standard library[.](#2.sentence-1) That description includes detailed descriptions of the entities and macros that constitute the library, in a form described in [[library]](library "16 Library introduction")[.](#2.sentence-2) [3](#3) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/intro.tex#L1060) [[implimits]](implimits "Annex B (informative) Implementation quantities") recommends lower bounds on the capacity of conforming implementations[.](#3.sentence-1) [4](#4) [#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/intro.tex#L1064) [[diff]](diff "Annex C (informative) Compatibility") summarizes the evolution of C++ since its first published description, and explains in detail the differences between C++ and C[.](#4.sentence-1) Certain features of C++ exist solely for compatibility purposes; [[depr]](depr "Annex D (normative) Compatibility features") describes those features[.](#4.sentence-2)