Accidental mutation is a major source of difficult-to-detect errors in object-oriented programs. We have built tools that detect and prevent such errors. The tools include a java...
Telmo Luis Correa Jr., Jaime Quinonez, Michael D. ...
This paper presents a program analysis to estimate uncaught exceptions in ML programs. This analysis relies on unification-based type inference in a non-standard type system, usi...
Dynamic typing is a program analysis targeted at removing runtime tagging and untagging operations from programs written in dynamically typed languages. This paper compares dynami...
Type and effect systems are a tool to analyse statically the behaviour of programs with effects. We present a proof based on the so called reducibility candidates that a suitable ...
Scientists and engineers must ensure that physical equations are dimensionally consistent, but existing programming languages treat all numeric values as dimensionless. This paper ...