FABRKNT
Intro to Reth — Welcome to Rust Ethereum
Why the Rust Ethereum Stack
Lesson 6 of 11·CONTENT12 min20 XP

Treat this page as a workbench, not a blog post. The goal is to extract a reusable mental model from the source and carry it into the rest of the Fabrknt stack.

Course
Intro to Reth — Welcome to Rust Ethereum
Lesson role
CONTENT
Sequence
6 / 11

Lesson 5 — From Solana / Anchor to Reth — what carries over

Question

For Solana / Anchor developers (skip if none). What carries over from Rust + Anchor to the Reth stack — and what doesn't. The account model is fundamentally different, so the mental model needs to switch.

Principle (minimum model)

  • Rust skills carry 100 %. Ownership / borrowing / Result / async / traits / macros — same language. At the language level, nothing changes.
  • Account model is fundamentally different. Solana = flat per-account map + transactions pre-declare read/write accounts. Ethereum = per-contract storage trie + arbitrary SLOAD / SSTORE.
  • Anchor #[account] macro → Solidity storage layout. Both declare an account's structure; expression differs, intent is the same.
  • Solana CPI (Cross-Program Invocation) → Ethereum CALL / DELEGATECALL. Both are inter-contract calls. Solana specifies the account list explicitly; Ethereum uses msg.sender + borrowing.
  • Parallel-execution mental model. Solana = static parallelism (txs pre-declare read/write sets). Ethereum = block-stm optimistic parallelism (collision detection + replay). Both reward Rust concurrency skills.
  • Programs vs smart contracts: upgradability differs. Solana programs are upgradable via authority. Solidity contracts are immutable (proxy pattern for pseudo-upgrade). Design assumptions differ.

Worked example + steps

From Solana / Anchor to Reth — what carries over (skip if not from Solana)

📌 Audience. This lesson is only useful if you've shipped on Solana — Anchor program, Jito MEV bot, Solana program tests, Firedancer contributor, anything with solana-program or anchor-lang. If you've never touched Solana, skip to Set Up Rust. Nothing in the rest of the curriculum depends on this lesson.

Most curricula assume you're coming from Solidity. You're not — you're coming from Rust on a fundamentally different runtime model. This lesson is the translation layer.

1. What carries over (a lot, actually)

Your hard-won skills on the Solana side all stay valuable in the Rust EVM stack:

Skill from SolanaHow it lands here
Rust ownership / lifetimes / asyncIdentical. You skip ~3 weeks of "Rust onboarding" that Solidity migrants need.
Reading low-level systems codeReth and Revm are denser than solana-program, but the reading discipline is the same — work outside in, trust trait shapes, verify against tests.
Mental model for "engine you don't own"If you've patched Firedancer or read Jito's relayer source, the Reth fork model is immediately legible.
Comfort with parallel executionSealevel made you think about concurrent state access. Reth's stage pipeline runs different concerns concurrently; the muscle transfers.
cargo toolchain fluencySame. Workspaces, features, cargo expand for macro debugging — all of it.

The honest framing: your Rust skills are an asset most EVM-side engineers don't have. The curriculum's harder section — Bridge to Intermediate's Rust module — is mostly review for you.

2. What's structurally different

The model gap that does matter:

ConceptSolanaReth / EVM
StatePer-account, declared in advance (account model)Per-contract storage, dynamic (SLOAD / SSTORE on slot keys)
ParallelismPer-account, runtime-scheduled (Sealevel)Sequential within a block; ExEx / Reth SDK lets you add parallel components
ProgramsOne global program, accounts passed inEach contract is its own deployed bytecode with its own storage
Compute unitsLinear gas-like budget per txEVM gas with non-trivial cost curves per opcode
VerificationBPF VM with custom syscallsEVM with EOF + spec-tests
Wallet / signerEd25519 throughoutsecp256k1 mostly, eventually post-quantum via account abstraction

The biggest mental flip: storage is per-contract, not per-account. In Solana you pass the account that holds the state; in EVM the contract is the state. Read this carefully when you reach Inside Revm's Database trait — that trait is the EVM-side answer to "what AccountInfo do I touch?"

A concrete example: a Solana program that updates per-user counters has one account per user. The EVM equivalent is a mapping(address => uint256) counter inside the contract. The contract owns the slot keys; each user's counter lives at keccak256(user_address . slot). Same problem, different model — Solana spreads state across many accounts, EVM packs it into one contract's storage trie.

3. Where the two stacks meet: HyperEVM, Tempo

These chains are specifically built to bring Solana-style performance to EVM semantics. They are the natural landing zone for a Solana migrant:

  • HyperEVM (Hyperliquid): Reth fork with HyperBFT consensus. The execution layer runs EVM bytecode at performance levels Solana engineers expect. Reading HyperEVM means you carry your Solana performance intuitions into EVM territory — this is exactly what Inside Reth + the L1 Architect tier prepare you for.
  • Tempo: a Reth-based payments chain backed by Stripe. Designed for high-throughput stablecoin transfers. Solana's payment-rail experience (Stripe's earlier Solana integration was the predecessor) translates directly.
  • MegaETH: another Reth-based high-performance chain pursuing Solana-like UX.

The Solana → Reth path is not a downgrade. It's a move from a chain-specific runtime to an execution engine that the next generation of high-performance L1s and L2s are building on. The Rust EVM stack is where your skills compound.

4. The specific cultural difference: source-first vs abstraction-first

This is the point Solana engineers tell us about most:

  • Anchor: heavy abstraction. The framework hides the SVM, hides the serialization, hides the account validation. You write #[derive(Accounts)] and trust it. When something breaks, the trail to the actual SVM behaviour is long.
  • Firedancer / Jito: source-first. You read the C, you read the relayer, you patch and rebuild. Excellent culture, narrow access (Firedancer's contribution funnel is effectively closed; Jito is open but Solana-specific).
  • Reth / Revm / Foundry: source-first by design, with broad contribution access. The maintainers explicitly publish "read this, ship a custom node" patterns. This is the discipline RethLab is built around.

If Anchor's abstraction felt opaque to you, RethLab will feel like home. If you enjoyed reading Firedancer / Jito but wanted a broader application surface, the Rust EVM stack is the larger version of that.

5. The curriculum, mapped for you

Given your Rust background, here's an honest recommendation on which lessons you can skip / accelerate:

SectionRecommendation
Beginner — Set Up RustSkim. You have rustup.
Fundamentals — Rust async / traits / genericsSkim. You have this.
Fundamentals — EVM conceptsRead carefully. This is where your model differs from Solana.
Bridge to Intermediate — EVM at the bytes levelRead carefully. Dispatch loop, gas, call frames — all new.
Bridge to Intermediate — Rust for source-readingSkim. Generics, Arc, unsafe, macros — review for you.
Inside Revm / Inside Reth / Inside AlloyRead carefully. The payoff.
L1 Architecture (Advanced) tierThe reason you came. Especially Consensus + Cross-Chain Bridges.
Expert + BuildingThe output. Apply what you read.

6. The bet you're making

Solana's runtime is good but Solana-specific. Reth is the substrate for many chains — Hyperliquid, Tempo, OP-Reth, MegaETH, Berachain — and the count keeps growing. The Rust EVM stack is where your skills compound across the broader L1/L2 surface, not just one chain.

This isn't a takedown of Solana. It's the observation that the engineers who can read Reth are scarcer than the engineers who can read Solana programs, and the chains betting on Reth are growing fast. Your Solana-trained Rust intuitions land you in that scarce-talent niche faster than anyone migrating from Solidity.

Next up

You can either skip Set Up Rust and head straight to Fundamentals (Rust toolchain is yours already), or skim Set Up Rust to install Foundry / Anvil if you haven't seen those tools.

Summary (3 lines)

  • Rust language level carries 100 %. The account model (flat vs storage trie) is the switch. Anchor → Solidity layout / CPI → CALL.
  • Parallel execution: Solana static (declared) vs Ethereum block-stm optimistic. Both leverage Rust concurrency skills.
  • Solana experience transfers ~80 % via Rust competence. Next: substitution case (Reth vs Geth / Alloy vs ethers-rs).