Ada's derived types and units of measure
Software—Practice & Experience
A proposal for an extended form of type checking of expressions
The Computer Journal
The C++ programming language
The C programming language
Incorporation of units into programming languages
Communications of the ACM
Testing object-oriented software systems
CSC '90 Proceedings of the 1990 ACM annual conference on Cooperation
Introduction to the literature on object-oriented design, programming, and languages
ACM SIGPLAN OOPS Messenger
Fully static dimensional analysis with C++
ACM SIGPLAN Notices
SafeGI: type checking to improve correctness in rendering system implementation
EGSR'10 Proceedings of the 21st Eurographics conference on Rendering
Hi-index | 0.00 |
Incorporating dimensional-analysis facilities in a language lets an environment detect an additional class of errors, but at the expense of requiring a change to the language you used. However, if the language you used has suitable data-abstraction facilities, most of the benefits of dimensional analysis can be had without changing the language. To demonstrate how to get these benefits, the authors use the data-abstraction facilities of C++ to implement dimensional analysis. C++ is an upwardly compatible extension of C that provides data-abstraction facilities called classes. The authors define a set of classes that allows the writing of programs with automatic checking of units (i.e. dimensional analysis) and automatic conversion between consistent (compatible or equivalent) units. They discuss the pros and cons of this approach and compare the advantage C++ has over Ada for implementing dimensional analysis.