Capsules and types in Fresco

Program verification in Smalltalk
  • Alan Wills
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 512)


Fresco is a Smalltalk-based interactive environment supporting the specification and proven development of re-usable software components. These ‘capsules’ are deltas to the inheritance hierarchy, and form a more useful unit of designer-effort than class subhierarchies. Systems are built by composing capsules, which carry both specifications and code. The semantics of capsule composition is elucidated by examining the relationship between ‘type’ and ‘class’. Type-descriptions take the form of model-oriented specifications.

The principles discussed here can be applied to other object-oriented languages.


Smalltalk module capsule Fresco Mural subtype inheritance specification program proof 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [AvdL90]
    Pierre America and Frank van der Linden ‘A Parallel Object Oriented Language with Inheritance and Subtyping’ ECOOP 90Google Scholar
  2. [CL90]
    Marshall Cline and Doug Lea: ‘The Behaviour of C++ Classes'. Proceedings, Symp OOP Emphasizing Practical Applications, Marist Coll., Sept 90Google Scholar
  3. [CHC90]
    William Cook, Walter Hill, Peter Canning ‘Inheritance is not subtyping’ ACM ToPLAS 1990 pp125–135Google Scholar
  4. [JGZ88]
    Ralph Johnson, Justin Graver, Lawrence Zurawski ‘TS: an optimizing compiler for Smalltalk’ OOPSLA'88Google Scholar
  5. [Jones90]
    Cliff Jones: 'systematic software construction using VDM’ (PHI, 2nd ed. 1990)Google Scholar
  6. [JJLM91]
    C.B.Jones, K.D.Jones, P.A.Lindsay, R.C.Moore: ‘Mural: a formal development support system’ Springer Verlag, 1991Google Scholar
  7. [Lindsay87]
    Peter Lindsay: Logical frames for interactive theorem proving. TR: UMCS 87-12-7, Dept of Computer Science, University of Manchester, UK 1987Google Scholar
  8. [LG88]
    John M Lucassen and David K. Gifford: ‘Polymorphic effect systems’ Proc 15th ACM Symp Principles of Programming Languages Jan 88 pp47–57Google Scholar
  9. [Meyer88]
    Bertrand Meyer: ‘Object-oriented software construction’ (PHI 88)Google Scholar
  10. [Morgan90]
    Carroll Morgan: ‘Programming from Specifications’ (PHI 1990)Google Scholar
  11. [Wegner90]
    Peter Wegner ‘Concepts and paradigms of OOP’ OOPS Messenger 1(1) Aug90 [ACM]Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Alan Wills
    • 1
  1. 1.University of ManchesterUK

Personalised recommendations