When building scalable systems that involve general-purpose computation and persistent data, object-oriented languages and relational databases are often essential components. Yet...
The λ-calculus has been much used to study the theory of substitution in logical systems and programming languages. However, with explicit substitutions, it is possible to get fi...
Hybrid is a system developed to specify and reason about logics, programming languages, and other formal systems expressed in rder abstract syntax (HOAS). An important goal of Hyb...
The Dryad and DryadLINQ systems offer a new programming model for large scale data-parallel computing. They generalize previous execution environments such as SQL and MapReduce in...
Types are a good starting point for various software reengineering tasks. Unfortunately, programs requiring reengineering most desperately are written in languages without an adeq...