The Pythonic EVM smart contract language Vyper has been released 0.4.0 version. This version introduces a new module system that improves code reusability for smart contracts. The system has two types of library modules: stateless modules and stateful modules. Stateless modules can define functions, events, and constants across contracts without preserving state between calls or transactions. On the other hand, stateful modules can bundle functions and variables together and support ownership sy...