Conference Paper/Proceeding/Abstract 1007 views 90 downloads
Physical Type Tracking through Minimal Source-Code Annotation
Proceedings of 14th International Workshop on Automated Verification of Critical Systems
Swansea University Author: Tom Crick
-
PDF | Accepted Manuscript
Download (122.23KB)
Abstract
One of many common artefacts of complex software systems that often needs to be tracked through the entirety of the software system is the underlying type to which numerical variables refer. Commonly-used languages used in industry provide complex mechanisms through which general objects are associa...
Published in: | Proceedings of 14th International Workshop on Automated Verification of Critical Systems |
---|---|
ISSN: | 0929-0672 |
Published: |
Enschede, Netherlands
University of Twente
2014
|
Online Access: |
Check full text
|
URI: | https://cronfa.swan.ac.uk/Record/cronfa43773 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Abstract: |
One of many common artefacts of complex software systems that often needs to be tracked through the entirety of the software system is the underlying type to which numerical variables refer. Commonly-used languages used in industry provide complex mechanisms through which general objects are associated to a given type: for example, the class (and template) mechanisms in Python (and C++) are extremely rich mechanisms for the construction of types with almost entirely arbitrary associated operation sets.However, one often deals with software objects that ultimately represent numerical entities corresponding to real-world measurements, even through standardised SI units: metres per second, kilogram metres per second-squared, etc. In such situations, one can be left with insufficient and ineffective type-checking: for example, the C double type will not prevent the erroneous addition of values representing velocity (with SI units metre per second) to values representing mass (SI unit kilogram).We present an addition to the C language, defined through the existing attribute mechanism, that allows automatic control of physical types at compile-time; the only requirement is that individual variables be identified at declaration time with appropriate SI (or similar) units. |
---|---|
Item Description: |
14th International Workshop on Automated Verification of Critical Systems (AVoCS'14) |
Keywords: |
Verification, software engineering, type-checking, units, compilers, plug-ins |
College: |
Faculty of Humanities and Social Sciences |