Why Move?
Move is a programming language for writing safe smart contracts originally developed at Facebook to power the Diem blockchain. Move is designed to be a platform-agnostic language to enable common libraries, tooling, and developer communities across diverse blockchains with vastly different data and execution models.
There are already a several Layer1s using Move, such as Starcoin, 0L, Aptos, Sui, and there are several upcoming and existing platforms planning to integrate the Move language.
It has several key features that make it well suited as a programming language for smart contract in the execution layer as well as in the state channel.
- It is easy to implement Account Abstraction. And account abstraction is important for supporting multi-chain account models, and for Web3.
- It enables state scaling for Layer1 by implementing a resource-oriented programming model via linear types that can migrate the state from Layer1 to the execution layer.
- Its stateless contract model enables cross-layer reuse of smart contracts, thus enabling seamless cross-layer interoperability.
- Its state model is parallel execution friendly, which can provide higher throughput execution layers.
MoveOS and Rooch Framework
- MoveOS provides a multi-chain compatible Move execution environment.
- RoochFramework provides account abstraction and cross-layer contracts.