paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Computation semantics of the functional scientific workflow language Cuneiform

函数式科学工作流语言 Cuneiform 的计算语义
JFP vol.272017匹配度 3/10 · 论文提供科学工作流语言 Cuneiform 的形式语义、类型系统和 Erlang 参考实现,属于 PL/形式语义方向,但与用户核心关注的 ML/Agentic 程序静态分析、LLM 与程序分析/形式化验证的交叉、浮点或贝叶斯程序分析均无直接关联;仅可作为形式语义与 DSL 设计的背景参考。引用 15 inbox
JÖRGEN BRANDT, WOLFGANG REISIG, ULF LESER
dblp: 2026-09-10crossref: 2026-09-10

AI 速览

一句话:给出 Cuneiform 的抽象语法、简单类型系统与求值语义,并提供 Erlang 参考实现。

Cuneiform 是面向大规模科学数据分析的极简函数式工作流语言,支持以黑盒方式嵌入 Python、R 等外部代码,提供处理大规模分区数据的数据并行高阶算子,并支持条件与递归,可在多核服务器及 Hadoop、HTCondor 等分布式环境执行。本文为其建立计算语义:给出抽象语法、简单类型系统与求值语义,从而无歧义地规定语言行为;并提供一个简洁的 Erlang 参考实现以展示其可实现性。该语义将 Cuneiform 与简单类型 λ 演算相联系,便于在函数式编程语境下讨论其设计,同时支持推导黑盒算子之前的安全性,并为工作流语言编译器的验证奠定基础。

问题
需要为科学工作流语言 Cuneiform 提供无歧义的行为规范,以支持解释器实现、安全性推理以及工作流语言编译器验证。
方法
给出 Cuneiform 的抽象语法、简单类型系统和求值语义,并用 Erlang 编写参考实现,同时将其与简单类型 λ 演算进行类比。
评估
通过参考实现展示该语义的可实现性,并论证该语义可用于推导语言安全性以及验证工作流语言之间的编译器。
原文摘要(Abstract)

Abstract Cuneiform is a minimal functional programming language for large-scale scientific data analysis. Implementing a strict black-box view on external operators and data, it allows the direct embedding of code in a variety of external languages like Python or R, provides data-parallel higher order operators for processing large partitioned data sets, allows conditionals and general recursion, and has a naturally parallelizable evaluation strategy suitable for multi-core servers and distributed execution environments like Hadoop, HTCondor, or distributed Erlang. Cuneiform has been applied in several data-intensive research areas including remote sensing, machine learning, and bioinformatics, all of which critically depend on the flexible assembly of pre-existing tools and libraries written in different languages into complex pipelines. This paper introduces the computation semantics for Cuneiform. It presents Cuneiform's abstract syntax, a simple type system, and the semantics of evaluation. Providing an unambiguous specification of the behavior of Cuneiform eases the implementation of interpreters which we showcase by providing a concise reference implementation in Erlang. The similarity of Cuneiform's syntax to the simply typed lambda calculus puts Cuneiform in perspective and allows a straightforward discussion of its design in the context of functional programming. Moreover, the simple type system allows the deduction of the language's safety up to black-box operators. Last, the formulation of the semantics also permits the verification of compilers to and from other workflow languages.

链接与引用

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

BibTeX
@article{BrandtRL17,
  title = {Computation semantics of the functional scientific workflow language Cuneiform},
  author = {JÖRGEN BRANDT and WOLFGANG REISIG and ULF LESER},
  journal = {Journal of Functional Programming},
  volume = {27},
  year = {2017},
  doi = {10.1017/s0956796817000119}
}