Arbitrum Stylus: Why We’re Excited

https://blog.caldera.xyz/untitled/

Two weeks ago, Arbitrum Stylus was announced. In short, Stylus provides support for native WASM execution on Arbitrum Chains, which means that smart contracts can be written in any language that compiles to WASM, including Rust, C++, and C.

The space has been positively buzzing with excitement about Arbitrum Stylus since its announcement. The ability to write smart contracts in any language that compiles to WASM is a game-changer, and opens up a world of possibilities. That being said, I’ve been finding that few people understand the concrete ramifications of a technology like Stylus. Others still are (rightfully) skeptical of any technology that might be seen as obviating Solidity.

But here at Caldera, we’re very excited about the potential of Arbitrum Stylus and its impact on the smart contract landscape. As a rollups-as-a-service provider, we talk to the most novel, boundary-pushing teams in the blockchain space, building protocols across gaming, DeFi, zk, social, and more. For applications like these, the potential that Stylus represents is massive. And since Caldera is the top provider of Arbitrum Orbit chains, we’re excited to offer Stylus to our users in the future.

We wanted to share more about why we’re excited about Stylus, and how we see Stylus impacting App-rollup developers in the near future.

Wait, but hasn’t alt-VM been tried before?

You’re right! The blockchain space is littered with the graves of blockchain projects that have used general-purpose languages for smart contracts. Projects such as Neo, Agoric, and EOS offer support for popular languages (Java, Javascript, and C++, respectively), to limited success.

So what’s different with Stylus? Stylus does not replace the EVM with WASM, but adds WASM alongside the EVM. It’s an “EVM-plus” approach, not an “anti-EVM” approach.

Stylus chains still benefit from all of the power and network effects of Solidity and its related infrastructure and tooling, but also unlock a new power for developers who want to dip into a lower level language for some — or all — of their application logic.

The basics: write smart contracts in Rust, C++, C, and more

Firstly, it’s important to understand the significance of being able to write smart contracts in languages other than Solidity. While Solidity is an incredibly powerful language that has been used to develop many successful smart contracts, it does have its limitations. Solidity’s syntax can be challenging for developers who are unfamiliar with it, and Solidity has several quirks that make it a difficult language for developers to work with (such as the lack of floating-point ie “decimal numbers”)

Stylus will make it easier for non-crypto-native developers to write smart contracts in the language of their choice. Right now, Stylus supports Rust, C++, and C, though since WASM is a popular compilation target for many languages many more can be supported (including other smart-contract languages like Move!). This will be especially important for companies that already have teams skilled in these languages, like gaming or fintech.

Furthermore, this allows developers to use the vast array of performant, audited libraries written in C or Rust for certain cryptographic functions. For example, Rust Crypto maintains battle-tested libraries for a litany of cryptographic algorithms, many of which have been externally audited.

Arbitrum Stylus: Why We're Excited
https://github.com/RustCrypto

And Stylus is faster. Much, much, MUCH faster

A common mantra in the startup world is that products must be “10x better” than the incumbent in order to be truly disruptive.

Well, when it comes to speed and performance, Stylus is 50-100x better. Regular stylus operations consume a comically small amount of gas compared to their Ethereum counterparts. Take for example the relative gas costs of an “add” operation:

Arbitrum Stylus: Why We're Excited
Source: https://docs.arbitrum.io/stylus/reference/opcode-hostio-pricing

Not only will this decrease gas usage and increase TPS for existing workflows, it’ll enable entirely new categories of applications to be run fully on chain, like high-frequency trading, fully-on-chain generative NFTs, and real-time, on-chain gaming.

Stylus also massive decreases memory consumption. This’ll be important for applications that will need to allocate lots of “RAM” for calculations, like some games and generative NFTs.

Stylus brings other blockchain ecosystems into the fold

The biggest alternative VMs in the crypto space are based on Rust: Cosmwasm, Substrate, and the Solana VM.

Applications from these ecosystems that want to build in Ethereum previously needed to re-architect their app from scratch in solidity. Now, we’re hopeful that those applications can port their existing code via Stylus.

How does this fit in with Caldera?

Caldera is the #1 provider of Arbitrum Orbit chains. We’re helping projects including Volatilis, Syndr, and Sanko GameCorp build their dedicated L3s.

We view stylus as the missing piece for many novel applications to be built on-chain. Stylus and App-Rollups are a natural fit: both are purpose-built for blockchain developers who strive to push the boundaries of what’s possible.

Internally, we’ll continue to hack on Stylus projects, and we can’t wait to share what we’ve been brewing.

If you’re interested in launching an Arbitrum Orbit chain, get in touch!

Caldera and Espresso Systems unveil Vienna: the first Optimistic Rollup using Espresso’s Decentralized Sequencer

https://blog.caldera.xyz/caldera-and-espresso-systems-unveil-first-optimistic-rollup-using-espressos-decentralized-sequencer/

We’re excited to share the next update in our collaboration with Espresso Systems to bring Espresso’s decentralized sequencer to the OP Stack: The public Vienna devnet!

The launch of this devnet represents the first time that developers and users alike will be able to interact with a live Optimistic Rollup using a decentralized sequencer network.

Why Decentralized Sequencing?

Every rollup relies on a sequencer to order and verify the transactions on the chain. Traditionally, these sequencers have been centralized entities, controlled by a single party or group of parties. The vast majority of rollups currently in production (including Arbitrum One, Optimism mainnet, Base, and zkSync, among others) currently utilize a centralized sequencer.

These rollups are still able to inherit the security properties of their underlying chain via rollup proof systems, but their centralized sequencers still pose several problems:

  • Centralized sequencers create a single point of failure in the system. If the sequencer goes down, it can become impossible or prohibitively expensive to submit transactions for inclusion
  • The centralized sequencer can arbitrarily censor or delay transactions, or reorder transactions to extract MEV
  • Users do not have visibility into how transactions are ordered

In short: the status quo requires users to place some trust in rollup operators: users must trust that the operator will keep the sequencer online, trust that the sequencer orders transactions according to spec, and trust that the operator is not extracting MEV from the chain or otherwise acting in an underhanded way.

At Caldera, we have always committed to acting honestly and fairly. Integrating with Espresso is the next step: now, users can trust in the security and integrity of the sequencer network itself. By using a decentralized sequencer, the power to order transactions is no longer held by a single entity, but rather by the network as a whole.

How it Works

At a high level, the Espresso Sequencer network replaces the rollup’s mempool implementation. User transactions are sent to the Espresso Sequencer rather than the rollup node itself. Then, rollup nodes query sequenced transactions from Espresso’s sequencer node.

Here’s a quick diagram:

Caldera and Espresso Systems unveil Vienna: the first Optimistic Rollup using Espresso's Decentralized Sequencer
  1. User requests are sent to a proxy service
  2. The proxy service routes the request depending on its type. Read requests are forwarded to the node directly. Transactions are instead sent to the Espresso Sequencer, which eventually orders them into blocks
  3. These blocks are pulled into the rollup node, which executes the transaction

If you’re familiar with the internals of the OP stack and/or want a more technical deep dive, consult Espresso’s documentation for a more in-depth explanation.

Espresso and Caldera

Ever since we began working with the Espresso Systems team back in July, we’ve been impressed with their commitment to decentralization and user security. The Espresso team has been a joy to work with, and we enjoy collaborating with them to tackle the challenges of bringing shared, decentralized sequencing to the rollup stacks we operate.

At Caldera, we’re committed to offering the best solutions to builders in our ecosystem — that involves collaborating with the best teams across the modular stack. By building with Caldera, teams can be confident that they will always be the first to access best-in-class blockchain infrastructure.

Get Started

The testnet is live! Get started by heading to the hub page at: https://vienna.caldera.dev/

This link contains documentation, a block explorer, a faucet, and instructions for adding the chain to metamask.

And if you’re interested in launching an Espresso-powered chain for your ecosystem, don’t hesitate to reach out.