ANNA: a language for annotating ADA programs
ANNA: a language for annotating ADA programs
Consistency checking in Ada and Anna: a transformational approach
ACM SIGAda Ada Letters
An environment for Ada software development based on formal specification
ACM SIGAda Ada Letters
Surveyors' forum: runtime checking and debugging of formally specified programs
ACM Computing Surveys (CSUR)
Towards a method of programming with assertions
ICSE '92 Proceedings of the 14th international conference on Software engineering
A Practical Approach to Programming With Assertions
IEEE Transactions on Software Engineering
Run-time analysis of time-critical systems
Journal of Systems Architecture: the EUROMICRO Journal
A historical perspective on runtime assertion checking in software development
ACM SIGSOFT Software Engineering Notes
Hi-index | 0.00 |
Anna is a language extension of Ada to include facilities for formally specifying the intended behavior of Ada programs. It augments Ada with precise machine-processable annotations so that well established formal methods of specification and documentation can be applied to Ada programs.This paper describes an implementation of a subset of Anna. The implementation is a transformer that accepts as input an Anna parse tree and produces as output an equivalent Ada parse tree that contains the necessary executable runtime checks for the Anna specifications. An approach called the Checking Function Approach is used. This involves the generation of a function for each annotation and generating calls to these functions at appropriate places. The transformer has to take care of various details like hiding, overloading, nesting, etc.It is hoped that the transformer will eventually cover most of Ann and have various features like a good user interface, interaction with a symbolic debugger, and optimization of runtime checks for permanent inclusion.