GSBL: An Algebraic Specification Language Based on Inheritance

  • S. Clerici
  • F. Orejas
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 322)


At the specification level, inheritance can be defined as subtyping by means of order sorted specifications [GM85]. Subtyping is, obviously, a very important notion, allowing not only to work with a non rigid type structure, but also providing an adequate basis for error handling in algebraic specifications. However, in our opinion, subtyping and order sorted specifications do not play the same rûle as inheritance in program design. In this paper, we will present a hierarchical organization for specifications, based on a different concept of inheritance which, we think, corresponds, methodologically, to the usual inheritance relation defined at the programming level. This new relation allows to work with incomplete specifications with several levels of detail and, as a side-effect, it may play the rûle of genericity. The use of this notion of inheritance is shown by means of the GSBL specification language built around this new concept, whose use and formal semantics are sketched.

Key words and phrases

Algebraic specification inheritance genericity specification languages 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

4. References

  1. [BG77]
    Burstall, R.M.; Goguen, J.A. “Putting theories together to make specifications”, Proc. V IJCAI, Cambridge Mass., 1977, pp. 1045–1058.Google Scholar
  2. [BG80]
    Burstall, R.M.; Goguen, J.A. “The semantics of Clear, a specification language”, Proc. Winter School on Abstract Software Specification, Springer LNCS 86, pp. 292–332, 1980.Google Scholar
  3. [CAR84]
    Cardelli, L. “The semantics of multiple inheritance”, Proc. Colloquium on the Semantics of Data Types, Sophia-Antipolis, 1984.Google Scholar
  4. [CAR85]
    Cardelli, L.; Wegner, P. “On understanding types, data abstraction and polymorphism”, Computer Surveys 17,4 (Dec. 1985), pp. 471–522.CrossRefGoogle Scholar
  5. [EKMP82]
    Ehrig, H., Kreowski, H.-J., Mahr, B., Padawitz, P. “Algebraic implementation of abstract data types”, Theoret. Comp. Sc. 20 (1982), pp. 209–263.zbMATHCrossRefGoogle Scholar
  6. [EWT82]
    Ehrig, H., Wagner, E.G. Thatcher, J.W. “Algebraic constraints for specifications and canonical form results”, Institut für Software und Theoretische Informatik, T.U. Berlin Bericht Nr. 82-09, 1982.Google Scholar
  7. [EM85]
    Ehrig, H., Mahr, B. “Fundamentals of algebraic specification I”, EATCS Monographs on Theor. Comp. Sc., Springer-Verlag, 1985.Google Scholar
  8. [FGJM85]
    Futatsugi, K, Goguen, J.A., Jouannaud, J.-P., Meseguer, J., “Principles of OBJ2”, Proc. 12th POPL, Austin 1985.Google Scholar
  9. [GOG84]
    Goguen, J.A. “Parameterized Programming”, IEEE Trans. on Soft. Eng. SE10, 5 (Sept. 1984), pp. 528–543.CrossRefGoogle Scholar
  10. [GB80]
    Goguen, J.A., Burstall, R.M. “CAT, a system for the structured elaboration of correct programs from structured specifications”, Report CSL-118, Comp. Sc. Lab., SRI Int., 1980.Google Scholar
  11. [GM85]
    Goguen, J.A.; Meseguer, J. “Order-sorted algebra I: partial and overloaded operators, errors and inheritance”, SRI Int., Comp. Sc. Lab. Rep., 1985.Google Scholar
  12. [MEY86]
    Meyer B. “Genericity versus Inheritance”, Proc. ACM conf Object-Oriented Programming Syst, Languages, and Applications, ACM, New York, 1986, pp. 391–405Google Scholar
  13. [MEY86]
    Meyer B. “Reusability: The Case for Object-Oriented Design”, IEEE Trans. Software Eng. March 1987, pp. 50–65.Google Scholar
  14. [RE180]
    Reichel, H. “Initially restricting algebraic theories”, Proc. MFCS 80, Springer LNCS 88 (1980), pp. 504–514.Google Scholar
  15. [SAN81]
    Sannella, D. “A new semantics for Clear”, Report CSR-79-8, Univ. of Edinburgh, 1981.Google Scholar
  16. [WPPDB83]
    Wirsing, M., Pepper, P., Partsch, H., Dosch, W., Broy, M. “On hierarchies of abstract data types”, Acta Informatica 20 (1983), pp. 1–33.zbMATHCrossRefMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1988

Authors and Affiliations

  • S. Clerici
    • 1
  • F. Orejas
    • 1
  1. 1.Facultat d’InformàticaUniversitat Politènica de CatalunyaBarcelonaSpain

Personalised recommendations