Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve clarity and grammatical accuracy in technical descriptions #1663

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions cairo/kakarot-ssj/docs/general/contract_bytecode.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
# Bytecode Storage Methods for Kakarot on Starknet

The bytecode is the compiled version of a contract, and it is what the Kakarot
EVM will execute when a contract is called. As Kakarot's state is embedded into
the Starknet chain it is deployed on, contracts are not actually "deployed" on
EVM will execute when a contract is called. As Kakarot's state is embedded in the Starknet chain where it is deployed, contracts are not actually "deployed" on
Kakarot: instead, the EVM bytecode of the deployed contract is first executed,
and the returned data is then stored on-chain at a particular storage address
inside the Starknet contract corresponding to the contract's EVM address, whose
Expand Down
4 changes: 2 additions & 2 deletions cairo/kakarot-ssj/docs/general/machine.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,14 @@ contexts, which were used to model the execution of sub-calls. However, this
design was not possible to implement in Cairo, as Cairo does not support the use
of `Nullable` types containing dictionaries. Since the `ExecutionContext` struct
contains such `Nullable` types, we had to change the design of the EVM to use a
machine with a single stack and memory, which are our dict-based data
machine with a single stack and memory, which as our dict-based data
structures.

## The Kakarot Machine design

To overcome the problem stated above, we have come up with the following design:

- There is only one instance of the Memory and the Stack, which is shared
- There only one instance of Memory and Stack, which are shared
between the different execution contexts.
- Each execution context has its own identifier `id`, which uniquely identifies
it.
Expand Down
Loading