Meta-IV (specification language)

From HandWiki

The Meta-IV (pronounced like "metaphor") was an early version of the specification language of the Vienna Development Method formal method for the development of computer-based systems.

History

One of the first occurrences of Meta-IV in print appears to be "Programming in the Meta-language: A Tutorial".[1] Dines Bjørner used it in the very beginning of his tutorial as a footnote

This paper provides an informal introduction to the "art" of abstractly specifying software architectures using the VDM meta-language*.[2] A formal treatment of the semantics, as well as a BNF-like concrete syntax, of a large subset of the meta-language is given in [Jones 78a] following this paper.

The spirit of the Meta-IV specification language is well captured by the following passage[3]

We stress here... that the meta-language is to be used, not for solving algorithmic problems (on a computer), but for specifying, in an implementation-independent way, the architecture (or models) of software. Instead of using informal English mixed with technical jargon, we offer you a very-high-level 'programming' language. We do not offer an interpreter or compiler for this meta-language. And we have absolutely no intention of ever wasting our time trying to mechanize this meta-language. We wish, as we have done in the past, and as we intend to continue doing in the future, to further develop the notation and to express notions in ways for which no mechanical interpreter system can ever be provided.

VDM is a Method. The Meta-IV was the Specification language that accompanied the method, and the VDM-SL is the current standardized form of that language.

Since the VDM-SL has become standardized, then one may use Meta-IV to denote the three specific Schools of the VDM[4] which existed (and to some extent still do) from the 1970s onwards:

A brief account of these different Schools is given in the text "Mathematical Approaches to Software Quality".[6]

A comprehensive VDM Bibliography[7] is also available.

The Schools of VDM

The Danish School

founded by Dines Bjørner
To mention:

The English School

founded by Cliff Jones (computer scientist)
To mention:

  • University of Manchester
  • University of Newcastle

The Irish School

founded by Mícheál Mac an Airchinnigh
To mention:

  • University of Dublin, Trinity College

The first appearance of the name "Irish School of the VDM" occurs in a PhD Thesis: Mac an Airchinnigh, Mícheál. Conceptual Models and Computing.[8] Ph.D. Thesis. University of Dublin, Trinity College, Dublin, 1990, p. 41:

There is essential universal agreement on what constitutes the VDM. However, there are basically two major Schools of the VDM largely distinguished by notational differences employed in the specification language Meta-IV — the Danish School and the English School."

and further down on the same page

There is also the Polish School, which finds expression through the MetaSoft project (Blikle 1987, 1988, 1990). I will frequently need to distinguish between the style of notation and method that I use from those of the other Schools of the VDM. I presume to use the phrase 'the Irish School of the VDM' to draw that distinction.

The Thesis is available online.[9]

Other substantial works related to the School are also online.[10]

VDM Europe

The three Schools were brought under a common organizational structure called VDM Europe[11] which held it first international conference in Brussels, Belgium, March 23–26, 1987. At the time funding was provided under the Esprit Programme of the European Union. Meetings were mostly held in the EU Commission buildings in Brussels, Belgium.

VDM Europe eventually was dissolved[12] in favor of Formal Methods Europe, founded in 1992.[13] Minutes of the first meeting of FME are available online.[14]

Conferences

List of the VDM and FME conferences (http://www.informatik.uni-trier.de/~ley/db/conf/fm/)

Notes

Reading Links

  1. Bjørner, Dines; Cliff B. Jones (1978). The Vienna Development Method: The Meta-Language, Lecture Notes in Computer Science 61. Berlin, Heidelberg, New York: Springer. ISBN 978-3-540-08766-3. 
  2. O'Regan, Gerard (2006). Mathematical Approaches to Software Quality. London: Springer. ISBN 978-1-84628-242-3. 
  3. Cliff B. Jones, ed (1984). Programming Languages and Their Definition — H. Bekič (1936-1982). Lecture Notes in Computer Science. 177. Berlin, Heidelberg, New York, Tokyo: Springer-Verlag. doi:10.1007/BFb0048933. ISBN 978-3-540-13378-0. 

External links