By Susan Stepney

Illustrating a direction for mathematically specifying and conscientiously imposing a excessive insurance compiler appropriate to be used in constructing excessive integrity purposes, this ebook explains many of the suggestions used at every one degree of the advance, and is illustrated all through by means of a compiler for a small central language, focusing on a standard guideline set.

Show description

Read Online or Download High integrity compilation: a case study PDF

Similar compilers books

The Definitive Guide to SugarCRM: Better Business Applications (Books for Professionals by Professionals)

SugarCRM is certainly one of if no longer the prime Open resource CRM answer on the market at five. five million downloads and becoming and with approximately 17,000 registered builders and plenty extra clients. this may be the legit, definitive publication written via SugarCRM and recommended by way of SugarCRM. additionally, this booklet will be additionally the single SugarCRM developer ebook with a purpose to handle the platform similar gains considering the fact that SugarCRM five.

Methodologies and Software Engineering for Agent Systems: The Agent-Oriented Software Engineering Handbook

As details applied sciences develop into more and more disbursed and obtainable to bigger variety of humans and as advertisement and executive firms are challenged to scale their purposes and prone to greater industry stocks, whereas decreasing expenses, there's call for for software program methodologies and appli- tions to supply the subsequent positive aspects: Richer software end-to-end performance; aid of human involvement within the layout and deployment of the software program; Flexibility of software program behaviour; and Reuse and composition of present software program functions and platforms in novel or adaptive methods.

Numeric Computation and Statistical Data Analysis on the Java Platform

Numerical computation, wisdom discovery and statistical info research built-in with robust second and 3D photographs for visualisation are the major subject matters of this booklet. The Python code examples powered by way of the Java platform can simply be remodeled to different programming languages, resembling Java, Groovy, Ruby and BeanShell.

Additional info for High integrity compilation: a case study

Sample text

2. 2. 3 Concrete syntax A suitable program that implements the square function, written in Tosca's concrete syntax, is 43 44 Chapter 5. 4 Abstract syntax In abstract syntax, this program is square == Tosca(hdeclVar(n ; integer); declVar(sq ; integer); declVar(limit ; integer)i; blockhassign(n ; const(intv 1)); assign(sq ; const(intv 1)); input limit ; output(var sq ); loop (binExpr(var n ; less; var limit ); blockhassign(sq ; binExpr(binExpr(var sq ; plus; const(intv 1)); plus; binExpr(var n ; plus; var n ))); assign(n ; binExpr(var n ; plus; const(intv 1))); output(var sq )i)i) which rather graphically illustrates why concrete, not abstract, syntax is used for writing programs!

Informally: UC assignment = if (source expression has no uninitialized variables) then checkOK else checkWrong This provides a static initialization-before-use semantic check. Note that some of the formal de nitions of Tosca provide a rather strict constraint on potentially unused variables (guilty until proven innocent), which eliminates programs that might otherwise be thought to be `correct'. It is probably appropriate to have such a strict de nition for a high integrity language. More to the point, however, it does provide an unambiguous de nition, which can be reasoned about, and which provides a basis for criticism if necessary.

After experimenting with both organizations, the latter has been chosen. Specifying all the semantics of each language construct in one place makes it easier to understand that construct as a whole. This approach does have one drawback, however. It becomes necessary to specify quite a few auxiliary Z types and functions before their use may be apparent. These auxiliary de nitions are gathered together in this chapter. It may be best to skim through on rst reading, noting what things have been de ned, but waiting until the next chapter to nd out how they are used.

Download PDF sample

Rated 4.22 of 5 – based on 26 votes