Article ID Journal Published Year Pages File Type
422141 Electronic Notes in Theoretical Computer Science 2009 17 Pages PDF
Abstract

Programmers typically have knowledge about properties of their programs that aren't explicitly expressed in the code – properties that may be very useful for, e.g., compiler optimisation and automated testing. Although such information is sometimes written down in a formal or informal specification, it is generally not accessible to compilers and other tools. However, using the idea of concepts and axioms in the upcoming C++ standard, we may embed axioms with program code. In this paper, we sketch how such axioms can be interpreted as rewrite rules and test oracles. Rewrite rules together with user-defined transformation strategies allow us to implement program or library-specific optimisations.

Related Topics
Physical Sciences and Engineering Computer Science Computational Theory and Mathematics