Development on Core Solidity—the ambitious new frontend for the solc compiler—has reached a critical juncture. Reflecting the status of the project as of early October 2026, the development team has shared a comprehensive update detailing significant syntax revisions, community feedback gathered from nearly two dozen qualitative interviews, missing features, and the roadmap ahead.
Core Solidity introduces a modernized type system to the Ethereum ecosystem, incorporating algebraic data types, pattern matching, generics, traits, and compile-time evaluation. A major design philosophy of the project is to shift much of the heavy lifting previously embedded directly in the compiler into a robust standard library written natively in the language itself.
Despite these profound architectural changes to the frontend, the core backend remains completely unchanged. Core Solidity compiles down to Yul, utilizing the exact same optimizer and code generator that solc already employs for Classic Solidity. The prototype compiler is already fully functional in this regard, successfully emitting Yul and handing it off to solc for final bytecode generation. To address common misconceptions circulating within the developer community, project maintainers have repeatedly emphasized that Core Solidity is designed as a new frontend rather than a total replacement for the entire legacy compiler stack.
This latest status report builds upon prior announcements, including the initial introduction in "The Road to Core Solidity," technical specifications outlined in the "Core Solidity Deep Dive," and feature-specific explorations like "Pattern Matching in Core Solidity." However, maintainers noted that the syntax has undergone extensive iteration over the summer to align much more closely with developer expectations set by Classic Solidity.
Current State of the Language
The most prominent visual and structural evolution in Core Solidity is its syntax overhaul. Code samples published in earlier design posts use a provisional syntax and no longer compile, though the core programming concepts they represent remain fully intact.
Modern Core Solidity contracts closely mirror what experienced Solidity developers expect, with a few distinct differences. Variable declarations now utilize postfix types—such as phase: Phase and amount: uint256—placing the type after the variable name. Furthermore, strict scoping rules dictate that nothing beyond a minimal set of built-in types is in scope by default unless explicitly imported, which includes all standard library modules.
A prime example of the language’s capabilities is an escrow contract managed via an enumerated state variable that acts as an algebraic data type. In Core Solidity, enum variants can carry arbitrary data. The standard library (std) supplies basic types and foundational functions like uint256 and revertWithError, while specialized modules like std.dispatch power public functions, and std.Generic and std.StorageGeneric enable complex algebraic data types to reside safely in contract storage.
Pattern matching serves as a primary control flow mechanism, taking composite types apart safely. The compiler enforces exhaustiveness checks: any match statement that leaves a case unhandled without providing a default arm is automatically rejected during compilation. While the prototype demonstrates immense promise, maintainers acknowledge a few rough edges, such as the current lack of custom errors requiring plain string reverts, and an open issue where unreachable return statements are temporarily required after certain revert calls.
The prototype compiler hosted within the solcore repository has successfully undergone rigorous continuous integration testing, which includes ports of critical real-world infrastructure such as the Ethereum deposit contract, WETH9, and a minimal ERC20 token. These ports compile successfully through solc and execute reliably on the Ethereum Virtual Machine, though they currently omit event emission as event support is still under active development.
For developers wishing to experiment with the language, the online playground offers an immediate environment to compile contracts, execute functions, inspect generated bytecode, and share interactive links. Advanced playground showcases include multi-vault composition over a shared engine module and token extensions built entirely from modular components. Meanwhile, formal semantic verification of Core Solidity is actively underway in the Lean 4 proof assistant via the dedicated solcore-lean repository.
Missing Features and Deliberate Architectural Shifts
While the prototype is advancing rapidly, several features relied upon by production-grade decentralized applications are not yet fully implemented. The development team maintains transparent lists separating features currently being addressed via open pull requests from those scheduled for later implementation. Gas optimization and final code size comparisons against Classic Solidity have not yet been prioritized, as the primary focus remains on feature completeness and language ergonomics.
Crucially, Core Solidity departs intentionally from Classic Solidity by completely eliminating inheritance. Concepts such as virtual functions, abstract contracts, and traditional inheritance-based libraries have been entirely removed. In their place, the language relies purely on composition through modular design and traits. This shift is designed to simplify auditing and reduce the complex spaghetti code often associated with deep inheritance hierarchies in large protocols.
Documentation for the project is currently split; while a technical reference exists for compiler and tool developers detailing the syntax, type system, and module system, comprehensive guides for smart contract developers are still being written.
Community Insights and Developer Feedback
Since March 2026, the development team has conducted 18 qualitative interviews with protocol architects, security auditors, educators, tool maintainers, wallet developers, and programming language researchers. These sessions frequently involved participants reading Core Solidity code in the playground for the first time.
Feedback on algebraic data types and pattern matching has been overwhelmingly positive, particularly regarding the safety feature of compiler-enforced match exhaustiveness. Most participants found the syntax intuitive and immediately recognizable as a descendant of Solidity.
Regarding the removal of inheritance, security auditors and researchers expressed strong support, noting that traditional inheritance structures frequently obscure a contract’s actual attack surface and complicate security reviews. However, some development teams that rely heavily on established inheritance patterns expressed a desire to see larger, real-world composition examples before forming a final verdict. A primary question raised by the community is how reusable modules can safely manage their own storage state without resorting to raw storage slots or manual offset calculations.
Tooling maintainers indicated that supporting Core Solidity will require relatively modest adjustments, primarily centered around updating parsers for syntax trees rather than rewriting bytecode-level analysis tools. Conservative projects have noted that they will approach Core Solidity adoption with the same cautious timeline applied to major compiler upgrades, waiting for mature tooling and thorough auditing standards to emerge.
Two major open questions remain under active debate within the community. The first concerns ABI compatibility. While Core Solidity is architected to utilize the standard ABI—allowing Core contracts to call external Classic Solidity contracts—the reverse direction remains challenging. Algebraic data types inside external interfaces require novel encoding specifications not currently defined in the standard ABI, meaning legacy contracts cannot natively call every Core Solidity interface without intermediary translation layers.
The second open question involves the ideal scope of the standard library, with opinions divided between maintaining a minimal core versus providing a comprehensive suite of utilities. Maintainers have emphasized that no final decisions have been made on these topics and are actively seeking community input.
What Comes Next
The development team is actively scoping an initial installable release of the prototype to facilitate broader early feedback. Upcoming deliverables include a dedicated deep dive publication exploring the mechanics of smart contract composition without inheritance, alongside the establishment of a formal community governance process for the standard library.
Public engagement efforts continue internationally. Project representatives are scheduled to present at the DeFi Security Summit in Mumbai with a talk titled "What you need to know about Core Solidity," followed by a hands-on workshop titled "Your first Core Solidity smart contract" at Devcon.
Qualitative interviews and community outreach will persist throughout the development cycle. Developers, auditors, educators, and tooling engineers interested in reviewing demos or providing feedback on the future of Solidity are encouraged to reach out to the core team directly as the project advances toward its long-term goals.






