A parameterized type system for race-free Java programs

  • Authors:
  • Chandrasekhar Boyapati;Martin Rinard

  • Affiliations:
  • Laboratory for Computer Science, Massachusetts Institute of Technology, 200 Technology Square, Cambridge, MA;Laboratory for Computer Science, Massachusetts Institute of Technology, 200 Technology Square, Cambridge, MA

  • Venue:
  • OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents a new static type system for multithreaded programs; any well-typed program in our system is free of data races. Our type system is significantly more expressive than previous such type systems. In particular, our system lets programmers write generic code to implement a class, then create different objects of the same class that have different objects of the same class that have different protection mechanisms. This flexibility enables programmers to reduce the number of unnecessary synchronizationoperations in a program without risking data races. We also support default types which reduce the burden of writing extra type annotations. Our experience indicates that our system provides a promising approach to make multithreaded programs more reliable and efficient