📖 WIPIVERSE

🔍 Currently registered entries: 75,146건

Move (software)

Move is a programming language developed by Diem (formerly Libra), later adopted and further developed by Aptos Labs and Mysten Labs for the Aptos and Sui blockchains, respectively. It is designed with a focus on safety and flexibility for smart contract development, particularly concerning digital asset management. Move distinguishes itself through its resource-oriented programming model.

Key Features:

  • Resource-Oriented Programming: Move treats digital assets as resources, which have specific properties and restrictions. Resources cannot be copied or implicitly discarded, enforcing strong ownership and preventing issues like double-spending. This is accomplished through linear type system, where a resource value can only be used once.

  • Module System: Move code is organized into modules, which encapsulate data structures (resources) and the functions that operate on them. Modules provide a level of abstraction and security by controlling access to the underlying data.

  • Global Storage Access: Move smart contracts can access and modify the global storage of the blockchain, allowing for complex state management. However, access is carefully controlled to prevent unauthorized modifications.

  • Formal Verification: Move is designed to be amenable to formal verification techniques. The language's strong type system and ownership model make it easier to reason about the behavior of smart contracts and prove their correctness. This is a key benefit for securing valuable digital assets.

  • Transaction Scripting: Move supports the creation of transaction scripts, which are sequences of operations that can be executed atomically on the blockchain. This allows for complex workflows involving multiple resources and parties.

History:

Move was initially conceived by Diem (formerly Libra) as the smart contract language for their proposed blockchain. Following the discontinuation of the Diem project, several independent teams continued to develop and adapt the language. Aptos Labs and Mysten Labs subsequently adopted Move, using it as the foundation for their respective blockchain platforms, Aptos and Sui. Each platform has made additions and modifications to the core Move language to optimize it for their specific architecture.

Use Cases:

Move is primarily used for building decentralized applications (dApps) and smart contracts on blockchain platforms. Common use cases include:

  • Decentralized Finance (DeFi): Creating decentralized exchanges, lending platforms, and other financial instruments.
  • Non-Fungible Tokens (NFTs): Managing ownership and transfers of digital assets.
  • Supply Chain Management: Tracking the movement of goods and materials.
  • Governance: Implementing decentralized voting and decision-making processes.

Relationship to Other Languages:

While Move shares some similarities with other programming languages like Rust, its resource-oriented programming model distinguishes it from most traditional languages. This focus on asset safety and controlled ownership makes it particularly well-suited for blockchain applications.