All object-oriented languages provide support for subtype polymorphism, which allows the writing of generic code that works for families of related types. There is also a need, ho...
Mark Day, Robert Gruber, Barbara Liskov, Andrew C....
Abstract. The λ-calculus with de Bruijn indices, called λdB, assembles each α-class of λ-terms into a unique term, using indices instead of variable names. Intersection types p...
CCured is a program transformation system that adds memory safety guarantees to C programs by verifying statically that memory errors cannot occur and by inserting run-time checks...
Jeremy Condit, Matthew Harren, Scott McPeak, Georg...