In this paper, we present a novel type and effect analysis for detecting type cast errors and memory errors in C source code. Our approach involves a type system with effect, regi...
Atomicity-checking is a powerful approach for finding subtle concurrency errors in shared-memory multithreaded code. The goal is to verify that certain code sections appear to exec...
One of the central axioms of extreme programming is the disciplined use of regression testing during stepwise software development. Due to recent progress in software model checkin...
Thomas A. Henzinger, Ranjit Jhala, Rupak Majumdar,...
We introduce Erasure Pure Type Systems, an extension to Pure Type Systems with an erasure semantics centered around a type constructor indicating parametric polymorphism. The eras...
Types play an important role both in reasoning about Haskell and for its implementation. For example, the Glasgow Haskell Compiler performs certain fusion transformations that are...