Functional system specification

Stef M. M. Joosten · Software Engineering Journal · 1988

This paper deals with executable descriptions of systems. The prime motivation of the paper is to show that functional programming languages are useful in software engineering practice. All kinds of systems, either with or without a state, can be modelled in a simple way. In this paper an attempt is made to devise executable models that are amenable to mathematical proofs. Apart from testing, proving is a viable technique for establishing correctness of algorithms. There exists a clear link to systems theory. Some restrictions have to be imposed on systems theory to obtain executability, but these restrictions are fewer than assumed normally when systems are described in imperative programming languages. As a consequence, an executable specification language is obtained. The well known ‘functional specs’ can be written in a purely functional programming language. This renders the phrase ‘functional specification’ doubly appropriate.

Read the paper · More papers on PaperTik