Back to results

Virginia Tech

Polymorphic types for constructing concurrent objects and layered communication protocols

Abstract

dc:description.abstract

Polymorphic type abstractions are proposed for constructing concurrent objects and layered peer-to-peer communication protocols, both of which exhibit inherently asynchronous behavior. The type abstractions are shown to be both expressive and efficient in the context of a statically typed object-oriented language. Where appropriate, the utility of the type abstractions is illustrated by demonstrating their usefulness in concurrent programming using the Actor model. The results of this work have direct applicability to problems in concurrent programming, distributed systems, and communication protocol architectures. An extensible, polymorphic type abstraction for structuring concurrent method execution in a strongly typed object-oriented language is introduced. The type abstraction is called a <i>polymorphic lambda type</i>. A lambda type is an abstraction for a procedure that is based in part on λ-abstraction in the λ-calculus. The lambda type is a key component of a concurrent object model that allows methods defined in a class to be instantiated as <i>lambda objects</i>. Lambda objects are used to represent some aspect of behavior and they represent a first-class execution environment. The first-class nature of lambda objects facilitates the construction of more powerful computational abstractions, primarily those requiring 'asynchronous interaction and concurrent execution. Through a series of refinements, lambda objects are shown to be as expressive as traditional procedures with little extra cost for call setup and invocation. Concurrent objects require synchronization control. A type abstraction called a <i>behavior set</i> is introduced for specifying synchronization constraints in a strongly typed concurrent object-oriented language with Actor-style concurrency semantics. The behavior set abstraction offers a solution to structuring synchronization control that coexists with an inheritance mechanism, thereby avoiding the inheritance anomaly.

Degree

thesis:*
Name thesis:degree_name
Ph. D.
Level thesis:degree_level
doctoral
Discipline thesis:degree_discipline
Computer Science
Department dc:contributor.department
Computer Science
Grantor dc:publisher
Virginia Tech
Year dc:date.issued
1993

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Lavender, R. Gregory
Chair dc:contributor.committeechair
  • Kafura, Dennis G.
Committee members dc:contributor.committeemember
  • Nance, Richard E.
  • Lee, John A.N.
  • Arthur, James D.
  • Abrams, Marc
  • Midkiff, Scott F.
  • Cannata, Philip E.

Rights

dc:rights
Statement dc:rights
  • In Copyright
Language dc:language.iso
en

Identifiers

dc:identifier.*
Dc Identifier Other
etd-06062008-170911
OAI identifier oai:identifier
oai:vtechworks.lib.vt.edu:10919/38440

Chain of custody

source
Harvested from
Virginia Tech
Base URL
vtechworks.lib.vt.edu/oai/request
Last updated
2026-07-22
Source record
OAI-PMH GetRecord
related terms
citation

Lavender, R. Gregory. Polymorphic types for constructing concurrent objects and layered communication protocols. doctoral thesis, Virginia Tech, 1993. http://hdl.handle.net/10919/38440