Scilla

_images/scilla-logo-color-transparent.png

Scilla (即 Smart Contract Intermediate-Level LAnguage)是为 Zilliqa 区块链开发的智能合约中级语言。Scilla是按照原则性语言进行设计的,并且充分考虑了智能合约的安全性。

Scilla通过在智能合约上强加一种结构,从而可以直接在语言级别消除某些已知漏洞,使应用程序不易被攻击。此外,Scilla的原则性结构设计将使应用程序从根源上解决安全问题,而且这种设计更易于接受形式验证。

该语言与语义形式化以及将其嵌入 Coq证明助手 (一种用于对程序属性进行机械化证明的先进工具)进行着并行开发。Coq是基于高级的依赖类型理论,并以大量的数学库为其特征。在此之前,Coq已经成功应用于实现认证(即完全机械验证)编译器、并发和分布式应用程序,其中就包括区块链等。

Zilliqa 是一个具有可扩展性的,Scilla合约在其上运行的基础区块链平台。它采用分片的思想进行并行事务验证。Zilliqa有一个名为 Zilling (简称ZIL)的内置通证,此通证需要在Zilliqa上运行智能合约。

发展现状

Scilla正在积极的研究和开发中,因此本文档中描述的部分规范可能会发生变化。Scilla目前附带了一个解释器二进制文件,已集成到两个Scilla特定的基于web的IDE中。 Scilla尝鲜 展示了这两个IDE的特性。

目录