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
On the algebraic definition of programming languages
ACM Transactions on Programming Languages and Systems (TOPLAS)
Programming pascal with physical units
ACM SIGPLAN Notices
An Ada package for dimensional analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Dimension inference under polymorphic recursion
FPCA '95 Proceedings of the seventh international conference on Functional programming languages and computer architecture
Journal of the ACM (JACM)
Relational parametricity and units of measure
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Encoding types in ML-like languages
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Incorporation of units into programming languages
Communications of the ACM
A reusable Ada package for scientific dimensional integrity
ACM SIGAda Ada Letters
Algebraic Semantics of Imperative Programs
Algebraic Semantics of Imperative Programs
Maude: specification and programming in rewriting logic
Theoretical Computer Science - Rewriting logic and its applications
Programming Experimental Procedures for Newtonian Kinematic Machines
CiE '08 Proceedings of the 4th conference on Computability in Europe: Logic and Theory of Algorithms
A rewriting logic approach to operational semantics
Information and Computation
Expressing measurement units in interfaces for scientific component software
Proceedings of the 2009 Workshop on Component-Based High Performance Computing
The rewriting logic semantics project: a progress report
FCT'11 Proceedings of the 18th international conference on Fundamentals of computation theory
ICTAC'05 Proceedings of the Second international conference on Theoretical Aspects of Computing
Program analysis scenarios in rascal
WRLA'12 Proceedings of the 9th international conference on Rewriting Logic and Its Applications
A Rewriting Logic Approach to Static Checking of Units of Measurement in C
Electronic Notes in Theoretical Computer Science (ENTCS)
The rewriting logic semantics project: A progress report
Information and Computation
Hi-index | 0.00 |
Dimensional safety policy checking is an old topic in software analysis concerned with ensuring that programs do not violate basic principles of units of measurement. Scientific and/or navigation software is routinely dimensional and violations of measurement unit safety policies can hide significant domain-specific errors which are hard or impossible to find otherwise. Dimensional analysis of programs written in conventional programming languages is addressed in this paper. We draw general design principles for dimensional analysis tools and then discuss our prototypes, implemented by rewriting, which include both dynamic and static checkers. Our approach is based on assume/assert annotations of code which are properly interpreted by our tools and ignored by standard compilers/interpreters. The output of our prototypes consists of warnings that list those expressions violating the unit safety policy. These prototypes are implemented in the rewriting system Maude.