paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Data-Driven Evidence-Based Syntactic Sugar Design

数据驱动的基于证据的语法糖设计
ICSE Proceedings of the IEEE/ACM 46th International Conference on Software Engineering2024匹配度 2/10 · 论文属于编程语言设计与语法糖挖掘,使用频繁子图挖掘分析 Java 控制流图,虽与程序分析/PL 相邻,但不涉及 LLM/Agent、机器学习系统静态分析、浮点程序分析或贝叶斯程序分析等核心方向。其数据驱动语言设计目标与用户当前研究问题交集很少。引用 1 inbox
David OBrien, Robert Dyer, Tien Nguyen, Hridesh Rajan
crossref: 2026-09-12

AI 速览

一句话:通过挖掘 1.66 亿 Java 方法的频繁控制流子图,数据驱动地发现可新增语法糖以简化常见代码惯用法。

论文关注编程语言演化中语法糖设计长期依赖经验与直觉的问题。作者提出一种数据驱动的语言演化方法:将开源 Java 方法的控制流图进行泛化,以捕获更广泛的编程语言用法与重复模式,并在包含 166,827,154 个 Java 方法的超大规模数据集上应用频繁子图挖掘,从而识别可能带来显著影响的新语法糖机会。实验发现了一批涉及多种编程构造、可在 Java 中实现的新语法糖,它们能够简化频繁出现的代码惯用法。该工作为 Java 语言设计者提供有价值的数据证据,并作为数据驱动编程语言设计与演化的概念验证。

问题
语法糖和编程语言演化通常由轶事经验与直觉驱动,缺乏大规模数据证据;如何系统发现真正值得加入语言的高频代码模式是核心问题。
方法
将 Java 控制流图泛化,并在 1.66 亿个开源 Java 方法上进行频繁子图挖掘,以提取可被新语法糖简化的重复编程惯用法。
评估
通过挖掘大规模开源 Java 方法数据集,识别出多种可实现的候选语法糖,并用这些结果验证数据驱动语言设计方法的可行性与潜在价值。
原文摘要(Abstract)

Programming languages are essential tools for developers, and their evolution plays a crucial role in supporting the activities of developers. One instance of programming language evolution is the introduction of syntactic sugars, which are additional syntax elements that provide alternative, more readable code constructs. However, the process of designing and evolving a programming language has traditionally been guided by anecdotal experiences and intuition. Recent advances in tools and methodologies for mining open-source repositories have enabled developers to make data-driven software engineering decisions. In light of this, this paper proposes an approach for motivating data-driven programming evolution by applying frequent subgraph mining techniques to a large dataset of 166,827,154 open-source Java methods. The dataset is mined by generalizing Java control-flow graphs to capture broad programming language usages and instances of duplication. Frequent subgraphs are then extracted to identify potentially impactful opportunities for new syntactic sugars. Our diverse results demonstrate the benefits of the proposed technique by identifying new syntactic sugars involving a variety of programming constructs that could be implemented in Java, thus simplifying frequent code idioms. This approach can potentially provide valuable insights for Java language designers, and serve as a proof-of-concept for data-driven programming language design and evolution.

链接与引用

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

BibTeX
@inproceedings{paperbot11313,
  title = {Data-Driven Evidence-Based Syntactic Sugar Design},
  author = {David OBrien and Robert Dyer and Tien Nguyen and Hridesh Rajan},
  booktitle = {ICSE},
  year = {2024},
  doi = {10.1145/3597503.3639580}
}