JavaScript的依赖类型
编程语言
2012-08-02 v3
摘要
我们提出Dependent JavaScript (DJS),一种命令式、面向对象、动态语言的静态类型方言。DJS通过嵌套精化类型、堆的强更新以及堆展开以精确追踪原型层次结构的组合,支持特别具有挑战性的特性,例如运行时类型测试、高阶函数、可扩展对象、原型继承和数组。通过我们的DJS实现,我们证明了该类型系统足够表达能力强,能够推理从多个来源(包括畅销书《JavaScript: The Good Parts》和SunSpider基准测试套件)中选取的小例子中发现的多种棘手惯用法。
引用
@article{arxiv.1112.4106,
title = {Dependent Types for JavaScript},
author = {Ravi Chugh and David Herman and Ranjit Jhala},
journal= {arXiv preprint arXiv:1112.4106},
year = {2012}
}