The C programming language
The C++ Programming Language, Third Edition
The C++ Programming Language, Third Edition
ISAAC '88 Proceedings of the International Symposium ISSAC'88 on Symbolic and Algebraic Computation
The Unix Progamming Environment
Computer
Exploiting regularity of user-defined types to improve precision of program analyses
Proceedings of the 27th Annual ACM Symposium on Applied Computing
Design of concept libraries for c++
SLE'11 Proceedings of the 4th international conference on Software Language Engineering
A system for axiomatic programming
CICM'12 Proceedings of the 11th international conference on Intelligent Computer Mathematics
Summary-based data-flow analysis that understands regular composite objects and iterators
ACM SIGAPP Applied Computing Review
Hi-index | 0.00 |
Generic programming depends on the decomposition of programs into components which may be developed separately and combined arbitrarily, subject only to well-defined interfaces. Among the interfaces of interest, indeed the most pervasively and unconsciously used, are the fundamental operators common to all C++ built-in types, as extended to user-defined types; e.g., copy constructors, assignment, and equality. We investigate the relations which must hold among these operators to preserve consistency with their semantics for the built-in types and with the expectations of programmers. We can produce an axiomatization of these operators which yields the required consistency with built-in types, matches the intuitive expectations of programmers, and also reflects our underlying mathematical expectations.