С последним обновлением чернила! Язык программирования 3.0 достиг паритета с Rust

With Latest Update, ink! 3.0 Programming Language Achieves Parity With Rust

Реклама


 

 

Паритетные технологии, компания, стоящая за Polkadot blockchain, объявила о ключевом обновлении своих чернил на основе Rust! Язык программирования для написания смарт-контрактов.

Новое обновление, чернила! 3.0, предназначен для изготовления чернил! выглядит и работает гораздо больше, чем язык программирования Rust, на котором он основан. Теперь он имеет все те же функции, с которыми знакомы программисты на Rust, что, по словам Parity, будет большим подспорьем, когда дело доходит до написания, обновления и анализа сложных смарт-контрактов. 

чернила! это наиболее часто используемый язык программирования разработчиками в экосистемах Polkadot и Substrate, поскольку он является одним из лучших для написания эффективных и высокопроизводительных Смарт-контракты Web Assembly (Wasm), которые являются альтернативой смарт-контрактам Ethereum на основе Solidity. С помощью ink! разработчики могут писать смарт-контракты для блокчейнов, используя палитру контрактов платформы Substrate — ключевой строительный блок для блокчейнов, совместимых с Polkadot. 

чернила! основан на Rust, потому что последний является чрезвычайно эффективным языком программирования, который отдает приоритет правильности, предотвращает ошибки в программном обеспечении и имеет обширное сообщество, включающее поддержку таких фирм, как Amazon Web Services, Google и Microsoft. Значит, чернила! извлекает выгоду из той же гарантии правильности, что и Rust, а также любых улучшений, которые сообщество Rust добавляет посредством постоянных обновлений этого языка. 

В блоге, Паритет сказал чернила! Обновление 3.0 потребовало много времени и потребовало переписывания всех его основных компонентов, включая изменение синтаксиса для лучшего сопоставления кода с рукописного ввода! в сгенерированный код Rust. Хотя это стоило усилий. Благодаря тому, что синтаксис ink! теперь более или менее идентичен Rust, разработчики получают доступ к тем же самым инструментам, таким как rust-analyzer и Clippy, которые доступны для наиболее знакомого им языка. 

Реклама


 

 

Новые функции в чернилах! 3.0

Это далеко не единственное, что изменилось в чернилах! В новой версии появилась долгожданная поддержка черт, которая позволяет разработчикам определять свои собственные определения черт, а затем реализовывать их в рукописном вводе! смарт-контракты. По словам Парити, благодаря этому разработчики могут определять общие интерфейсы смарт-контрактов для различных реализаций, что особенно полезно для стандартов смарт-контрактов, определенных сообществом. 

Другие улучшения чернил! 3.0 включают в себя меньшие размеры контрактов, что приводит к более высокой производительности и более низкой плате за газ, а также добавление делегированных вызовов, что дает смарт-контрактам способ переадресовывать полученные вызовы на другой контракт. По словам Парити, это позволит разработчикам внедрять шаблоны обновления прокси-сервера для нескольких смарт-контрактов. 

Тем временем новая функция Chain Extensions позволяет разработчикам вызывать поддоны Substrate непосредственно из смарт-контракта и получать доступ к богатой экосистеме инструментов для разработчиков. 

Подождите, есть еще! 

Как и тушь! 3.0 Parity заявила, что внесла некоторые улучшения в поддон «Контракты», направленные на повышение производительности парачейна, а также новые функции, которые обещают улучшить вызовы между контрактами и производительность. По словам Парити, с `cargo-contract` 1.0 разработчикам будет намного проще писать более сложную логику в своих смарт-контрактах. 

`cargo-contract` — это инструмент разработчика, который можно использовать для создания, тестирования и развертывания контрактов на основе ink!. В новой версии добавлены три команды интерфейса командной строки, упрощающие взаимодействие со смарт-контрактами в цепочках, а именно загрузка, создание экземпляра и вызов! Это, по словам Parity, значительно упрощает жизнь, поскольку означает, что разработчикам больше не нужно щелкать интерфейс браузера, чтобы взаимодействовать с такими контрактами, вместо того, чтобы делать это непосредственно из командной строки. По словам Парити, в будущем это также позволит создавать сценарии и интегрировать их в среды разработки с непрерывной интеграцией. 

Вторая новая возможность «cargo-contract» — это его способность автоматически проверять исходный код на программные и стилистические ошибки и выдавать предупреждения при обнаружении типичных ошибок. Parity заявила, что ее целью является постепенное создание набора правил линтинга для чернил! смарт-контракты, помогая разработчикам снижать затраты на газ, создавать меньшие следы смарт-контрактов и исправлять шаблоны использования API при выявлении уязвимостей в системе безопасности. 

Палитра контрактов Substrate, которая является средой выполнения смарт-контрактов на основе Wasm, также получает обновление. Например, механизм государственной ренты, используемый для борьбы с раздуванием штата, был заменен функцией автоматического сбора депозитов. До этого смарт-контракты должны были всегда иметь достаточный баланс для оплаты их хранения, иначе они будут отключены, пока кто-нибудь не придет, чтобы оживить их. По словам Парити, устранение этого снижает нагрузку на разработчиков. 

При автоматическом сборе депозитов затраты на хранение оплачивает вызывающая сторона каждого смарт-контракта, а не сам контракт. Звонящий платит депозит, затем в результате этого звонка создается новое хранилище. Паритет объяснил, что этот механизм устранит любую возможность сделать смарт-контракты неактивными. Несмотря на это, Парити сказал, что авторы контрактов должны по-прежнему работать над тем, чтобы использовать как можно меньше хранилища, создавая способы удаления хранилища, когда оно больше не нужно, чтобы снизить затраты на хранение. 

Источник: https://zycrypto.com/with-latest-update-ink-3-0-programming-language-achieves-parity-with-rust/