April 30, 2023 - 5 min read
Sui optimizes for efficiency in a number of ways, including a new programming language called Sui Move.
Sui is a proof-of-stake blockchain and smart contract protocol which is operated by a permissionless set of validators, and aims to offer both scalability and low-latency transactions as they are mostly processable in parallel. The idea is to optimize processing resources with the optionality of increasing throughput via additional resources.
Sui is backed by a number of peer-reviewed research papers and multiple years of development. To achieve higher performance, it forgoes the traditional means of reaching consensus and has opted for simpler and lower-latency primitives for use cases like payments and remittances. Nobody wants to stand around waiting for payments to clear at a point of sale, making Sui attractive for latency-sensitive applications.
Storage is also low-cost and horizontally scalable, enabling developers to define complex assets with attributes that live on-chain instead of introducing scaling layers or otherwise offloading responsibilities onto off-chain storage. Keeping attributes on-chain increases transparency for applications, users, and auditors.
Moreover, on-chain assets packed with new, programmable features enable economies based on utility as opposed to chasing after artificial scarcity. Developers can implement dynamic NFTs that can be upgraded in application-specific ways.
That means NFTs can change in appearance and age based on players leveling-up or using customizable items. This makes NFTs more engaging and adds inherent value with greater longevity. Let’s take a look at how transacting on the Sui network takes place.
SUI is the native token, with a capped supply of ten billion to be distributed over time. Half are to be used for the Community Reserve, and the other half are for users, contributors, and early supporters of the project. SUI tokens pay for gas, and can also be delegated to validator pools to earn staking rewards in a Delegated Proof-of-Stake model.
Rewards are calculated and distributed every epoch, which should sound familiar to those who have staked ADA with a Cardano validator. Validators derive their voting power for every epoch based on how many SUI tokens have been delegated to their staking pool.
Transactions in Sui are sorted and validated in different ways to optimize for efficiency based on whether they’re characterized as simple or complex. Simple transactions affecting only single-owner, single-address objects may bypass Sui’s main consensus protocol. That is, activities like minting NFTs are lower priority and can be added to the blockchain in such a way as to leave a smaller footprint in terms of bandwidth used.
More complex transactions which affect shared objects or objects owned by multiple addresses pass through a custom BFT consensus mechanism. Essentially, this would include most DeFi transactions with a buyer/seller or sender/receiver. More information on Sui’s Narwhal and Bullshark DAG-based mempool and consensus can be found on Github.
At the end of each epoch, fees collected from transactions are distributed to validators according to their stake in the network. Validators subsequently distribute those fees to users which delegate their SUI to that validator’s pool. Each pool sets its own specific rules as to how tokens are shared amongst stakers.
With other projects, requiring nodes to reach global consensus when validating transactions can be a bottleneck when it comes to throughput. However, Sui is able to scale horizontally while still being cheap in terms of costs per transaction. By designating transactions by their complexity, it eliminates the need to achieve global, synchronous consensus on every transaction.
What’s more, Sui enables parallel agreement on causally independent transactions. The network eliminates much of the overhead of having to reach global consensus by having validators commit such transactions using a bespoke method called Byzantine Consistent Broadcast, which also preserves network liveness.
The Sui blockchain is written in Rust, and its smart contracts use an adaptation of the Move Language called Sui Move which allows the code to define assets with an owner. Developers writing with Sui Move can define operations on Sui assets like custom rules for asset creation and evolution.
Sui Move was specifically developed for writing more secure smart contracts compared to Solidity. Move is object-centric, has strong ownership types, and therefore token standard dependencies are explicitly encoded. This allows Sui to execute transactions on many objects in parallel.
The language’s design aims to prevent common issues that plague other languages like reentrancy attacks and spoofed transactions that attackers have used to exploit regular users for huge gains in years past.
Also, Move is designed with built-in interoperability characteristics, making it easy to write efficient code and integrate it with other blockchains and applications. It also has a well-defined set of language constructs, and a clear execution model. Its safety features, expressiveness, and clear semantics make it attractive for Web3 devs.
Since MoveLang is object-oriented, it’s designed to be both expressive and flexible. That is, the language inherently promotes modularity in its code, enabling developers to create additional components and libraries for the community to reuse. This expedites the development process and makes it easier to optimize and share code.
Move is also a statically-typed language, which means that types are checked by the compiler. That is, Move supports formal verification, which “proves” the correctness of written code and subsequently prevents unintended behavior. This reduces runtime errors and makes it easier to identify bugs early on before they become major issues.
While the ecosystem is young, there is nevertheless a lot to be excited about. From the robust new language to the high throughput capabilities of its parallel consensus model, expectations are certainly high. We expect to see big announcements continue to pour forth from this project, with Web2 brands launching products on the network and Web3 applications flocking to the flourishing community.
Sign up for the Supra newsletter for company news, industry insights, and more. You’ll also be the first to know when we come out of stealth mode.