paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Behind every great deep learning framework is an even greater programming languages concept (keynote)

每个伟大的深度学习框架背后,都有一个更伟大的编程语言概念(主旨演讲)
FSE Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering2018匹配度 4/10 · 该论文主题属于 PL 与机器学习的宏观交叉,讨论深度学习框架背后的编程语言概念,与用户“PL→AI”方向有背景关联;但它未涉及静态分析、Agentic/LLM 程序、浮点程序分析或贝叶斯程序分析等具体研究问题,偏愿景式 keynote。引用 11 inbox
Erik Meijer
crossref: 2026-09-12

AI 速览

一句话:提出 Software 2.0:以训练数据和学习模型替代手工算法,并指出深度学习框架依赖编程语言概念。

本文是 Erik Meijer 的主旨演讲,讨论 Software 2.0(用学习到的模型编程)迅速取代 Software 1.0(用手工算法编程)的趋势。传统软件工程要求工程师形式化规约、设计算法并组合或分解系统;Software 2.0 则让工程师收集训练数据并输入 ML 算法,由算法合成目标函数的近似,训练数据是该函数的部分外延定义。核心论点是:代码不再是关键制品,数据成为中心,源代码编译被用数据训练模型替代。这一编程风格对生命周期模型、项目规划与估算、需求分析、程序设计、构建、调试、测试、维护和实现等传统实践造成深远冲击,甚至可能使之过时。作者据此强调,伟大的深度学习框架背后是更伟大的编程语言概念。

问题
传统 Software 1.0 的软件工程实践(规约、设计、调试、测试、维护等)在 Software 2.0 以数据训练模型的编程范式下可能过时。
方法
主旨演讲式概念分析,对比手工算法编程与基于训练数据合成模型近似的编程,并指出深度学习框架背后的编程语言概念。
评估
未报告实证评估;以趋势观察、类比和软件工程实践影响分析为主。
原文摘要(Abstract)

In many areas, such as image recognition, natural language processing, search, recommendation, autonomous cars, systems software and infrastructure, and even Software Engineering tools themselves, Software 2.0 (= programming using learned models) is quickly swallowing Software 1.0 (= programming using handcrafted algorithms). Where the Software 1.0 Engineer formally specifies their problem, carefully designs algorithms, composes systems out of subsystems or decomposes complex systems into smaller components, the Software 2.0 Engineer amasses training data and simply feeds it into an ML algorithm that will synthesize an approximation of the function whose partial extensional definition is that training data. Instead of code as the artifact of interest, in Software 2.0 it is all about the data where compilation of source code is replaced by training models with data. This new style of programming has far-reaching consequences for traditional software engineering practices. Everything we have learned about life cycle models, project planning and estimation, requirements analysis, program design, construction, debugging, testing, maintenance and implementation, … runs the danger of becoming obsolete.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot4652,
  title = {Behind every great deep learning framework is an even greater programming languages concept (keynote)},
  author = {Erik Meijer},
  booktitle = {FSE},
  year = {2018},
  doi = {10.1145/3236024.3280855}
}