Rhyme:数据为中心的多范式查询语言
1. Rhyme 的设计目标
Rhyme 是一种全新的声明式多范式查询语言,旨在查询和转换嵌套结构,如 JSON、张量等。它借鉴了多种现有方法,包括查询语言(如 GraphQL、JQ、XQuery)、逻辑编程语言(如 Datalog)以及函数逻辑编程语言(如 Verse)。Rhyme 由 JavaScript 实现,目前作为开源 Node.js 包提供。
Rhyme 的主要特点包括:
- 多范式 :支持广泛的数据处理操作(如 SQL/DataFrames)、张量表达式和可视化等。
- 函数式 :基于函数而非关系作为核心抽象,将数据表示为具体化的函数(即,将键映射到值的对象)。
- 逻辑 :使用逻辑变量和统一化来表达连接、聚合和其他形式的迭代。
- 元编程 :依赖于表达能力强的宿主语言(如 JavaScript)来组合查询片段并运行查询(使用函数式/面向对象 API,以及准引用语法)。
2. Rhyme 的多范式特性
2.1 数据处理操作
Rhyme 无缝地容纳了标准数据处理操作,如聚合、分组、连接等,同时支持超出常规数据处理操作的范式。例如,它能够表达各种类型的计算,如类似 Einops 的张量操作,以及能够声明性地表达可视化(如总结查询输出的表格)。
示例:聚合与张量计算
// 聚合操作
r
超级会员免费看
订阅专栏 解锁全文
44

被折叠的 条评论
为什么被折叠?



