The purpose of programming languages is to instruct computers and to communicate descriptions of computational processes among people. However, a program has to be supplemented by additional documentation using natural language, diagrams, specifications, models, etc. that also serve the purpose of supporting design and validation. A number of languages have been developed for this purpose, with the cost of having to maintain several descriptions. In this paper, we describe how to include supplementary properties in a programming language to reduce the need for additional languages and to reduce the need for additional documentation. Supplementary properties may restrict access to global variables, enforce restrictions on subclasses, specify required interfaces of modules, etc.
Originalsprog
Engelsk
Titel
Leveraging Applications of Formal Methods, Verification and Validation. Software Engineering : Software Engineering