2. This design” would in turn be processed by
Posted: Sat Feb 22, 2025 9:22 am
A pseudocode compiler that would generate the program P in some high-level language, chosen by the user (e.g. Java, LISP).
3. The program P would be processed by the corresponding compiler and would generate the executable code.
Using the MF to develop this component of a compiler, our activity is more focused on the design of a grammar that has desirable characteristics, than on the writing of a program that processes it. To achieve this, it was necessary to know the specification language (the GS), and the characteristics that grammars must have (e.g. no left recursion). This is the usual approach in MF.
Application of formal methods in industry
The use of MF in the development of critical systems is not uncommon. In the article “Software's Chronic Crisis” [1] some classic cases can be found, among them the use of the formal method “B” to develop a system that solved the UK Mobile Database following problem of the subway in Paris:
The number of users of the subway lines had increased considerably, so it was necessary to build more tracks to carry more trains, or to automate the synchronization of the arrivals and departures of the lines to each station, so that the time between the departure of one train and the arrival of another would be reduced.
3. The program P would be processed by the corresponding compiler and would generate the executable code.
Using the MF to develop this component of a compiler, our activity is more focused on the design of a grammar that has desirable characteristics, than on the writing of a program that processes it. To achieve this, it was necessary to know the specification language (the GS), and the characteristics that grammars must have (e.g. no left recursion). This is the usual approach in MF.
Application of formal methods in industry
The use of MF in the development of critical systems is not uncommon. In the article “Software's Chronic Crisis” [1] some classic cases can be found, among them the use of the formal method “B” to develop a system that solved the UK Mobile Database following problem of the subway in Paris:
The number of users of the subway lines had increased considerably, so it was necessary to build more tracks to carry more trains, or to automate the synchronization of the arrivals and departures of the lines to each station, so that the time between the departure of one train and the arrival of another would be reduced.