paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Demand-on-Demand Control-Flow Analysis

按需再按需的控制流分析
ICFP 10(ICFP)2026匹配度 3/10 · 该论文属于经典的程序分析/抽象解释范畴,研究函数式程序的需求驱动控制流分析及其对内联优化的支撑,与用户关注的 PL→AI(用静态分析处理 ML/Agentic 程序)、AI→PL、浮点程序分析、贝叶斯程序分析等交叉方向均无直接关联。仅在方法层面与用户对静态分析的兴趣有微弱重叠(动态调用目标分析或可用于高阶/动态语言编写的 Agent 代码),但不涉及 LLM、浮点或贝叶斯等核心交叉点。引用 0 inbox
Chahyun Kang, Kimball Germane
crossref: 2026-09-10

AI 速览

一句话:提出 DoDCFA,一种穷尽式与需求驱动混合的控制流分析,在提升需求驱动 CFA 速度的同时恢复经典 CFA 的适用性,足以支撑内联优化。

函数式程序中调用目标通常由运行时计算得出,使得控制流推理变得困难。经典控制流分析(CFA)虽能有效推理控制流及环境行为,但代价高昂;需求驱动 CFA 虽更廉价,却通用性较差,难以完成经典 CFA 所能承担的任务,而许多基础优化恰恰依赖控制流推理。本文提出按需再按需控制流分析(DoDCFA),一种将穷尽式分析与需求驱动分析相结合的混合 CFA。该方法旨在恢复经典 CFA 的部分通用性与适用性,同时改善需求驱动 CFA 的速度,从而能够以较低成本有效分析控制流与环境行为,为内联(inlining)等优化提供依据。

问题
函数式程序中调用目标需动态计算,导致控制流推理困难;经典 CFA 通用但昂贵,需求驱动 CFA 廉价却适用范围有限,难以满足依赖控制流推理的优化需求。
方法
提出 DoDCFA,一种穷尽式与需求驱动相结合的混合控制流分析,在需求驱动框架中恢复经典 CFA 的部分通用性与适用性。
评估
摘要未报告具体实验数据,仅说明该分析能以较低成本有效分析控制流与环境行为,足以支撑内联决策。
原文摘要(Abstract)

Understanding program behaviors requires reasoning about control flow. Functional programs complicate this reasoning since call targets are computed in general. Control-flow analysis (CFA) can effectively reason about control flow (and much more) but is costly. Demand-driven CFA is less expensive but less versatile, and it is difficult to make it do what classical CFA does. This is unfortunate because many fundamental optimizations rely on control flow reasoning. In this paper, we present Demand-on-Demand Control-Flow Analysis (DoDCFA), a hybrid exhaustive--demand-driven CFA that recovers some of the versatility/applicability of classical CFA while improving on the speed of Demand CFA. The result is an analysis that can inexpensively and effectively analyze control flow and environment behavior sufficient to justify inlining.

链接与引用

DOI 原文 · PDF(开放获取) · DBLP

BibTeX
@article{KangG26,
  title = {Demand-on-Demand Control-Flow Analysis},
  author = {Chahyun Kang and Kimball Germane},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {10},
  number = {ICFP},
  year = {2026},
  doi = {10.1145/3828687}
}