Scrypto [ /’skrɪptoʊ/ ] is an open-source, smart-contract programming language, designed specifically for the development of decentralized applications (dApps) on Radix.

THE MEME STUDIO | Web3 Marketing Agency

Page Sponsor: The Meme Studio: Web3 Marketing Agency

https://youtu.be/-keCfLzcYv0?si=hVyYv5G-El5Vwsup

DEVELOPMENT
Paradigm https://en.wikipedia.org/wiki/Imperative_programming (https://en.wikipedia.org/wiki/Procedural_programming, https://en.wikipedia.org/wiki/Object-oriented_programming);
Supports https://en.wikipedia.org/wiki/Functional_programming programming;
https://en.wikipedia.org/wiki/Structured_programming;
Developer(s) https://radixdlt.notion.site/8092803705114cd1b34bbef5dd98d7af
Initial Release https://www.radixdlt.com/post/alexandria-scrypto-is-here
Latest Release https://github.com/radixdlt/radixdlt-scrypto/releases
Documentation https://docs-babylon.radixdlt.com/main/scrypto/introduction.html
Github Repo https://github.com/radixdlt/radixdlt-scrypto
License http://radixfoundation.org/licenses/license-v1
Community https://t.me/RadixDevelopers

Overview

Scrypto exists as a set of libraries and compiler extensions that add features, syntax and data types to the Rust programming language, allowing for an ‘asset-oriented’ style of programming that treats tokens, NFTs and other ‘resources’ as native objects.

Features

Scrypto introduces several key features designed specifically for Radix development:

Syntax and Tools

Scrypto adopts a syntax similar to the Rust programming language, as it is built on the Rust compiler toolchain. Like Rust, Scrypto utilizes:

However, Scrypto extends Rust by adding:

Scrypto code compiles to WebAssembly (WASM) to run on the Radix virtual machine. The key tools available in the Scrypto developer toolkit include:

The toolkit enables rapid development, testing, and deployment of end-to-end decentralized applications with Scrypto.

Blueprints

Scrypto introduces a concept called ‘blueprints’ - similar to classes in object oriented programming - to build reusable, modular smart contract components.

Blueprints define the structure and logic for components, including:

Components are then live instances created from blueprints, like objects instantiated from classes.

This separation of blueprints and components enables:

Scrypto developers are encouraged to build small, modular blueprints that "do one thing well" - following Unix philosophy - rather than massive monolithic contracts.

Packages

A Scrypto package is a bundle of one or more blueprints that is published to the Radix ledger.