About this book
Semantics will have an important role to play in the future development of software systems and domain specific languages, and there is a real need for an introductory book that presents the fundamental ideas behind these approaches; stresses their relationship by formulating and proving the relevant theorems; and illustrates the applications of semantics in computer science.
Written out of a tradition that places special emphasis on operational semantics, denotational semantics and axiomatic semantics, this book investigates the relationship between the various methods and describes some of the main ideas used, illustrating these via interesting applications. Historically important application areas are used together with some exciting potential applications including:
- Validating prototype implementations of programming languages
- Verifying program analyses that are part of more advanced implementations of programming languages
- Verifying security analyses
- Verifying useful program properties including information about execution time.
This is an introductory text that should serve as an appetizer to the whole area of semantics with applications.