Static analysis approximates the results of a program by examining only its syntax. For example, control-flow analysis (CFA) determines which syntactic lambdas (for functional languages) or (for object-oriented) methods may be invoked at each call site within a program. Rich theoretical results exist studying control flow analysis for Scheme-like languages, but implementations are often complex and specialized. By contrast, object-oriented languages (Java in particular) enjoy high-precision control-flow analyses that scale to thousands (or more) of lines of code. State-of-the-art implementations (such as DOOP on Souffl\'e) structure the analysis using Horn-SAT (Datalog) to enable compilation of the analysis to efficient implementations such as high-performance relational algebra kernels. In this paper, we present an implementation of control-flow analysis for a significant subset of Scheme (including set!, call/cc, and primitive operations) using the Souffl\'e Datalog engine. We present an evaluation on a worst-case term demonstrating the polynomial complexity of our m-CFA and remark upon scalability results using Souffl\'e.


翻译:例如,控制-流分析(CFA)确定在程序内每个呼叫站点可以采用哪种合成羊羔(功能语言)或(目标导向)方法。丰富的理论结果存在于研究对计划类似语言的控制流分析,但实施往往复杂和专业化。相比之下,目标导向语言(特别是Java)得到高精确度控制-流分析,其范围可达到(或以上)代码线。国家-艺术执行(如Souffl\'e的DOOP)组织使用Horn-SAT(Datalog)进行的分析,以便能够汇编分析,以高效实施,如高性能关系代数内核。在本文件中,我们介绍了对一个重要的方案组(包括设置)、调用/cc和原始操作)使用Souffil\e Datalog 引擎进行的控制流分析。我们用Souffil\ 数据引擎对一个最糟糕的术语进行了评估,以显示我们M-CFA结果的多式复杂性。

0
下载
关闭预览

相关内容

专知会员服务
28+阅读 · 2021年8月2日
机器学习组合优化
专知会员服务
106+阅读 · 2021年2月16日
专知会员服务
52+阅读 · 2020年9月7日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
75+阅读 · 2020年7月26日
强化学习最新教程,17页pdf
专知会员服务
167+阅读 · 2019年10月11日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
98+阅读 · 2019年10月9日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
【推荐】自然语言处理(NLP)指南
机器学习研究会
35+阅读 · 2017年11月17日
已删除
将门创投
3+阅读 · 2017年9月12日
VIP会员
相关VIP内容
专知会员服务
28+阅读 · 2021年8月2日
机器学习组合优化
专知会员服务
106+阅读 · 2021年2月16日
专知会员服务
52+阅读 · 2020年9月7日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
75+阅读 · 2020年7月26日
强化学习最新教程,17页pdf
专知会员服务
167+阅读 · 2019年10月11日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
98+阅读 · 2019年10月9日
相关资讯
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
【推荐】自然语言处理(NLP)指南
机器学习研究会
35+阅读 · 2017年11月17日
已删除
将门创投
3+阅读 · 2017年9月12日
Top
微信扫码咨询专知VIP会员