eWASM (Ethereum WebAssembly) is a new virtual machine for computing, processing transactions, deploying smart contracts and running dApps.
eWASM will replace the existing Ethereum virtual machine (EVM). Ethereum WebAssembly will perform the same functions, but with more speed, better scalability and ecosystem flexibility. These parameters will make it easier for developers to create decentralized applications on the Ethereum protocol and make the network more efficient.
The introduction of eWASM will put Ethereum on a par with projects such as EOS, Tron, Cardano, which use WebAssembly in their processes. The task of eWASM is to optimize the blockchain functionality using the WASM programming language.
WASM (WebAssembly) is an innovative binary code format for client scripts (sequences of actions for automatically completing tasks) for modern browsers. The founder of WASM is the World Wide Web Consortium.
WebAssembly is small in size, so it loads and runs very fast. As a result, the maximum smart contracts execution speed is achieved, and it also becomes possible to develop smart contracts in classic programming languages āā(C, C++ and Rust). WASM is compatible with any hardware and machine architectures for running software.
In addition, eWASM eliminates the need for a hard fork. With this virtual environment, current precompiled EVM contracts can be replaced with eWASM contracts by simply rewriting and redeploying.
How WASM works. Source - Interlogica.it
What is the Ethereum virtual machine?
The Ethereum virtual machine is the software system that makes the blockchain work. It also allows you to create smart contracts, Dapps and blockchains based on the Ethereum protocol. It can be compared to an operating system. However, unlike Windows, it supports thousands of computers simultaneously.
The EVM is responsible for updating the blockchain according to the results of the transactions that are added to the blocks. Without a virtual machine, there would be no data synchronization in the distributed ledger. Each node would have its own version of the blockchain with disparate transactions and accounts. Using the EVM ensures that all activities are performed in the same environment with the same performance, regardless of the physical machine.
The virtual machine performs simple calculations, recursions, comparisons, changing variables, processes smart contracts, and hosts complex decentralized applications. It can be perceived as a computer that performs all these operations with each new block.
Virtual machine architecture. Source - Microsoft.
Why should the EVM be discarded?
The EVM functionality is simply outdated and does not correspond to the load levels that prevail in the network at the moment.
A virtual machine without the WASM programming language does not process operations as fast as modern challenges require. The EVM code specs have not changed since this environment came into existence. It has not been optimized for different hardware platforms. Therefore, low EVM capabilities affect the networkās efficiency as a whole. Since the original specification of this virtual machine has not been transformed, it lacks up-to-date tools for writing modern smart contracts.
The EVMās main goal was to correctly update information in the blockchain based on speed and scalability. According to Lane Rettig, one of the Ethereum developers, the current virtual machine is theoretical, not practical, as it is not very suitable for real-life applications. At the same time, eWASM is designed with efficiency and speed in mind, achieved by simply translating the actual encoding logic.