Skip to search boxSkip to navigationSkip to main content

Programming language specification and implementation

Research Output:
Conference Article in Proceeding or Book/Report chapter
Article in proceedings
Peer-review

Open access

Publication Information

Output type

Research Output:
Conference Article in Proceeding or Book/Report chapter
Article in proceedings
Peer-review

Host publication Subtitle

8th International Symposium, ISoLA 2018 Limassol, Cyprus, November 5–9, 2018 Proceedings, Part I

Original language

English

Pages from-to (Number of pages)

Pages 162-183 (22 pages)

Publication milestones

  • Published - 2018

Publication status

Published - 2018

Publisher

Springer, United States, Germany

Book series

  • Book series name: Lecture Notes in Computer Science
    Volume: 11244
    ISSN: 0302-9743
978-3-030-03417-7

ISBN (Electronic)

978-3-030-03418-4

Publication IDs

  • Scopus: 85056468448

Host publication title

Leveraging Applications of Formal Methods, Verification and Validation. Modeling.

Host publication editors

  • Tiziana Margaria
  • Bernhard Steffen

Abstract

The specification of a programming language is a special case of the specification of software in general. This paper discusses the relation between semantics and implementation, or specification and program, using two very different languages for illustration. First, we consider small fragments of a specification of preliminary Ada, and show that what was considered a specification in VDM in 1980 now looks much like an implementation in a functional language. Also, we discuss how a formal specification may be valuable even though seen from a purely formal point of view it is flawed. Second, we consider the simple language of spreadsheet formulas and give a complete specification. We show that nondeterminism in the specification may reflect run-time nondeterminism, but also underspecification, that is, implementation-time design choices. Although specification nondeterminism may appear at different binding-times there is no conventional way to distinguish these. We also consider a cost semantics and find that the specification may need to contain some “artificial” nondeterminism for underspecification.

Publication metrics

PlumX, opens in new tab

Citations
2
Captures
3