Év végére kész lehet a Bitcoin új programozási nyelv frissítése
Az elmúlt négy évben a Bitcoin fejlesztői egy olyan általános szkript rendszeren dolgoztak, ami jóval nagyobb fokú programozási szabadságot kínál a BTC ökoszisztémában.
A programnyelv neve Simplicity, amit Adam Back Blockstream CEO mutatott be újra egy április 9-ei videóban. A gépi tanulásra képes programnyelvet Russell O’Connor fejleszti Andrew Poelstra segítségével, a tesztelésért Gregory Maxwell felel. Mind a hárman Backkel együtt Bitcoin protokoll fejlesztők.
„A legalacsonyabb szintje az Assembly bitszintű gépi nyelv. De ebből épül fel számos magasabb szintű belső funkció,” jelenti ki Back, ahol az egyik ilyen magasabb funkciószintet jeteknek nevezi.
Ha például az Ethereum okosszerződéseit vesszük, akkor az Etherscan oldalán olvasható kóddarabot bájtkódra kell alakítani a gépek számára, hogy azt megértsék.
A Simplicity voltaképp ez a bájtkód lenne a Bitcoinnál, ahol a jetek egyfajta sablonok vagy könyvtárak, ahogy azt a lenti demó is bemutatja egy egyszerű utalás esetében.
A nyelv szándékosan nem Turing-teljességű és látszólag csak annak az ellenőrzésére korlátozódik, hogy valami igaz-e. Back szerint:
„Ha a Bitcoin ma rendelkezne Simplicity-vel, akkor képes lennél Schnorrt implementálni magán a Simplicity-n anélkül, hogy soft forkra lenne szükség. Ez demonstrálja a Simplicity általánosságát a kifejezőképessége szempontjából.
Más példák között szerepel egy speciális soft fork kiegészítés a Lightningra, az úgynevezett SIGHASH_NOINPUT vagy más alternatívák.
Ehhez egy ponton szintén Bitcoin soft forkra lenne szükség a Lightning-hoz, az eltoo Lightninghoz. Ha a Bitcoinnak lenne ma Simplicity-je, akkor implementálni tudnád a NOINPUT-ot beépítettként.”
A Schnorr aláírás egy tömörítési forma, ami a Simplicity-ben csak egy jet lenne.
„A Simplicity magja kész interpreter funkcionalitás értelmében, ami a dolgok értékelésének képessége.
De vannak olyan dolgok, amelyek hiányoznak. A végrehajtási idő és a szolgáltatások memória erőforrás-becslése. Néhány szolgáltatás megtagadás fejlesztés.
Van egy bináris formátum, de szeretnénk finalizálni, amit commitálhatunk, hogy fenntarthassuk a bináris kompatibilitást.
Még több jet és ekvivalencia bizonyítás a Simplicity verziójú jetek Simplicity programjaira.
Tehát több bizonyítás, több jet, hogy legyen egy széles jet könyvtár, ami általános dolgokkal van teli és a következő szinten használható egy Bitcoin teljes kliensben.”
Back és a több Bitcoin fejlesztő mindezt az év végéig tervezi befejezni és azt élesíteni a Liquid-en, ami egy engedélyköteles Bitcoin oldallánc.
Onnantól még lesz pár menet, mire az bekerül a Bitcoinba, de az már nyilvánvaló, hogy a jövőben a Bitcoin szélesebb programozhatóságot kaphat protokollszinten, oly akkorát, hogy „sebességkorlátozásokat építhetsz közvetlenül a tárolási sémába amivel megszűnik a forró és hidegtárca és a kiegyensúlyozás közötti különbség.”