Use this URL to cite or link to this record in EThOS: http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.637257
Title: The design and implementation of typed languages for algebraic specification
Author: Hearn, B. M.
Awarding Body: University College of Swansea
Current Institution: Swansea University
Date of Award: 1995
Availability of Full Text:
Access through EThOS:
Abstract:
In this thesis we investigate the role of type systems in an algebraic specification language. We first introduce algebraic specification as a way of formally describing a task using equations, which can be rapidly prototyped using techniques such as term rewriting. We then consider the type systems used in standard algebraic specification languages, as well as those found in areas such as mathematical logic and the semantics of programming languages, which have not yet been incorporated into an algebraic specification language in a systematic way. The concept of allowing an algebraic structure to be given to a specification at the level of types is then reviewed. This concept allows arbitrary type systems to be defined in an algebraic style which can also be prototyped using term rewriting. We introduce an algebraic specification language ATLAS I; this language allows an algebraic structure to be given to a specification at the level of types. An ATLAS I specification is a three level specification for kinds, types and combinators. We show how the type systems used in existing algebraic specification languages can be encoded in this language and how more complex type systems may also be encoded. We evaluate the language by means of case studies. On evaluating this language, we note that the fixed three levels of specification in ATLAS I are too restrictive and that arbitrary levels of algebraic structure for types would be more appropriate. Also no modularisation is supported in ATLAS I, which leads to large specifications being difficult to understand. We then introduce the specification language ATLASII. This language is developed from ATLAS I by incorporating the changes suggested by the evaluation of this first language. The ATLASII language supports arbitrary levels of typing by allowing specifications to be defined in a modularised form, and allowing modules to be typed by other modules. This facility is a powerful feature of the language and is again evaluated by means of case studies. Modularisation in the conventional sense is also supported in ATLASII with modules containing parameters, visible and hidden parts.
Supervisor: Not available Sponsor: Not available
Qualification Name: Thesis (Ph.D.) Qualification Level: Doctoral
EThOS ID: uk.bl.ethos.637257  DOI: Not available
Share: