Close Menu

    Subscribe to Updates

    What's Hot

    Dow Jones flat as U.S.

    June 9, 2025

    Crypto Products See ‘Noticeable Deceleration’ of Inflows As Monetary Policy Uncertainty Grows: CoinShares

    June 9, 2025

    Paraguay president’s X account hacked, falsely claims Bitcoin as legal tender

    June 9, 2025
    Facebook X (Twitter) Instagram
    laicryptolaicrypto
    Demo
    • Ethereum
    • Crypto
    • Altcoins
    • Blockchain
    • Bitcoin
    • Lithosphere News Releases
    laicryptolaicrypto
    Home Update on the Vyper Compiler
    Ethereum

    Update on the Vyper Compiler

    Michael JohnsonBy Michael JohnsonDecember 19, 2024No Comments3 Mins Read
    Share
    Facebook Twitter LinkedIn Pinterest Email



    The idea behind the Vyper Project was to develop something that was designed at the language level to naturally exhibit a high degree of safety. The project was originally authored by Vitalik as a proof-of-concept replacement for Serpent, its predecessor, but shortly after its creation Vyper found itself without a dedicated maintainer. Luckily, there were enthusiastic community members that took up the torch and continued development of the project, and we (the EF Python Team) became re-involved in the project for some time earlier this year.

    This fall, a preliminary security audit was performed by the Consensys Diligence team on the Python-based Vyper compiler. You can read the results for yourself here.

    We encourage you to read the report, however, there are two main take-aways.

    1. There are multiple serious bugs in the Vyper compiler.
    2. The codebase has a high level of technical debt which will make addressing these issues complex.

    Since the existing Python-based Vyper implementation is not yet production ready, it has been moved out of the ethereum github organization into its own organization: vyperlang. The existing maintainers are planning to address the issues independently once again, but we will continue to follow the project closely here: > https://github.com/vyperlang/vyper

    Meanwhile, our team continues work on a Rust-based compiler in tandem. More on that below, but first, here’s a bit more on how we got to where we are today.

    Over the course of this year we worked with the project maintainers to focus on improving the code quality and architecture of the project. After a few months of work we were skeptical that the python codebase was likely to deliver on the idea that Vyper promised. The codebase contained a significant amount of technical and architectural debt, and from our perspective it didn’t seem like the existing maintainers were focused on fixing this.

    Exploring Rust

    Earlier this year in August, we explored producing a version of the Vyper compiler built on fundamentally different architecture. The goal was to write a compiler in Rust that leverages the existing work by the Solidity team and uses the YUL intermediate representation to allow us to target EVM or EWASM during compilation. A Rust based compiler can be easily compiled to WASM, making the compiler much more portable than one based in Python. By building on top of YUL we would get the EVM and EWASM compilation for free, only requiring the compiler to handle the transformation from a Vyper AST to YUL.
    We were sufficiently far along with our Rust based Vyper compiler when the Python Vyper audit was released, and were confident in the directionl. The audit confirmed many concerns around the python codebase and helped to validate the direction we’ve taken.

    The work continues

    That said, the maintainers of the Python Vyper codebase do intend to continue with the project. While we don’t plan to have continued involvement in the python codebase, we wish them luck but also wanted to make note of recent events to avoid inadvertently signalling that the project was safe to use.

    So at present there are currently two “Vyper” compilers: The EF-supported work towards building a compiler written in Rust to deliver on the original idea of Vyper, and the Python effort which will work independently toward the same goals in the Python codebase. We’re hopeful that we can continue working together towards a single “Vyper” with multiple implementations, and we’ll keep everyone up to date as the project moves forward.



    Source link

    Share. Facebook Twitter Pinterest LinkedIn WhatsApp Reddit Tumblr Email
    Michael Johnson

    Related Posts

    Ethereum Foundation Treasury Policy | Ethereum Foundation Blog

    June 4, 2025

    Checkpoint #3: June 2025 | Ethereum Foundation Blog

    June 3, 2025

    Announcing the Devconnect ARG Scholars Program

    June 3, 2025
    Leave A Reply Cancel Reply

    Demo
    Don't Miss
    Crypto

    Dow Jones flat as U.S.

    By John SmithJune 9, 20250

    U.S. stocks were little changed as Wall Street monitored renewed trade discussions between American and…

    Crypto Products See ‘Noticeable Deceleration’ of Inflows As Monetary Policy Uncertainty Grows: CoinShares

    June 9, 2025

    Paraguay president’s X account hacked, falsely claims Bitcoin as legal tender

    June 9, 2025

    UMA price pumps 26.54%, critical support zone must hold or risk full retrace

    June 9, 2025

    LAI Crypto is a user-friendly platform that empowers individuals to navigate the world of cryptocurrency trading and investment with ease and confidence.

    Our Posts
    • Altcoins (562)
    • Bitcoin (27)
    • Blockchain (135)
    • Crypto (8,427)
    • Ethereum (619)
    • Lithosphere News Releases (140)

    Subscribe to Updates

    • Twitter
    • Instagram
    • YouTube
    • LinkedIn

    Type above and press Enter to search. Press Esc to cancel.