Немного новостей про Core Solidity
Команда Solidity опубликовала обновление о разработке Core Solidity — нового фронтенда для компилятора solc, который должен сделать язык более выразительным и упростить работу со сложными контрактами.
Главное изменение — новая система типов. Core Solidity поддерживает алгебраические типы данных, обобщённое программирование, трейты и сопоставление с образцом (pattern matching). Последнее особенно интересно с точки зрения безопасности: компилятор может проверить, что разработчик обработал все возможные варианты состояния, и отклонить код, если какой-то случай пропущен.
Ещё одно важное отличие — отказ от классического наследования в пользу композиции модулей и трейтов. Вместо построения сложных цепочек наследования разработчик собирает контракт из отдельных компонентов и явно определяет, какие функции доступны извне. По отзывам аудиторов и исследователей безопасности, такой подход может упростить анализ поверхности атаки контракта.
При этом Core Solidity не заменяет компилятор целиком. Новый фронтенд преобразует код в Yul, а дальше работает существующий бэкенд solc, который генерирует байткод. Это означает, что улучшения общей инфраструктуры компиляции потенциально могут быть полезны и классическому Solidity.
Проект уже умеет компилировать и выполнять тесты для портированных версий Ethereum Deposit Contract, WETH9 и минимального ERC-20. Есть поддержка generics, модулей, лямбда-функций, работы с хранилищем и ABI-кодирования пользовательских типов.
Но до полноценного использования в production ещё далеко. В прототипе отсутствуют события, checked arithmetic, модификаторы view и pure, пользовательские ошибки и ряд других привычных возможностей. Не завершена и работа над внешними вызовами контрактов. Производительность, стоимость газа и размер байткода пока не сравнивались с классическим Solidity.
Команда также отметила растущую роль ИИ в разработке смарт-контрактов. Многие участники интервью ожидают, что код всё чаще будут писать модели, а проверять люди. В таком сценарии особенно важны читаемость кода, явное выражение логики и точные сообщения об ошибках компиляции.
Сейчас Core Solidity остаётся экспериментальным прототипом, не предназначенным для развёртывания в основной сети. Даты первого устанавливаемого релиза пока нет. Уже сейчас можно экспериментировать с языком в браузерной песочнице и следить за разработкой в открытом репозитории.
Статья: https://www.soliditylang.org/blog/2026/10/14/the-state-of-core-solidity/
#core
Post #1621
248
- 👍 6
- ❤ 2
- 🔥 2
- ❤🔥 1
- 🎉 1