Abstract. This paper considers the use of dependent types to capture information about dynamic resource usage in a static type system. Dependent types allow us to give (explicit) p...
JavaScript performance is often bound by its dynamically typed nature. Compilers do not have access to static type information, making generation of efficient, type-specialized m...
Common record systems only provide access to individual record fields. However, it is often useful to have generic record combinators, that is, functions that work with complete ...
After two decades of effort, type inference for dynamically typed languages scales to programs of a few tens of thousands of lines of code, but no further. For larger programs, th...
Type abstraction and intensional type analysis are features seemingly at odds--type abstraction is intended to guarantee parametricity and representation independence, while type ...