比特幣現(xiàn)金支持者“Tendo Pein”為BCH協(xié)議設(shè)計(jì)出了智能合約編程語(yǔ)言
周三,一位名叫Tendo Pein的開(kāi)發(fā)者宣布為比特幣現(xiàn)金網(wǎng)絡(luò)推出一種新的智能合約編程語(yǔ)言。Pein稱Spedn是一種基于BCH的語(yǔ)言,設(shè)計(jì)的目的是為了明確和安全,同時(shí)擁有似于C編程環(huán)境的語(yǔ)法。
高級(jí)的BCH智能合約
比特幣現(xiàn)金支持者們已經(jīng)引入一種專門為BCH協(xié)議設(shè)計(jì)的智能合約編程語(yǔ)言。開(kāi)發(fā)者Tendo Pein最近在一篇文章中表示,用比特幣編譯智能合約其中一個(gè)困難就是腳本語(yǔ)言。Pein說(shuō)道,比特幣腳本是一種堆棧式編程語(yǔ)言,類似于Forth語(yǔ)言和環(huán)境。但是Pein并沒(méi)有放棄,而是用對(duì)Haskell數(shù)據(jù)處理語(yǔ)法的熱情開(kāi)始構(gòu)建Spedn。
Pein在他的帖子中宣布:“今天我很高興地發(fā)布Spedn——比特幣現(xiàn)金的高級(jí)智能合約語(yǔ)言。設(shè)計(jì)目的是為了明確和安全:是靜態(tài)類型,可以在編譯的時(shí)候檢測(cè)是許多錯(cuò)誤;是顯式類型,可以不用猜測(cè)返回什么表達(dá);是純函數(shù),沒(méi)有副作用,這是常見(jiàn)的漏洞來(lái)源;擁有類似于C語(yǔ)言的語(yǔ)法。”
Spedn說(shuō)明書(shū)
語(yǔ)法概述和兩個(gè)智能合約例子
Spedn的介紹文檔可供BCH開(kāi)發(fā)者審閱和提供反饋。這份說(shuō)明書(shū)詳細(xì)介紹了語(yǔ)法概述、合約模板、詞匯范圍等等。此外,還詳細(xì)介紹了數(shù)學(xué)函數(shù)、哈希函數(shù)、密碼檢查以及用于編譯的命令行界面。Spedn的說(shuō)明書(shū)進(jìn)一步為開(kāi)發(fā)者提供了理解比特幣腳本的快速入門指南和注釋。
Pein智能合約語(yǔ)言的說(shuō)明書(shū)還給出了將其用于零確認(rèn)處罰的例子,這是一份基于BCH開(kāi)發(fā)者Awemany的合約。Spedn列出的另外一個(gè)例子是Chainbet協(xié)議,最初是由Jonald Fyookball創(chuàng)建的。Chainbet是一種BCH協(xié)議,允許用戶它以去中心化的方式在鏈上投注。在Pein的示例中,這位開(kāi)發(fā)者表示:“競(jìng)猜由幾個(gè)步驟組成,都可以用Spedn來(lái)表達(dá)?!?/p>
用Spedn語(yǔ)言表達(dá)Jonald Fyookball的Chainbet協(xié)議
與以太坊網(wǎng)絡(luò)的Solidity編程語(yǔ)言類似,比特幣現(xiàn)金協(xié)議現(xiàn)在有一種可供開(kāi)發(fā)者可以使用、專門為BCH智能合約設(shè)計(jì)的編程語(yǔ)言。但Spedn的創(chuàng)建者強(qiáng)調(diào),就開(kāi)發(fā)而言,該項(xiàng)目仍處于起步階段。
Pein補(bǔ)充說(shuō):“可能會(huì)出現(xiàn)很多重大更改,這并不是一個(gè)智能合約開(kāi)發(fā)者開(kāi)箱即用的解決方案?!彼趯ふ夷軌蛱峁┱Z(yǔ)法創(chuàng)意、代碼審查、單元測(cè)試和漏洞報(bào)告的貢獻(xiàn)者。