Unison功能语言吹捧不可变代码
开源Unison语言被其创建者称为“未来的友好编程语言”,其核心思想是代码是不可变的,并由其内容来标识。现在,Unison处于公开的Alpha版本中,计划有多个里程碑的Alpha版本,Unison将于今年正式发布。 Unison旨在为构建分布式系统提供特殊支持。激发Unison的思想是,应该在各个方面精心设计用于构建软件的技术。复杂性将被消除。一位核心开发人员Paul Chiusano表示,该语言的核心开发人员将Unison作为一个研究项目启动,他们愿意重新考虑编程的工作方式。 仍处于实验阶段,Unison是类似于Haskell的静态类型函数编程语言,具有以下功能: Unison中的定义由内容标识,每个定义构成一个语法树。通过以合并定义依赖项散列的方式对树进行散列,Unison散列可唯一标识该定义。此功能旨在作为认真改善编程体验,消除构建和大多数依赖冲突的基础,并允许轻松部署代码和类型化的持久存储。 为了进行重构,Unison提供了一个结构化的过程,其中逐步在一侧建立了新的编译版本的代码,从而提供了诸如始终可运行且永不中断的代码库之类的好处,从而无需升级整个代码库。 该语言中的Remote.Transfer函数提供了“远程效果”,有助于在多个Unison节点上进行计算。动态计算任意计算是可行的,因为Unison中的定义是通过其内容的加密哈希标识的。传输计算后,接收方节点将检查内容是否引用了任何未知的哈希。在传输完成并进行计算之前,会将未知的哈希值同步到接收者。 可从项目网站和GitHub获得Unison。
Yorumlar
Yorum Gönder