This repository contains documents describing the design and high-level overview of EVM 2.0. Expect the contents of this repository to be in flux: everything is still under discussion.
The goal for this repository is to track research and development of alternative VM's for use in Ethereum. Currently eWASM has had the most research.
eWASM is an experimental VM design for Ethereum that uses Webassembly as the instruction set. This design follows Wasm's design which should be referenced for further details.
WebAssembly or wasm is a new, portable, size- and load-time-efficient format. WebAssembly is currently being designed as an open standard by a W3C Community Group.
Ethereum WASM builds on the foundation laid by the Webassembly by adding the following.
- Specifies an Ethereum system module to facilitate interaction with the Ethereum Environment
- Adds Metering
- Restricts non-deterministic behavior
For now, high-level design discussions should continue to be held in the design repository, via issues and pull requests. Feel free to file issues.