There's more...

Vyper's goal is to increase security and simplicity while writing smart contracts. To achieve this, the language brings some restrictions when compared with Solidity. These are listed here:

  • Modifiers: Vyper does not support modifiers, because it makes it too easy to write misleading code. Modifiers encourage people to write code where the execution jumps around the file and increases complexity. The recommendation is to write these checks as asserts in functions where they are required.
  • Inheritance: Contract inheritance makes code too complicated to understand, which negatively impacts auditability.
  • Inline assembly: Inline assembly restricts the reader or developer to search for a variable name in order to find all instances where that variable is read or modified.
  • Function overloading: The problem with function overloading is that it increases complexity and makes the code much harder to search through, as you have to keep track of which call refers to which function.
  • Operator overloading: Operator overloading allows “+” to be overloaded so that it executes commands that are not visible at first glance, such as sending funds the user did not want to send.
  • Recursive calling and infinite length loops: This makes it impossible to set an upper bound on gas limits, which allows gas limit attacks.
  • Binary fixed point: Binary fixed point approximations are often required and they do not have an exact representation. 
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.219.134.198