当前位置: X-MOL 学术ACM Trans. Program. Lang. Syst. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Higher-order Demand-driven Program Analysis
ACM Transactions on Programming Languages and Systems ( IF 1.5 ) Pub Date : 2019-07-02 , DOI: 10.1145/3310340
Leandro Facchinetti 1 , Zachary Palmer 2 , Scott Smith 1
Affiliation  

Developing accurate and efficient program analyses for languages with higher-order functions is known to be difficult. Here we define a new higher-order program analysis, Demand-Driven Program Analysis (DDPA), which extends well-known demand-driven lookup techniques found in first-order program analyses to higher-order programs. This task presents several unique challenges to obtain good accuracy, including the need for a new method for demand-driven lookup of non-local variable values. DDPA is flow- and context-sensitive and provably polynomial-time. To efficiently implement DDPA, we develop a novel pushdown automaton metaprogramming framework, the Pushdown Reachability automaton. The analysis is formalized and proved sound, and an implementation is described.

中文翻译:

高阶需求驱动程序分析

众所周知,为具有高阶函数的语言开发准确有效的程序分析是很困难的。在这里,我们定义了一个新的高阶程序分析,需求驱动程序分析(DDPA),它扩展了众所周知的需求驱动在一阶程序分析中对高阶程序的查找技术。这项任务为获得良好的准确性提出了几个独特的挑战,包括需要一种新的方法来以需求驱动的方式查找非局部变量值。DDPA 是流和上下文敏感的,并且可证明是多项式时间的。为了有效地实现 DDPA,我们开发了一种新颖的下推自动机元编程框架,即下推可达性自动机。该分析被形式化并被证明是合理的,并描述了一个实现。
更新日期:2019-07-02
down
wechat
bug