# Mengapa Rome?

Beberapa proyek membawa kompatibilitas EVM ke Solana. Rome mengambil pendekatan yang secara fundamental berbeda.

## Pembeda Utama

### 1. Komposabilitas Atomik melalui CPI

Rome adalah satu-satunya lingkungan EVM di mana kontrak Solidity dapat memanggil program Solana dalam transaksi yang sama. Satu fungsi Solidity dapat:

```solidity
// Semuanya dalam satu transaksi atomik:
int256 price = IPyth(PYTH).getPrice("SOL/USD");        // Baca oracle Pyth
uint256 quote = IJupiter(JUPITER).getQuote(USDC, SOL);  // Dapatkan kuotasi Jupiter
IJupiter(JUPITER).swap(USDC, SOL, amount, minOut);       // Eksekusi swap
IKamino(KAMINO).deposit(SOL, collateralAmount);          // Setorkan ke Kamino
```

Jika satu langkah gagal, seluruh transaksi dibatalkan. Tidak ada eksekusi parsial, tidak ada kondisi balapan.

### 2. Satu State

Di Rome, token SPL dan representasi ERC-20-nya adalah akun dasar yang sama. Saat kontrak Solidity mentransfer USDC, yang dipindahkan adalah USDC SPL yang sebenarnya — bukan salinan terbungkus.

Artinya:

* **Tidak ada fragmentasi likuiditas** — DeFi Solana dan DeFi EVM berbagi pool yang sama
* **Tidak ada risiko bridging** — tidak ada bridge yang bisa dieksploitasi karena memang tidak ada bridge
* **Komposabilitas waktu nyata** — kontrak EVM melihat perubahan state Solana secara langsung

### 3. Kedaulatan Aplikasi

Setiap aplikasi di Rome mendapatkan lingkungan EVM-nya sendiri:

* **Chain ID kustom** — aplikasi Anda adalah chain-nya sendiri
* **Token gas kustom** — token SPL apa pun, dipatok harga melalui pool LP Meteora
* **Pendapatan gas** — biaya terkumpul untuk aplikasi Anda, bukan protokol Rome
* **Tooling EVM lengkap** — pengguna Anda terhubung dengan MetaMask, developer Anda menggunakan Hardhat

### 4. Transfer Hooks Token-2022 di EVM

Rome adalah satu-satunya platform tempat logika EVM dapat menjalankan Token-2022 Transfer Hooks. Saat seseorang mentransfer aset Token-2022 di Jupiter, Raydium, atau DEX Solana apa pun, kontrak kepatuhan Solidity dapat dieksekusi sebagai transfer hook — pemeriksaan KYC, penyaringan sanksi, penegakan royalti, semuanya dalam Solidity.

## Kapan Menggunakan Rome

**Gunakan Rome ketika:**

* Anda ingin kontrak EVM dengan akses langsung ke DeFi Solana (Jupiter, Kamino, Drift, Meteora)
* Anda sedang membangun infrastruktur kepatuhan untuk token SPL (hook Token-2022)
* Anda ingin chain EVM yang berdaulat di Solana dengan token gas Anda sendiri
* Anda mem-port kontrak Ethereum yang membutuhkan kecepatan dan likuiditas Solana
* Anda membutuhkan operasi atomik lintas EVM dan program Solana

**Pertimbangkan alternatif ketika:**

* Anda hanya membutuhkan program Solana standar (gunakan Solana/Anchor native)
* Anda membutuhkan penyelesaian di mainnet Ethereum (gunakan L2 tradisional)
* Anda membutuhkan pengiriman pesan lintas chain tanpa eksekusi EVM (gunakan Wormhole/Hyperlane secara langsung)

## Selanjutnya

* [Arsitektur](/id/memulai/architecture.md) — cara kerja Rome EVM di dalam Solana
* [Quickstart](/id/memulai/quickstart.md) — terapkan kontrak pertama Anda


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rome.builders/id/memulai/why-rome.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
