Programming with Specifications: An Introduction to ANNA, A Language for Specifying Ada Programs

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Topics • what this book is about, • its intended audience, • what the reader ought to know, • how the book is organized, • acknowledgements. Specifications express information about a program that is not normally part of the program, and often cannot be expressed in a programming lan­ guage. In the past, the word "specification" has sometimes been used to refer to somewhat vague documentation written in English. But today it indicates a precise statement, written in a machine processable language, about the purpose and behavior of a program. Specifications are written in languages that are just as precise as programming languages, but have additional capabilities that increase their power of expression. The termi­ nology formal specification is sometimes used to emphasize the modern meaning. For us, all specifications are formal. The use of specifications as an integral part of a program opens up a whole new area of programming - progmmming with specifications. This book describes how to use specifications in the process of building programs, debugging them, and interfacing them with other programs. It deals with a new trend in programming - the evolution of specification languages from the current generation of programming languages. And it describes new strategies and styles of programming that utilize specifications. The trend is just beginning, and the reader, having finished this book, will viii Preface certainly see that there is much yet to be done and to be discovered about programming with specifications.

Author(s): David Luckham
Series: Texts and Monographs in Computer Science
Publisher: Springer
Year: 1990

Language: English
Pages: 432
Tags: Programming Languages, Compilers, Interpreters; Artificial Intelligence (incl. Robotics)

Front Matter....Pages i-xvi
What Anna Is....Pages 1-18
Simple Annotations....Pages 19-58
Using Simple Annotations....Pages 59-110
Exceptions....Pages 111-127
Package Specifications....Pages 128-168
The Process of Specifying Packages....Pages 169-232
Annotation of Generic Units....Pages 233-251
Annotation of Operations on Composite Types....Pages 252-282
Annotation of the Hidden Parts of Packages....Pages 283-319
Interpretation of Package Specifications....Pages 320-356
Processes for Consistent Implementation of Packages....Pages 357-385
Back Matter....Pages 386-418