The definition of Extended ML: A gentle introduction

Stefan Kahrs, Donald Sannella, Andrzej Tarlecki

Research output: Contribution to journalArticlepeer-review

Abstract / Description of output

Extended ML (EML) is a framework for the formal development of modular Standard ML (SML) software systems. Development commences with a specification of the behaviour required and proceeds via a sequence of partial solutions until a complete solution, an executable SML program, is obtained. All stages in this development process are expressed in the EML language, an extension of SML with axioms for describing properties of module components. This is an overview of the formal definition of the EML language. To complement the full technical details presented elsewhere, it provides an informal explanation of the main ideas, gives the rationale for certain design decisions, and outlines some of the technical issues involved. EML is unusual in being built around a ?real? programming language having a syntax and semantics formally defined. Interesting and complex problems arise both from the nature of this relationship and from interactions between the features of the language.
Original languageEnglish
Pages (from-to)445 - 484
JournalTheoretical Computer Science
Issue number2
Publication statusPublished - 1997


Dive into the research topics of 'The definition of Extended ML: A gentle introduction'. Together they form a unique fingerprint.

Cite this