BTC $ 3267.28935082 (1.08 %)
XRP $ 0.2889994938 (0.51 %)
ETH $ 86.3597551415 (2.5 %)
USDT $ 1.0061602198 (0.42 %)
XLM $ 0.0974503879 (0.94 %)
EOS $ 1.9281923092 (5.12 %)
LTC $ 25.9014449918 (9.6 %)
BCH $ 80.9643328194 (1.66 %)
BSV $ 74.4342054576 (5.54 %)
TRX $ 0.0130962587 (3 %)

Особые языки для создания и внедрения смарт-контрактов

20:45 15/11/2018

Введение

 

После того, как скриптовый язык Биткоина был представлен как компонент инновационного блокчейн-проекта, стали появляться альтернативные решения. Все они могут быть разделены на несколько групп в соответствии с их ключевыми особенностями.

 

Первая группа придерживается той же самой идеи скрипта, что и язык Биткоина. Большинство ее представителей применяются для создания форков и клонов Биткоина, хотя есть и другие проекты, использующие скриптовые языки. Вторая группа включает в себя обычные языки программирования типа C++, Python или GoLang — на них пишутся смарт-контракты. Разработчики рассчитывают на популярность этих языков. Обычно их используют в массивных технологических решениях, таких как Hedera, Hyperledger, EOS, NEO и т.п. Третья группа включает в себя уникальные языки, которые обращаются к Виртуальной машине Эфириума (Ethereum Virtual Machine, EVM): Solidity, LLL, Vyper и многие другие.

 

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

 

Cardano (Plutus, Marlowe, Simon)

 

Первое решение, которое мы рассмотрим, называется Cardano. Он заявлен как проект с открытым программным обеспечением для создания смарт-контрактов — глубоко проработанных и гибких. Основываясь на значительном научном базисе, Cardano идет от формальных доказательств к инженерным разработкам.

 

У этого проекта нет whitepaper, поскольку авторы предпочитают проводить научные и технические исследования, относящиеся к теме, и группировать их. Как бы там ни было, статья об основополагающей концепции содержит информацию о двух оригинальных языках под названиями Plutus и Simon. Утверждается, что разные языки необходимы для поддержки различного функционала платформы.

Судя по всему, Simon был либо заброшен, либо заменен другим языком под названием Marlowe. Это подтверждается планами разработчиков обнародовать спецификацию Simon в последней четверти 2017 года, во время релиза Shelley CSL. Однако с декабря 2017 года и по сей день информации об этом языке нет.

 

Между тем Plutus на данный момент работоспособен. Он постоянно обновляется и развивается. Язык обладает строгой типизацией, относится к семейству функциональных и по части синтаксиса похож на Haskel.

 

Еще один язык под названием Marlowe упоминается в источниках, относящихся к Cardano. Нельзя сказать, что этот язык принадлежит исключительно Cardano, поскольку он разрабатывается отдельно и запланирован, как платформонезависимый. На него сильно повлияли языки разработки финансовых контрактов.

 

В любом случае Cardano обладает значительным потенциалом и сложным планом развития.

 

Tezos (Michelson)

 

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

Смарт-контракты здесь написаны с помощью языка Michelson. Он обладает строгой типизацией, использует область памяти под названием «стек» для выполнения операций, высокоуровневые типы данных наряду с простейшими компонентами. Программа в Michelson представляет собой последовательность операций, которые необходимо выполнить для достижения результата. Выход операции может стать входом другой или окончательным результатом. Страница разработки Tezos содержит полное описание языка, некоторые примеры и список наиболее распространенных ошибок.

 

Послесловие

 

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

Нашли ошибку? Выделите её и нажмите Ctrl + Enter чтобы сообщить администратору.

Самые актуальные новости о криптовалютах и блокчейне. Прочтите первым!

Зачем мне это?

Загрузка...