Deriving components from genericity

  • Authors:
  • James Sasitorn;Robert Cartwright

  • Affiliations:
  • Rice University, Houston, TX;Rice University, Houston, TX

  • Venue:
  • Proceedings of the 2007 ACM symposium on Applied computing
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

There is a growing recognition that programming platforms should support the decomposition of programs into components: independent units of compiled code that are explicitly "linked" to form complete programs. This paper describes how to formulate a general component system for a nominally typed object-oriented language supporting first-class generic types simply by adding appropriate annotations and syntactic sugar. The fundamental semantic building blocks for constructing, type-checking and manipulating components are provided by the underlying first-class generic type system. To demonstrate the simplicity and utility of this approach to supporting components, we have designed and implemented an extension of Java called Component NextGen (CGen). CGen, which is based on the Sun Java 5.0 javac compiler, is backward-compatible with existing code and runs on current Java Virtual Machines.