We introduce an annotated type system for a compiler intermediate language. The type system is designed to support inter-procedural register allocation and the representation of t...
We present a new role system in which the type (or role) of each object depends on its referencing relationships with other objects, with the role changing as these relationships ...
Software systems are increasingly being built as compositions of reusable artifacts (components, frameworks, toolkits, plug-ins, APIs, etc) that have non-trivial usage constraints...
The Java memory model described in Chapter 17 of the Java Language Specification gives constraints on how threads interact through memory. This chapter is hard to interpret and po...
Incorporating constraints into a reactive BDI agent programming language can lead to better expressive capabilities as well as more efficient computation (in some instances). More...