Programmierung in Radiant
Radiant verwendet eine von Bitcoin geerbte Programmiersprache namens Script , fügt jedoch erweiterte Funktionalitäten hinzu, die es ermöglichen, Turing vollständig zu sein.
Um es gut zu verstehen, ist es notwendig, einen Zeitsprung zu den Anfängen von Bitcoin zu machen .
Bitcoin-Skript
Bitcoin benötigte eine einfache Sprache zur Verwaltung von Transaktionen und Satoshi entschied sich für die Verwendung einer stapelbasierten Sprache, ähnlich wie Forth (1970), die Bitcoin Script oder nur Script genannt wird .
Es handelt sich um eine einfache Sprache, die nicht Turing-vollständig ist, was bedeutet, dass ihr bestimmte logische Funktionen, einschließlich Schleifen, fehlen. Dies wurde durchgeführt, um sicherzustellen, dass keine Skripte in Bitcoin aufgrund eines Programmierfehlers große Mengen an Rechenleistung oder Deadlocks verursachen.
Skripte werden fast ausschließlich zum Sperren und Entsperren von Bitcoins verwendet, da Sie damit keine Anwendungen erstellen oder Programme ausführen können.
OP_Codes
Die Opcodes sind einfache Befehle der Skriptsprache und jeder von ihnen hat sehr spezifische Funktionen, die eine präzise Interaktion mit dem Inhalt der Blockchain ermöglichen.
Dies sind die Opcodes, die in Bitcoin verwendet werden können
Im folgenden Bild sehen Sie, wie die Bitcoin- Skriptsprache mit den OP_Codes in einem Validierungsskript funktioniert. Der Ausführungsablauf verläuft von links nach rechts und der Operator auf der rechten Seite führt in diesem Fall eine Aktion auf der linken Seite aus.
6 2 ADD = 8
8 8 EQUAL = TRUE
OP_Codes in Radiant
Radiant fügt der Skriptsprache eine Reihe von Funktionalitäten hinzu, die es ermöglichen, Turing Complete zu sein , basierend auf mathematischer Induktion. Dies wird in den folgenden erweiterten OP_Codes hinzugefügt.
OP_PUSHINPUTREF: Der Schlüssel zu allem
Eines der großen Probleme bei der Verwaltung getaggter UTXOS, wie auch bei den aktuellen Ordnungszahlen, besteht darin, den Verlauf bis zum Ursprung zu kennen. Dies kann auf zwei einfache Arten erfolgen.
1/ Mit einem externen Skript, das den Ursprung überprüft und die Ausgabe ermöglicht (Orakel).
2/ Hinzufügen des gesamten Verlaufs im selben UTXO, sodass dieser kontinuierlich wächst.
In Radiant wird dieses Problem dadurch gelöst, dass diesen Transaktionen eine eindeutige und globale Referenz hinzugefügt wird, die es ermöglicht, den Ursprung auf effiziente Weise zu validieren, ohne dass Orakel erforderlich sind oder die Größe des UTXO kontinuierlich erhöht wird.
RadiantScript
Einer der komplexesten Teile der Programmierung mit OP_Codes ist ihre Stack-Sprache.
Um dieses Problem zu lösen, arbeiten wir an RadiantScript , dem ersten Programmierinterpreter, der das Potenzial von Radiant mit seinen OP_Codes mit einer höheren Programmiersprache für Smart Contracts in Radiant verwaltet .
Seine Syntax basiert auf der Smart-Contract-Sprache Solidity von Ethereum , seine Funktionalität unterscheidet sich jedoch stark, da sich Smart Contracts in Radiant stark von Smart Contracts in Ethereum unterscheiden.
Es befindet sich derzeit in der Testphase und ist dabei, die Programmierung zu dokumentieren, da es neue OP_Codes enthält .
Die Zukunft
Bei der Konzeption von Radiant stand die Idee im Mittelpunkt, vom ersten Tag an zu arbeiten und nicht Monate oder Jahre darauf zu warten, Entwicklungen in die Kette aufzunehmen. Derzeit ist es bereits möglich, alle seine Funktionen zu nutzen, aber der komplizierteste Teil besteht darin, eine Software zu haben, die die neuen OP_Codes programmieren kann , und das erfordert Zeit und Entwicklung.
Aber die Zukunft ist rosig, denn dieser neue Code wird es ermöglichen, hinsichtlich des Potenzials mit den großen Ketten wie Ethereum, Cardano oder Solana zu konkurrieren.
(Dies wird einer von vielen Artikeln sein, die sich auf die technische Seite von Radiant konzentrieren , wo sein volles Potenzial liegt.)
Literaturverzeichnis
- https://radiant4people.com/tech/radiant-system-design
- https://www.researchgate.net/publication/335146032_An_Analysis_of_Non-standard_Transactions
- https://github.com/bitcoinbook/bitcoinbook
- https://github.com/RadiantBlockchain-Community/radiantscript

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































