We present RefScript, a lightweight refinement type system for TypeScript, that enables static verification of higher- order, imperative programs. We develop a formal core of RefScript that delineates the interaction between refinement types and mutability. Next, we extend the core to account for the imperative and dynamic features of TypeScript. Finally, we evaluate RefScript on a set of real world benchmarks, including parts of the Octane benchmarks, D3, Transducers, and the TypeScript compiler.
Thu 16 Jun
|10:30 - 11:00|
Yizhou ZhangCornell University, Guido SalvaneschiTU Darmstadt, Quinn BeightolCornell, Barbara LiskovMIT, Andrew MyersCornell UniversityLink to publication DOI Media Attached
|11:00 - 11:30|
|Pre-print Media Attached|
|11:30 - 12:00|
Panagiotis VekrisUniversity of California, San Diego, Benjamin CosmanUniversity of California, San Diego, Ranjit JhalaUniversity of California, San DiegoMedia Attached