Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Vienna Development Method
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==History== The origins of VDM-SL lie in the [[IBM]] Laboratory in [[Vienna]] where the first version of the language was called the '''V'''ienna '''D'''efinition '''L'''anguage (VDL).<ref>Bjørner&Jones 1978, [https://link.springer.com/content/pdf/bfm%3A978-3-540-35836-7%2F1.pdf Introduction], p.ix</ref> The VDL was essentially used for giving [[operational semantics]] descriptions in contrast to the VDM – Meta-IV which provided [[denotational semantics]]<ref>Introductory remarks by Cliff B. Jones (editor) in Bekič 1984, p.vii</ref> <blockquote> «Towards the end of 1972 the Vienna group again turned their attention to the problem of systematically developing a compiler from a language definition. The overall approach adopted has been termed the "Vienna Development Method"... The meta-language actually adopted ("Meta-IV") is used to define major portions of PL/1 (as given in ECMA 74 – interestingly a "formal standards document written as an abstract interpreter") in BEKIČ 74.»<ref>Bjørner&Jones 1978, [https://link.springer.com/content/pdf/bfm%3A978-3-540-35836-7%2F1.pdf Introduction], p.xi</ref> </blockquote> There is no connection between [[Meta-IV]],<ref>Bjørner&Jones 1978, p.24.</ref> and Schorre's [[META II]] language, or its successor [[Tree Meta]]; these were [[compiler-compiler]] systems rather than being suitable for formal problem descriptions. So Meta-IV was "used to define major portions of" the [[PL/I]] programming language. Other programming languages retrospectively described, or partially described, using Meta-IV and VDM-SL include the [[BASIC programming language]], [[FORTRAN]], the [[APL programming language]], [[ALGOL]] 60, the [[Ada programming language]] and the [[Pascal programming language]]. Meta-IV evolved into several variants, generally described as the Danish, English and Irish Schools. The "English School" derived from work by [[Cliff Jones (computer scientist)|Cliff Jones]] on the aspects of VDM not specifically related to language definition and compiler design (Jones 1980, 1990). It stresses modelling persistent<ref>See the article on [[Persistence (computer science)|persistence]] for its use within computer science.</ref> state through the use of data types constructed from a rich collection of base types. Functionality is typically described through operations which may have side-effects on the state and which are mostly specified implicitly using a precondition and postcondition. The "Danish School" ([[Dines Bjørner|Bjørner]] ''et al.'' 1982) has tended to stress a constructive approach with explicit operational specification used to a greater extent. Work in the Danish school led to the first European validated [[Ada programming language|Ada]] compiler. An [[International Organization for Standardization|ISO]] Standard for the language was released in 1996 (ISO, 1996).
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)