Embedded Languages in Magic Comments
Describe the Embedded Languages in Magic Comments?
Expert
In this approach, contracts are specified using a separate notation that is embedded in comments, using special compilers to turn annotations into instrumentation. Two typical implementations of this category are SPARKAda and the Java Modeling Language (JML).
SPARKAda (SPARKAda website) is an Ada95 subset with a rich set of annotations that exceeds runtime instrumentation. The SPARKAda tool suite includes extensive static analysis and proof checkers.
While SPARKAda is well documented, it is only available from a single commercial vendor.
The Java Modeling Language (JML website) is an open source language extension for Java. It provides additional expressions that especially focus on avoiding side effects of contracts.
Using a contract language that is embedded in comments, but can easily access features of the relevant program scope, is almost as powerful as direct language support. The downside is that this approach usually requires a target language compiler re-implementation (an Ada or Java compiler), which imposes a serious tool dependency.
Normal 0 false false
Difference between differential pressure and delta pressure: Differential pressure signifies difference between high and low pressure while delta pressure means the pressure drop.
Normal 0
18,76,764
1928208 Asked
3,689
Active Tutors
1435908
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!