- Eine Alpha-Version der IOTA Smart Contracts für die X-Team Community steht kurz vor dem Launch.
- Zum Start werden die beiden Programmiersprachen Rust und Go zur Verfügung stehen.
Wie IOTA Mitbegründer Dominik Schiener gestern via Discord verlautbarte, steht der Launch einer Alpha-Version der IOTA Smart Contracts Protokoll (ISCP) kurz bevor. Nachdem die IOTA Stiftung im Oktober letzten Jahres bereits eine erste Pre-Alpha-Version veröffentlicht hatte, könnte die lang erwartete Second-Layer-Lösung nun bald einem ausgewählten Kreis von Testern zur Verfügung stehen.
Wie bereits im Rahmen von früheren Projekten wird die IOTA Stiftung die „X Teams“, eine Gruppe von engagierten Community-Mitgliedern, die in verschiedenen Entwicklungsstadien mit den Mitarbeitern der IOTA Foundation zusammenarbeiten, nutzen, um ein erstes Feedback zu erhalten. Schiener schrieb via Discord:
Alle, die mit uns zusammen IOTA Smart Contracts für unsere Alpha-Version bauen wollen, machen sich bitte bereit. Die X Teams werden sehr bald starten.
IOTA setzt auf Rust und Go
Im Oktober wurden drei Proof of Concepts (PoC) vorgestellt, die von der IOTA Stiftung entwickelt wurden, um die „State-of-the-Art-Implementierung des IOTA Smart Contract Protocol (ISCP)“ zu demonstrieren. Mit dazu veröffentlichte die Stiftung auch eine Reihe von Tools für Entwickler, um die Smart Contract-Funktionalität von IOTA zu erkunden.
Mit dem Alpha-Release für das X Team werden nun erstmals auch externe Entwickler jenseits der IOTA Stiftung Smart Contracts schreiben können. Wie Eric Hop, Senior Product Owner für Smart Contracts bei der IOTA Stiftung, verriet, werden zum Start die beiden Programmiersprachen Rust als auch Go zur Verfügung stehen. „Wir arbeiten an der Dokumentation“, fügte Hop hinzu.
Weitere Programmiersprachen sind zwar denkbar, bedürfen aber einer Schnittstellenbibliothek zu Wasm:
Es ist nicht so einfach, wie eine Sprache, die Wasm unterstützt. Sie müssen diese spezifische Sprache noch mit der Sandbox-Umgebung des Wasp-Knotens verbinden. Stellen Sie sich das so vor, dass Sie die Schnittstellenbibliothek für diese Sprache bereitstellen.
Wir haben derzeit die Schnittstellenbibliotheken für Rust und Go. Das Design unserer Bibliothek ist so ausgelegt, dass sie problemlos auch für andere Sprachen erstellt werden kann, aber diese anderen Sprachen benötigen eine geeignete Wasm-Codegenerierung. Daran mangelt es den meisten Sprachen derzeit noch. Selbst die Go-Implementierung hat ein paar Pakete, die noch nicht richtig übersetzen.
Auf die Frage, ob die Sandbox-Umgebung „genau“ die Gleiche sein wird, wie die Smart Contracts auf dem Mainnet haben wird, verriet Hop, dass eine Migration des Smart Contracts vom Testnet in das Mainnet möglich sein wird:
Ja. Sobald wir auf dem Mainnet laufen können, werden die SCs, die Sie auf dem Testnet erstellt haben, einfach laufen Das Design des ISCP ist sehr stark kompartimentiert. Die Konsens- und VM-Module sind völlig unabhängig von der zugrunde liegenden Tangle-Implementierung. Was wiederum bedeutet, dass auch die Wasm-VM völlig unabhängig vom zugrunde liegenden Netzwerk ist.
Im Moment verwenden wir Goshimmer, weil es die Grundvoraussetzungen bietet, die wir brauchen (UTXO, Colored Token und BLS-Signaturen). Aber sobald diese in Chrysalis verfügbar sind, passen wir die ISCP-Netzwerkschicht daran an und lassen sie dort laufen.

