WASM — A key component of the EOS Architecture

MoonX
3 min readMar 28, 2019

--

There are numerous articles written about the EOS platform and its inherent ability to provide a more stable, scalable, and quicker transactions than its competitors. However, there is a very little information about its smart contract design, one of the key elements in Dapp development. With this article, we hope to shed some light on EOS smart contracts and WASM.

What is WASM?

WebAssembly or WASM, can be defined as a small and fast binary format that offers optimal performance in a web browser. It is being hailed as an alternative to JavaScript, a language considered as the only programming language that can be used in conjunction with browsers. We need to understand that WASM is not a programming language, it allows developers to code in a language of their choice. It compiles the code into a bytecode that can be run on a supported browser. This enhancement means that developers no longer need to be restricted with the use of javascript alone and can leverage the capabilities of other languages without the losing out on execution outputs on clients.

Feature Image by MoonX

With its increased interest and mainstream adoption by technology giants like Microsoft, Apple, and Google, the constant development by W3C is exciting news and opens a world of possibilities, specifically with the need for highly performance intense use-cases that require heightened processing and speed.

Smart Contracts

Smart Contracts are digital verification protocols that ensure adherence to a contract or established guidelines. It’s performance as a conduit adds credibility to a transaction.

EOSIO enables creation of smart contracts, whose execution and resource consumption are handled just like a typical application running on an Operating System (OS). This means that Smart contracts can be written in C or C++ and can be compiled using WASM.

WebAssembly code is meant to be faster to load, parse, and execute making it the perfect solution to achieve all the objectives of the EOS blockchain. This also allows developers the autonomy to choose a coding language that best represents their requirement instead of one that is chosen for them. Coupled with conclusive speed tests revealing an ability to perform up to 50, 000 TPS and an effective sandbox environment, it was beyond doubt that WASM was the way forward for the development of EOS Smart Contracts.

EOS is heavily invested in improving the WASM platform, Dan Larimer, the CTO of EOSIO says “Our initial test networks will focus on stability of code and APIs and will execute contracts within a single thread; however, the design of EOS.IO software architecture will allow us to switch to multi-threaded execution without having to hard fork the blockchain.” There is also much conversation about EOS support for multiple higher languages to allow Dapp developers to use languages others than C.

The WASM is truly a game changer and so is EOS, that’s what makes this so exciting.

--

--

MoonX

MoonX is Engineering Powerhouse for FinTech Excellence. Just within a year tagged as the ‘Best Potential Unicorn in Fintech Space 2019’ by Tracxn.