C++ is an expressive language, but it does not allow software developers to say all the things about their systems that they need to be able to say. In particular, C++ offers no way to express many important constraints on a system's design, implementation, and presentation. In this paper, we describe CCEL, a metalanguage for C++ that allows software developers to express constraints on C++ designs and implementations, and we describe Clean++, a system that checks C++ code for violations of CCEL constraints. CCEL is designed for practical, real-world use, and the examples in this paper demonstrate its power and flexibility
The C++ programming language has evolved into a major tool for implementing large and complex progra...
The analysis of C++ code is the basic building block of the collaboration between ITC-irst and CERN,...
The level of C++ compliers' adherence to the ISO C++ standard varies considerably from compiler to c...
Object-oriented languages fail to provide software developers with a way to say many of the things a...
In this report I describe types of program annotations that could be used in C++ to enhance the test...
C++ is a powerful, highly flexible, and adaptable programming language that allows software engineer...
This book is intended for use by C programmers who want to learn C++ . . . fast. It may also be help...
Building distributed systems is particularly difficult because of the asynchronous, heterogeneous, a...
Software is used in more and more aspects of our lives, so its correctness is more and more importan...
AbstractThe C++ programming language offers a wide range of coding alternatives to programmers. Some...
The C++ programming language offers a wide range of coding alternatives to programmers. Some languag...
This paper reports our experience with the use of the C++ language and Open C++ (a reflective versio...
The new C++11 standard allows programmers to express ideas more clearly, simply, and directly, and t...
Software Engineering progresses as improvements are made in languages and methodologies. Significant...
Software evolution is a major challenge to software development. When adapting a systems to new, alt...
The C++ programming language has evolved into a major tool for implementing large and complex progra...
The analysis of C++ code is the basic building block of the collaboration between ITC-irst and CERN,...
The level of C++ compliers' adherence to the ISO C++ standard varies considerably from compiler to c...
Object-oriented languages fail to provide software developers with a way to say many of the things a...
In this report I describe types of program annotations that could be used in C++ to enhance the test...
C++ is a powerful, highly flexible, and adaptable programming language that allows software engineer...
This book is intended for use by C programmers who want to learn C++ . . . fast. It may also be help...
Building distributed systems is particularly difficult because of the asynchronous, heterogeneous, a...
Software is used in more and more aspects of our lives, so its correctness is more and more importan...
AbstractThe C++ programming language offers a wide range of coding alternatives to programmers. Some...
The C++ programming language offers a wide range of coding alternatives to programmers. Some languag...
This paper reports our experience with the use of the C++ language and Open C++ (a reflective versio...
The new C++11 standard allows programmers to express ideas more clearly, simply, and directly, and t...
Software Engineering progresses as improvements are made in languages and methodologies. Significant...
Software evolution is a major challenge to software development. When adapting a systems to new, alt...
The C++ programming language has evolved into a major tool for implementing large and complex progra...
The analysis of C++ code is the basic building block of the collaboration between ITC-irst and CERN,...
The level of C++ compliers' adherence to the ISO C++ standard varies considerably from compiler to c...