cardano智能合约开发语言介绍-2023-02

452 阅读2分钟

我们知道以太坊的智能合约开发语言有以下几种。

  1. Solidity:Solidity是最流行的以太坊智能合约开发语言之一,它是一种基于类C语言的高级语言,专门用于编写以太坊智能合约。
  2. Vyper:Vyper是一种相对较新的智能合约开发语言,它是一种Python风格的语言,专为以太坊虚拟机设计,旨在提供更好的安全性和简洁性。
  3. Serpent:Serpent是一种基于Python的智能合约开发语言,它在以太坊早期的版本中曾经被广泛使用,但目前已经不再推荐使用。
  4. LLL:LLL是一种较低级别的以太坊智能合约开发语言,它与以太坊虚拟机更接近,因此需要开发人员具备更高的技术水平。
  5. Bamboo:Bamboo是一种基于Go语言的智能合约开发语言,它旨在提供更好的可读性和易用性。

接下来介绍cardano的智能合约开发语言

Plutus

Plutus是Cardano智能合约的主要开发语言,它是一种基于Haskell的语言,旨在提供更强大的安全性和表达能力。Plutus还配备了一个模拟器和开发工具,使得开发人员可以更加轻松地测试和部署智能合约。

Marlowe

Marlowe是一种针对金融智能合约的领域特定语言(DSL),旨在为非专业开发人员提供简单易用的智能合约开发工具。Marlowe具有可视化界面,使得开发人员可以使用拖放的方式构建智能合约,而无需编写代码。

aiken

Aiken 是一种全新的语言,拥有自己的语法和编译器。编译器恰好是用 Rust 编写的,但它不是 Rust。Aiken 是纯函数式的,具有静态类型和类型推断。使用lucid发布智能合约合约。

Eopsin

它允许您使用 100% 有效但受限的 Python3 编写智能合约。使用lucid发布智能合约合约。可以使用python3.8,python3.9支持不好。

Helios

Helios 也是一种全新的语言。编译器使用go和rust编写。Helios 也是纯函数式的,但类型推断有限。它还支持类似于记录和枚举的自定义类型。发布方式目前看还没有使用lucid的例子,需要cardano-cli,那么需要运行cardano节点,比较重。

Plutarch

Plutarch 不是一种新语言。您可以将其视为使用 Haskell 创建智能合约的 eDSL。

plu-ts

plu-ts 不是一种新语言。您可以将其视为使用 Typescript 创建智能合约的 eDSL。

Scalus

Plutus 的 Scala 实现。Scalus 是一组可与 Cardano Untyped Plutus Core 一起使用的库,可在 JVM 和 JavaScript 上运行。