arXivDaily arXiv每日学术速递 周一至周五更新
北美退伍军人节(Veterans Day),12 日无更新
arXiv 2403.20132cs.LOcs.PL
收藏

jq 语言的形式化规范

A formal specification of the jq language

Michael Färber

AI总结:

本文为 jq 语言的一个大型子集给出了形式化语法和指称语义,并提出了一种新的更新解释方法,以提升执行的可预测性与性能。

摘要:

jq 是一个广泛使用的工具,它提供了一种用于操作 JSON 数据的编程语言。然而,jq 语言目前仅由其实现来定义,这使得对其行为进行推理变得困难。为此,我们为 jq 语言的一个大型子集提供了形式化语法和指称语义。我们最重要的贡献是提供了一种解释更新的新方法,该方法允许更可预测和更高效的执行。

英文摘要:

jq is a widely used tool that provides a programming language to manipulate JSON data. However, the jq language is currently only specified by its implementation, making it difficult to reason about its behaviour. To this end, we provide a formal syntax and denotational semantics for a large subset of the jq language. In particular, we give a translation from jq programs to lambda terms. Our most significant contribution is to provide a new way to interpret updates that allows for more performant execution. We implement our semantics in two interpreters and evaluate the performance.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑