We present direct proofs of termination of evaluation for typed delimited-control operators shift and reset using a variant of Tait’s method with context-based reducibility pred...
Several recent language designs have offered a unified language for programming a distributed system, with explicit notation of locations; we call these “location-aware” lan...
Dividing the heap memory of programs into regions is the starting point of region-based memory management. In our existing work of enabling region-based memory management for Merc...
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...
Traversal strategies are at the heart of transformational programming with rewriting-based frameworks such as Stratego/XT or Tom and specific approaches for generic functional pr...
Many recent research projects focus on language support for behavioral software contracts, that is, assertions that govern the boundaries between software building blocks such as ...
We propose a novel type inference algorithm for a dependentlytyped functional language. The novel features of our algorithm are: (i) it can iteratively refine dependent types wit...
“Scrap Your Boilerplate” (SYB) is an established style of generic functional programming. The present paper reconstructs SYB within the Prolog language with the help of the un...