no code implementations • 1 Jul 2015 • Niki Vazou, Alexander Bakst, Ranjit Jhala
We present a notion of bounded quantification for refinement types and show how it expands the expressiveness of refinement typing by using it to develop typed combinators for: (1) relational algebra and safe database access, (2) Floyd-Hoare logic within a state transformer monad equipped with combinators for branching and looping, and (3) using the above to implement a refined IO monad that tracks capabilities and resource usage.
Programming Languages Software Engineering D.2.4; D.3.3; F.3.1