@snowball

Regular Types for Active Objects

. Proceedings of the 8th ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA-93), volume 28, 10 of ACM SIGPLAN Notices, page 1--15. (October 1993)

Abstract

Previous work on type-theoretic foundations for object-oriented programming languages has mostly focussed on applying or extending functional type theory to functional öbjects." This approach, while benefitting from a vast body of existing literature, has the disadvantage of dealing with state change either in a roundabout way or not at all, and completely side-stepping issues of concurrency. In particular, dynamic issues of non-uniform service availability and conformance to protocols are not addressed by functional types. We propose a new type framework that characterizes objects as regular (finite state) processes that provide guarantees of service along public channels. We also propose an original notion of subtyping for regular types that extends Wegner and Zdonik's "principle of substitutability" to non-uniform service availability, and we relate it to known process equivalences. Finally, we formalize what it means to "satisfy a client's expectations," and we show how regular types can be used to tell when sequential or concurrent clients are satisfied. NB: a revised version is available by ftp.

Links and resources

Tags

community

  • @tommens
  • @evol
  • @kimmens
  • @pbrada
  • @pdeleenh
  • @snowball
  • @dblp
  • @wvdaalst
@snowball's tags highlighted