Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rauljordan/zevm
Zig implementation of the Ethereum Virtual Machine
https://github.com/rauljordan/zevm
Last synced: 8 days ago
JSON representation
Zig implementation of the Ethereum Virtual Machine
- Host: GitHub
- URL: https://github.com/rauljordan/zevm
- Owner: rauljordan
- Created: 2023-04-02T16:33:43.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-11-25T21:24:12.000Z (12 months ago)
- Last Synced: 2023-11-25T22:25:09.079Z (12 months ago)
- Language: Zig
- Size: 558 KB
- Stars: 38
- Watchers: 2
- Forks: 4
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Zig Ethereum Virtual Machine
zEVM is an implementation of the Ethereum virtual machine
(EVM) written entirely in Zig. This implementation is
heavily inspired by the work from Revolutionary EVM (rEVM),
written in Rust and highly optimized. The EVM runs
interpreted bytecode on every Ethereum node, and is arguably
the most critical component of the system's consensus.zEVM builds on the principles of zig's blazing fast
performance and simplicity, aiming to be as memory efficient
as possible thanks to Zig's focus on having developers carefully
manage memory and with runtime safety checks for memory usage and
arithmetic operations.zEVM will aim to be the most memory efficient and fastest EVM implementation.
Rust bindings will be provided for zEVM.
## Installing
Built with [Zig](https://ziglang.org/download/) version `0.11.0-dev.2469+aa45854ec`
``` text
git clone https://github.com/rauljordan/zevm && cd zevm
zig run src/main.zig
```## TODOs
- [x] Arithmetic opcodes
- [x] Stack manipulation opcodes
- [ ] Control flow opcodes
- [x] Host defined
- [ ] Host opcodes
- [ ] Passing spec tests
- [ ] Benchmarks
- [ ] Rust bindings