# Radix Scrypto
Language documentation is [here](https://docs.radixdlt.com/main/scrypto/introduction.html).
## Takeovers
* The language has a lot in common with Move language: it aims to free data structure from smart contracts and make digital assets as first class citizen. This approach tries to solve the Ethereum problem that make dApp development complex since each asset is managed by a different smart contract.
* The language is **Rust based**.
* It is stable but not yet on Radix DLT (it will be present in the Babylon release)
* There is CLI and sandbox to test contracts (heavy development).
* Rust contracts are compiled in **WASM** and executed in a VM.
* Fees: they take in account both [computation and storage](https://docs.radixdlt.com/main/scrypto/system/fees.html)
## Novelties
* **Blueprint**: kind of class for object oriented languages. It holds a smart contract definition and can be instantiated multiple times.
* **Badge**: particular digital assets that are not transferred between accounts but are used to enforce authorization (like identities). Badge can be fungible of non fungible and an actor can show the ownership of a Badge to a caller by sharing a cryptografic proof of it.
## Considerations
Move has also a Prover to check software consistency and validity.