Computational models can be found everywhere in present day science and engineering. In providing a logical framework and foundation for the specification and design of specification languages, Raymond Turner uses this framework to introduce and study computable models. In doing so he presents the first systematic attempt to provide computational models with a logical foundation. Computable models have wide-ranging applications from programming language semantics and specification languages, through to knowledge representation languages and formalism for natural language semantics. They are also implicit in computer modelling in many areas of physical and social science. This detailed investigation into the logical foundations of specification and specification languages and their application to the definition of programming languages, coupled with a clear exposition of theories of data and computable models as mathematical notions will be welcomed by researchers and graduate students.