Re-implementation of the Ethereum execution-specs in Rust for the purpose of learning Ethereum
The puspose of execution-specs is to further understand how transactions work on the EVM for anyone who wants to create an EIP or develop their own layer 1. Most client nodes, whether layer 1 or 2, are build in Go Lang or Rust for performance reasons, but they are very implementation specific and suffer from legacy codebases. If the execution specs were available in these languages it would allow client node developers to start from a better place as opposed to copying and pasting existing codebases.
There are over 90k tests written in Python that take over 50mins to run. We have re-implemented this in Rust with documentation for the purpose of learning and educating developers on how Ethereum works. The docs are generated with cargo docs and the output is the docs.rs format, which is accessible to Rust developers.