Languages
- 1361
- Yechiel's Preferred C and C++ Books and Internet Sites
- A collection of information on books and Internet sites related to C and C++. With links to reviews of bad books, tips for choosing good books, and C/C++ courses material.
- 1363
- Adding "extern template" (Version 2)
- A number of compilers allow the programmer to suppress the implicit instantiation of templates by prefixing an explicit instantiation directive with the extern keyword. This document proposes specific semantics for this feature.
- 1364
- Bjarne Stroustrup Expounds on Concepts and the Future of C++
- Danny Kalev asks Bjarne the hard questions about concepts and C++'s future.
- 1365
- Concepts (Revision 1)
- Concepts introduce a type system for templates that makes templates easier to use and easier to write. By checking the requirements that templates place on their parameters prior to template instantiation, concepts can eliminate the spectacularly poor error messages produced by today’s template libraries, making them easier to use. [PDF]
- 1366
- Decltype (Revision 5)
- Suggests extending C++ with a decltype operator for querying the type of an expression. Also suggests a new function declaration syntax, which allows one to place the return type expression syntactically after the list of function parameters. [PDF]
- 1368
- Embedded C++
- A subset of C++ intended for embedded systems programming. It is defined by an industry consortium, the Embedded C++ Technical Committee.
- 1369
- ISO/IEC JTC1/SC22/WG21
- The international standardization working group for the programming language C++.
- 1370
- Library TR1 Information
- Contains links to the latest library TR1 (technical report 1) draft as well as to the most relevant standardization documents that motivate and explain TR1 functionality.
- 1371
- Living By the Rules
- Understanding compiler rules better equips you to interpret messages the compiler sends you.
- 1372
- Memory Model for Multithreaded C++
- Proposes integrating a memory model suitable for multithreaded execution in the C++ Standard. On top of that model, a standard threading library is proposed. [PDF]
- 1373
- Modules in C++ (Revision 4)
- This paper proposes a module mechanism (somewhat similar to that of Modula-2) with three primary goals: significantly improve build times of large projects, enable a better separation between interface and implementation, and provide a viable transition path for existing libraries. [PDF]
- 1374
- Proposal to Add Static Assertions to the Core Language (Revision 3)
- The C++ language currently supports two facilities for testing software assertions: the assert macro and the #error preprocessor directive. Neither of these facilities is appropriate for use in template libraries.
- 1375
- Proposal to add Contract Programming to C++ (Revision 3)
- This proposal describes a small assertion sub-language that unifies compile-time and run-time assertions. The benefits are among others a higher degree of self-documenting source code, better design tools, and easier debugging and testing.
- 1376
- Right Angle Brackets (Revision 2)
- Explains ways to allow >> to be treated as two closing angle brackets, as well as to discuss the resulting issues. A specific option is proposed along with wording that would implement the proposal in the current working paper.
- 1377
- Strict Mode for C++: Early Draft Proposal
- Small number of changes which allow safely encapsulating pointer operations, via "smart pointers" and version of STL with subscript and iterator checks. For next generation of C++ revision cycle; refined with online C++ community.
- 1378
- The C++0x "Remove Concepts" Decision
- This note explains the reasons for the removal of "concepts," briefly outlines the controversy and fears that caused the committee to decide the way it did, gives references for people who would like to explore "concepts," and points out that (despite enthusiastic rumors to the contrary) "the sky is not falling" on C++.
