The new Ethereum language Vyper has been released and is so far getting enthusiastic reviews and comments on social media. The language which is an upgrade from the discarded Serpent offers developers an alternative to Solidity with some early converts calling it an improvement.
Vyper Beta Ready for TestingLike Solidity, Vyper compiles down to Ethereum Virtual Machine (EVM) bytecode. Vyper though is designed to simplify that process, with an aim of creating easier to understand Smart Contracts with fewer points of attack and increased transparency.
For a code targeting the EVM it is essential for it to be hyper-efficient in order to execute smart contracts effectively as inefficient code will become prohibitively expensive in specific use cases like micro-transactions. Vyper, in this case, looks logically much like Solidity and syntactically similar to Python less many of the Object Oriented Programming paradigms.
This v0.1.0-beta.1 of Vyper has three key improvements over previous languages as reviewed by Blockgeeks. Firstly the review points out that many of the constructs familiar to programmers have been left out. Striving for simplicity Vyper has eliminated class inheritance, function overloading, operator overloading, and recursion as none of these are technically necessary to create a Turing-complete language.
Also eliminated as unnecessary are the less common constructs; modifiers, inline assembly and binary fixed point with technical reasons given by the review for each being removed.
Vyper Aims at Simplicity but Will Make Things Harder for SecurityWhile the first improvements listed are all focused on simplifying the language the next is making it more complicated where needs be. In the words of the Vyper developers:
“…will deliberately forbid things or make things harder if it deems fit to do so for the goal of increasing security.”
Vyper was created to be as similar to Python as possible, but is not yet a start to finish replacement for either Python or Solidity, but rather a language to use when the need for the highest level of security is required. Smart Contracts holding patient health metadata for instance.
Those who have already begun experimenting with the language have taken to Reddit to spread mostly positive reactions. While some are questioning the need for another language to create smart contracts others are in agreement that security issues needed to be addressed.
As one user posted: “With all the crap security that’s being done in shit smart contracts, these days, I’m really glad that Ethereum is supporting a smaller language focused on readability and security.”
Vyper was not created to replace Solidity, but to be used alongside since it shares the same bytecode in order to boost security. As a recent study found, more than 3,000 vulnerable contracts contain security flaws. Vyper has the potential to play an important role in the future of Ethereum.
Featured image from Shutterstock.