Issue No. 03 - May/June (1988 vol. 5)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/52.2021
<p>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.</p>
C++; dimensional-analysis; environment; data-abstraction; classes; C language; data structures; programming environments
R. F. Cmelik and N. H. Gehani, "Dimensional Analysis with C++," in IEEE Software, vol. 5, no. , pp. 21-27, 1988.