功能编排式编程

摘要:功能编程是一种新兴的编程范式,用于并发和分布式系统,开发人员编写应该执行的通信,然后通过编译器自动获得分布式实现。功能编程的理论通常会提供强大的理论保证,最重要的是:生成的实现在操作上对应于源编排,并且无死锁。 目前,该范例的最先进的版本是Choral,它是一个面向Java的面向对象编排编程语言。Choral与已知的编排理论存在显著差异,并引入了表达完全分布式的高阶编配(参数化在编配上的编配)的可能性。因此,不清楚编配的通常保证是否仍然适用于更一般的高阶编配设置。 我们介绍了Chor{lambda},第一种功能化编程语言:它将编配中的标准通信原语作为函数进行新的表述,并基于{lambda}演算。Chor{lambda}是第一个解释了高阶编排编程核心思想的理论(如Choral)的理论。缩小实践和理论之间的差距需要为{lambda}项开发新的评估策略和类型学方法,以应对编配中的分布式计算性质。我们通过一系列示例说明了Chor{lambda}的表达能力,其中包括对Choral原始演示中的关键示例的重建。我们的理论支持编配编程的预期属性,并缩小了功能编程和编配编程社区之间的差距。

作者:Lu''is Cruz-Filipe, Eva Graversen, Lovro Lugovi''c, Fabrizio Montesi, Marco Peressotti

论文ID:2111.03701

分类:Programming Languages

分类简称:cs.PL

提交时间:2022-08-18

PDF 下载: 英文版 中文版pdf翻译中