A Theory of Type Qualifiers

  • Jeffrey S. Foster ,
  • Manuel Fahndrich ,
  • Alexander Aiken

Proceedings of the 1999 ACM SIGPLAN Conference on Programming Language Design and Implementation |

Publication

We describe a framework for adding type qualifiers to a language. Type qualifiers encode a simple but highly useful form of subtyping. Our framework extends standard type rules to model the flow of qualifiers through a program, where each qualifier or set of qualifiers comes with additional rules that capture its semantics. Our framework allows types to be polymorphic in the type qualifiers. We present a const-inference system for C as an example application of the framework. We show that for a set of real C programs, many more consts can be used than are actually present in the original code.