Skip to content

Commit a407a97

Browse files
authored
Merge pull request #2863 from OffchainLabs/glossary-new-terms
Glossary new terms
2 parents efd963a + 6900398 commit a407a97

File tree

9 files changed

+90
-15
lines changed

9 files changed

+90
-15
lines changed

docs/partials/_glossary-partial.mdx

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,10 @@ An Arbitrum Chain that settles to a [Parent chain](/intro/glossary#parent-chain)
154154

155155
A program running on a user's machine, often in the user's browser, that interacts with contracts on an [Arbitrum chain](/intro/glossary#arbitrum-chain) and provides a user interface.
156156

157+
### Commitment {#commitment}
158+
159+
In the context of Arbitrum, commitments represents a part of a chain's history. Commitments are used during the fraud proof dispute resolution process, where validators create a Merkle commitment to the history between two assertions. This allows them to efficiently narrow down disagreements about the chain state by using Merkle proofs to specific blocks or states within that range[(1)](https://docs.arbitrum.io/how-arbitrum-works/bold/bold-technical-deep-dive).
160+
157161
### Confirmation {#confirmation}
158162

159163
The decision by an [Arbitrum chain](/intro/glossary#arbitrum-chain) to finalize an assertion as part of the chain's history. Once an [assertion](/intro/glossary#assertion) is confirmed its [Child to parent chain Messages](/intro/glossary#l2-to-l1-message) (e.g., withdrawals) can be executed.
@@ -210,10 +214,6 @@ A step in the [Challenge protocol](/intro/glossary#challenge-protocol) in which
210214

211215
A software application used for transacting with the Ethereum [Blockchain](/intro/glossary#blockchain).
212216

213-
### EVM+ {#evm}
214-
215-
The paradigm introduced by [Stylus](/intro/glossary#stylus) in which Arbitrum's EVM compatibility is preserved while new features and improvements are introduced.
216-
217217
### Execution claim {#execution-claim}
218218

219219
A cryptographic commitment to the computed state.
@@ -266,6 +266,14 @@ An execution-layer client that defines the Ethereum state transition function an
266266

267267
The equivalent of gas in the [Stylus](/intro/glossary#stylus) vm. Ink is introduced for finer granularity than gas offers since Stylus's operations are considerably cheaper than their EVM analogs.
268268

269+
### L1 {#L1}
270+
271+
L1, or Layer 1, refers to the underlying blockchain responsible for maintaining the integrity of the distributed ledger. In the context of Arbitrum One and Nova, L1 is the main Ethereum blockchain (Mainnet), and Arbitrum operates as a Layer 2 scaling solution built on top of this base layer. However, any EVM-compatible blockchain can be an L1 to an Arbitrum chain.
272+
273+
### L2 {#L2}
274+
275+
An L2, or Layer 2, is a trustless scaling solution built on top of Ethereum's Layer 1 (L1) base protocol. Arbitrum is a Layer 2 protocol that increases scalability and reduces the cost of transactions on Ethereum's Layer 1 without introducing additional trust assumptions. It does that by executing some computation offchain and batch-posting transactions on the underlying Layer 1.
276+
269277
### L2 Block {#l2-block}
270278

271279
Data structure that represents a group of L2 transactions (analogous to L1 blocks).
@@ -286,6 +294,10 @@ Trustless scaling solutions built on top of Ethereum's [Layer 1 (L1)](/intro/glo
286294

287295
An Arbitrum chain whose core contract reside on an Arbitrum [Layer 2 (L2)](/intro/glossary#layer-2-l2) chain.
288296

297+
### MultiVM {#multivm}
298+
299+
MultiVM refers Arbitrum's ability to support multiple virtual machines (VMs). Specifically, Arbitrum Stylus introduces a WebAssembly (WASM)-based virtual machine alongside the traditional Ethereum Virtual Machine (EVM). This means developers can write smart contracts in languages like Rust, C, or C++ (compiled to WASM) or continue using Solidity for the EVM, and both types of contracts can interact seamlessly on the same chain. This approach preserves EVM compatibility while enabling more efficient execution and access to a broader set of programming languages and libraries[(1)](https://docs.arbitrum.io/stylus/concepts/how-it-works)[(2)](https://docs.arbitrum.io/launch-arbitrum-chain/partials/config-other-language-support).
300+
289301
### Native Fee Token {#native-fee-token}
290302

291303
An `ERC-20` token used as the native currency for gas fees on an [Arbitrum chain](/intro/glossary#arbitrum-chain) (i.e., as opposed to using Ether). [Arbitrum chains](/intro/glossary#arbitrum-chains) introduced the option for chains to use native fee tokens.
@@ -298,6 +310,10 @@ The initial builders Arbitrum; current contributors to the Arbitrum ecosystem an
298310

299311
Final step in a challenge; a single operation of the Arbitrum VM ([WASM](/intro/glossary#wasm) ) is executed on the underlying chain, and the validity of its state transition is verified.
300312

313+
### Oracle {#oracle}
314+
315+
Oracles are third-party services that provide smart contracts with external information. They act as a bridge between blockchains and the outside world, which expands their functionality by enabling smart contracts to access data beyond their native networks.
316+
301317
### Outbox {#outbox}
302318

303319
A parent chain contract responsible for tracking [Child to parent chain Message](/intro/glossary#l2-to-l1-message)s, including withdrawals, which can be executed once they are confirmed. The outbox stores a Merkle Root of all outgoing messages.
@@ -314,6 +330,10 @@ Anyone can become a validator by running an Arbitrum node, without permission.
314330

315331
A web application maintained by [Offchain Labs](/intro/glossary#offchain-labs) showcasing the Arbitrum ecosystem; visit it [here](https://portal.arbitrum.io/).
316332

333+
### Precompile {#precompile}
334+
335+
A precompile is a predefined smart contract with a special address that provides specific functionality executed natively by the Arbitrum client, rather than at the EVM bytecode level. Precompiles are used to introduce functions that would be computationally expensive if run in EVM bytecode, or to facilitate interactions between the parent and child chains. Arbitrum supports all Ethereum precompiles and also provides additional precompiles specific to Arbitrum chains, which can be called from smart contracts like regular Solidity functions[(1)](https://docs.arbitrum.io/build-decentralized-apps/precompiles/overview).
336+
317337
### Predecessor Assertion {#predecessor-assertion}
318338

319339
The last confirmed valid state of the chain.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
title: Commitment
3+
key: commitment
4+
titleforSort: Commitment
5+
---
6+
7+
In the context of Arbitrum, commitments represents a part of a chain's history. Commitments are used during the fraud proof dispute resolution process, where validators create a Merkle commitment to the history between two assertions. This allows them to efficiently narrow down disagreements about the chain state by using Merkle proofs to specific blocks or states within that range[(1)](https://docs.arbitrum.io/how-arbitrum-works/bold/bold-technical-deep-dive).

docs/partials/glossary/_evm.mdx

Lines changed: 0 additions & 7 deletions
This file was deleted.

docs/partials/glossary/_l1.mdx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
title: L1
3+
key: L1
4+
titleforSort: L1
5+
---
6+
7+
L1, or Layer 1, refers to the underlying blockchain responsible for maintaining the integrity of the distributed ledger. In the context of Arbitrum One and Nova, L1 is the main Ethereum blockchain (Mainnet), and Arbitrum operates as a Layer 2 scaling solution built on top of this base layer. However, any EVM-compatible blockchain can be an L1 to an Arbitrum chain.

docs/partials/glossary/_l2.mdx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
title: L2
3+
key: L2
4+
titleforSort: L2
5+
---
6+
7+
An L2, or Layer 2, is a trustless scaling solution built on top of Ethereum's Layer 1 (L1) base protocol. Arbitrum is a Layer 2 protocol that increases scalability and reduces the cost of transactions on Ethereum's Layer 1 without introducing additional trust assumptions. It does that by executing some computation offchain and batch-posting transactions on the underlying Layer 1.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
title: MultiVM
3+
key: multivm
4+
titleforSort: MultiVM
5+
---
6+
7+
MultiVM refers Arbitrum's ability to support multiple virtual machines (VMs). Specifically, Arbitrum Stylus introduces a WebAssembly (WASM)-based virtual machine alongside the traditional Ethereum Virtual Machine (EVM). This means developers can write smart contracts in languages like Rust, C, or C++ (compiled to WASM) or continue using Solidity for the EVM, and both types of contracts can interact seamlessly on the same chain. This approach preserves EVM compatibility while enabling more efficient execution and access to a broader set of programming languages and libraries[(1)](https://docs.arbitrum.io/stylus/concepts/how-it-works)[(2)](https://docs.arbitrum.io/launch-arbitrum-chain/partials/config-other-language-support).

docs/partials/glossary/_oracle.mdx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
title: Oracle
3+
key: oracle
4+
titleforSort: Oracle
5+
---
6+
7+
Oracles are third-party services that provide smart contracts with external information. They act as a bridge between blockchains and the outside world, which expands their functionality by enabling smart contracts to access data beyond their native networks.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
title: Precompile
3+
key: precompile
4+
titleforSort: Precompile
5+
---
6+
7+
A precompile is a predefined smart contract with a special address that provides specific functionality executed natively by the Arbitrum client, rather than at the EVM bytecode level. Precompiles are used to introduce functions that would be computationally expensive if run in EVM bytecode, or to facilitate interactions between the parent and child chains. Arbitrum supports all Ethereum precompiles and also provides additional precompiles specific to Arbitrum chains, which can be called from smart contracts like regular Solidity functions[(1)](https://docs.arbitrum.io/build-decentralized-apps/precompiles/overview).

static/glossary.json

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,10 @@
139139
"title": "Client",
140140
"text": "<p>A program running on a user&#39;s machine, often in the user&#39;s browser, that interacts with contracts on an <a href=\"/intro/glossary#arbitrum-chain\">Arbitrum chain</a> and provides a user interface.</p>\n"
141141
},
142+
"commitment": {
143+
"title": "Commitment",
144+
"text": "<p>In the context of Arbitrum, commitments represents a part of a chain&#39;s history. Commitments are used during the fraud proof dispute resolution process, where validators create a Merkle commitment to the history between two assertions. This allows them to efficiently narrow down disagreements about the chain state by using Merkle proofs to specific blocks or states within that range<a href=\"https://docs.arbitrum.io/how-arbitrum-works/bold/bold-technical-deep-dive\">(1)</a>.</p>\n"
145+
},
142146
"confirmation": {
143147
"title": "Confirmation",
144148
"text": "<p>The decision by an <a href=\"/intro/glossary#arbitrum-chain\">Arbitrum chain</a> to finalize an assertion as part of the chain&#39;s history. Once an <a href=\"/intro/glossary#assertion\">assertion</a> is confirmed its <a href=\"/intro/glossary#l2-to-l1-message\">Child to parent chain Messages</a> (e.g., withdrawals) can be executed.</p>\n"
@@ -187,10 +191,6 @@
187191
"title": "Ethereum Wallet",
188192
"text": "<p>A software application used for transacting with the Ethereum <a href=\"/intro/glossary#blockchain\">Blockchain</a>.</p>\n"
189193
},
190-
"evm": {
191-
"title": "EVM+",
192-
"text": "<p>The paradigm introduced by <a href=\"/intro/glossary#stylus\">Stylus</a> in which Arbitrum&#39;s EVM compatibility is preserved while new features and improvements are introduced.</p>\n"
193-
},
194194
"execution-claim": {
195195
"title": "Execution claim",
196196
"text": "<p>A cryptographic commitment to the computed state.</p>\n"
@@ -243,6 +243,14 @@
243243
"title": "Ink",
244244
"text": "<p>The equivalent of gas in the <a href=\"/intro/glossary#stylus\">Stylus</a> vm. Ink is introduced for finer granularity than gas offers since Stylus&#39;s operations are considerably cheaper than their EVM analogs.</p>\n"
245245
},
246+
"L1": {
247+
"title": "L1",
248+
"text": "<p>L1, or Layer 1, refers to the underlying blockchain responsible for maintaining the integrity of the distributed ledger. In the context of Arbitrum One and Nova, L1 is the main Ethereum blockchain (Mainnet), and Arbitrum operates as a Layer 2 scaling solution built on top of this base layer. However, any EVM-compatible blockchain can be an L1 to an Arbitrum chain.</p>\n"
249+
},
250+
"L2": {
251+
"title": "L2",
252+
"text": "<p>An L2, or Layer 2, is a trustless scaling solution built on top of Ethereum&#39;s Layer 1 (L1) base protocol. Arbitrum is a Layer 2 protocol that increases scalability and reduces the cost of transactions on Ethereum&#39;s Layer 1 without introducing additional trust assumptions. It does that by executing some computation offchain and batch-posting transactions on the underlying Layer 1.</p>\n"
253+
},
246254
"l2-block": {
247255
"title": "L2 Block",
248256
"text": "<p>Data structure that represents a group of L2 transactions (analogous to L1 blocks).</p>\n"
@@ -263,6 +271,10 @@
263271
"title": "Layer 3 (L3)",
264272
"text": "<p>An Arbitrum chain whose core contract reside on an Arbitrum <a href=\"/intro/glossary#layer-2-l2\">Layer 2 (L2)</a> chain.</p>\n"
265273
},
274+
"multivm": {
275+
"title": "MultiVM",
276+
"text": "<p>MultiVM refers Arbitrum&#39;s ability to support multiple virtual machines (VMs). Specifically, Arbitrum Stylus introduces a WebAssembly (WASM)-based virtual machine alongside the traditional Ethereum Virtual Machine (EVM). This means developers can write smart contracts in languages like Rust, C, or C++ (compiled to WASM) or continue using Solidity for the EVM, and both types of contracts can interact seamlessly on the same chain. This approach preserves EVM compatibility while enabling more efficient execution and access to a broader set of programming languages and libraries<a href=\"https://docs.arbitrum.io/stylus/concepts/how-it-works\">(1)</a><a href=\"https://docs.arbitrum.io/launch-arbitrum-chain/partials/config-other-language-support\">(2)</a>.</p>\n"
277+
},
266278
"native-fee-token": {
267279
"title": "Native Fee Token",
268280
"text": "<p>An <code>ERC-20</code> token used as the native currency for gas fees on an <a href=\"/intro/glossary#arbitrum-chain\">Arbitrum chain</a> (i.e., as opposed to using Ether). <a href=\"/intro/glossary#arbitrum-chains\">Arbitrum chains</a> introduced the option for chains to use native fee tokens.</p>\n"
@@ -275,6 +287,10 @@
275287
"title": "One Step Proof",
276288
"text": "<p>Final step in a challenge; a single operation of the Arbitrum VM (<a href=\"/intro/glossary#wasm\">WASM</a> ) is executed on the underlying chain, and the validity of its state transition is verified.</p>\n"
277289
},
290+
"oracle": {
291+
"title": "Oracle",
292+
"text": "<p>Oracles are third-party services that provide smart contracts with external information. They act as a bridge between blockchains and the outside world, which expands their functionality by enabling smart contracts to access data beyond their native networks.</p>\n"
293+
},
278294
"outbox": {
279295
"title": "Outbox",
280296
"text": "<p>A parent chain contract responsible for tracking <a href=\"/intro/glossary#l2-to-l1-message\">Child to parent chain Message</a>s, including withdrawals, which can be executed once they are confirmed. The outbox stores a Merkle Root of all outgoing messages.</p>\n"
@@ -291,6 +307,10 @@
291307
"title": "Portal",
292308
"text": "<p>A web application maintained by <a href=\"/intro/glossary#offchain-labs\">Offchain Labs</a> showcasing the Arbitrum ecosystem; visit it <a href=\"https://portal.arbitrum.io/\">here</a>.</p>\n"
293309
},
310+
"precompile": {
311+
"title": "Precompile",
312+
"text": "<p>A precompile is a predefined smart contract with a special address that provides specific functionality executed natively by the Arbitrum client, rather than at the EVM bytecode level. Precompiles are used to introduce functions that would be computationally expensive if run in EVM bytecode, or to facilitate interactions between the parent and child chains. Arbitrum supports all Ethereum precompiles and also provides additional precompiles specific to Arbitrum chains, which can be called from smart contracts like regular Solidity functions<a href=\"https://docs.arbitrum.io/build-decentralized-apps/precompiles/overview\">(1)</a>.</p>\n"
313+
},
294314
"predecessor-assertion": {
295315
"title": "Predecessor Assertion",
296316
"text": "<p>The last confirmed valid state of the chain.</p>\n"

0 commit comments

Comments
 (0)