IMP: A Simple Imperative Language

To talk about semantics, we first need a programming language. This chapter defines one: a minimalistic imperative programming language called IMP. The main aim of this chapter is to introduce the concepts of commands and their abstract syntax, and to use them to illustrate two styles of defining th...

Full description

Saved in:
Bibliographic Details
Published inConcrete Semantics pp. 75 - 94
Main Authors Klein, Gerwin, Nipkow, Tobias
Format Book Chapter
LanguageEnglish
Published Switzerland Springer International Publishing AG 2014
Springer International Publishing
Subjects
Online AccessGet full text
ISBN3319105418
9783319105413
DOI10.1007/978-3-319-10542-0_7

Cover

More Information
Summary:To talk about semantics, we first need a programming language. This chapter defines one: a minimalistic imperative programming language called IMP. The main aim of this chapter is to introduce the concepts of commands and their abstract syntax, and to use them to illustrate two styles of defining the semantics of a programming language: big-step and small-step operational semantics. Our first larger theorem about IMP will be the equivalence of these two definitions of its semantics. As a smaller concrete example, we will apply our semantics to the concept of program equivalence.
ISBN:3319105418
9783319105413
DOI:10.1007/978-3-319-10542-0_7