Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.


This section lists all references consulted while designing and developing this library.

[Andrzej13] A. Krzemienski. Andrzej's C++ blog: Preconditions. 2013.

[Bright04] W. Bright. Contract Programming for the D Programming Language. 2004.

[Bright04b] W. Bright. Contract Programming for the Digital Mars C++ Compiler. 2004.

[C2] Aechmea. C^2 Contract Programming add-on for C++. 2005.

[Chrome] RemObjects. Chrome: Contract Programming for Object Pascal in .NET. 2002.

[Clarke06] L. A. Clarke and D. S. Rosenblum. A Historical Perspective on Runtime Assertion Checking in Software Development. Newsletter ACM SIGSOFT Software Engineering Notes, 2006.

[Cline90] M. Cline and D. Lea. The Behaviour of C++ Classes and Using Annotated C++. Proc. of the Symposium on Object Oriented Programming Emphasizing Practical Applications, Maris College, 1990.

[Ellis90] M. A. Ellis and B. Stroustrup. The Annotated C++ Reference Manual. ANSI Base Document, Addison Wesley, 1990.

[Gautron92] P. Gautron. An Assertion Mechanism Based on Exceptions. Fourth C++ Technical Conference, 1992.

[Hoare73] C. A. R. Hoare. Hints on Programming Language Design. Stanford University Artificial Intelligence memo AIM-224/STAN-CS-73-403, pages 193-216, 1973.

[CodeContracts] Microsoft Research. Code Contracts: Design-By-Contract Programming for All .NET Programming Languages. 2012.

[iContract] O. Enseling. iContract: Contract Programming for Java. 2001.

[Jcontract] Parasoft. Jcontract: Contract Programming for Java.

[Lindrud04] J. Lindrud. Design by Contract in C++. 2004.

[Maley99] D. Maley and I. Spence. Emulating Design by Contract in C++. Proceedings of TOOLS, IEEE Computer Society, 1999.

[Meyer97] B. Meyer. Object Oriented Software Construction. Prentice-Hall, 2nd edition, 1997.

[Mitchell02] R. Mitchell and J. McKim. Design by Contract, by Example. Addison-Wesley, 2002.

[N1613] T. Ottosen. Proposal to add Design by Contract to C++. The C++ Standards Committee, N1613, 2004.

[N1653] C. Nelson. Working draft changes for C99 preprocessor synchronization. C++ Standards Committee, N1653, 2004.

[N1669] T. Ottosen. Proposal to add Contract Programming to C++ (revision 1). The C++ Standards Committee, N1669, 2004.

[N1773] D. Abrahams, L. Crowl, T. Ottosen, and J. Widman. Proposal to add Contract Programming to C++ (revision 2). The C++ Standards Committee, N1773, 2005.

[N1866] L. Crowl and T. Ottosen. Proposal to add Contract Programming to C++ (revision 3). The C++ Standards Committee, N1866, 2005.

[N1895] H. Sutter and F. Glassborow. Delegating Constructors (revision 2). C++ Standards Committee, N1895, 2005.

[N1962] L. Crowl and T. Ottosen. Proposal to add Contract Programming to C++ (revision 4). The C++ Standards Committee, N1962, 2006.

[N2081] D. Gregor and B. Stroustrup. Concepts (revision 1). The C++ Standards Committee, N2081, 2006.

[N2887] G. Dos Reis, B. Stroustrup, and A. Meredith. Axioms: Semantics Aspects of C++ Concepts. The C++ Standards Committee, N2887, 2009.

[N2914] P. Becker. Working Draft, Standard for Programming Language C++. The C++ Standards Committee, N2914, 2009.

[N2906] B. Stroustrup. Simplifying the sue of concepts. The C++ Standards Committee, N2906, 2009.

[N3248] J. Lakos. noexcept Prevents Library Validation. The C++ Standards Committee, N3248, 2011.

[N4154] D. Krauss. Operator assert. The C++ Standards Committee, N4154, 2014.

[N4160] A. Krzemienski. Value constraints. The C++ Standards Committee, N4160, 2014.

[N4248] A. Meredith. Library Preconditions are a Language Feature. The C++ Standards Committee, N4248, 2014.

[N4293] J. D. Garcia. C++ language support for contract programming. The C++ Standards Committee, N4293, 2014.

[N4378] J. Lakos, N. Myers, A. Zakharov, and A. Beels. Language Support for Contract Assertions (Revision 10). The C++ Standards Committee, N4378, 2015.

[Nana] P. J. Maker. GNU Nana. 2014.

[N4378] J. Lakos and N. Myers. FAQ about Contract Assertions. The C++ Standards Committee, N4379, 2015.

[N4435] W. E. Brown. Proposing Contract Attributes. The C++ Standards Committee, N4435, 2015.

[P0147] L. Crowl. The Use and Implementation of Contracts. The C++ Standards Committee, P0147R0, 2015.

[P0166] J. D. Garcia. Three interesting questions about contracts. The C++ Standards Committee, P0166R0, 2015.

[P0246] N. Myers. Criteria for Contract Support Merged Proposal. The C++ Standards Committee, P0246R0, 2016.

[P0287] G. Dos Reis, J.D. Garcia, F. Logozzo, M. Fahndrich, S. Lahiri. Simple Contracts for C++ (R1). The C++ Standards Committee, P0287R0, 2016.

[P0380] G. Dos Reis, J.D. Garcia, J. Lakos, A. Meredith, N. Myers, and B. Stroustrup. A Contract Design. The C++ Standards Committee, P0380R1, 2016.

[P0542] G. Dos Reis, J.D. Garcia, J. Lakos, A. Meredith, N. Myers, and B. Stroustrup. Support for contract based programming in C++. The C++ Standards Committee, P0542R0, 2017.

[Rosenblum95] D. S. Rosenblum. A practical Approach to Programming With Assertions. IEEE Transactions on Software Engineering, 1995.

[SPARKAda] Praxis. SPARKAda (Ada-like Language with Contract Programming).

[SpecSharp] Microsoft. Spec# (C# Extension).

[Stroustrup94] B. Stroustrup. The Design and Evolution of C++. Addison Wesley, 1994.

[Stroustrup13] B. Stroustrup. The C++ Programming Language. Addison Wesley, 4th Edition, 2013.

[Tandin04] A. Tandin. Design by Contract macros for C++ and link to Doxygen. 2004.

[Wilson06] M. Wilson. Contract Programming 101 - The Nuclear Reactor and the Deep Space Probe. The C++ Source, 2006.