Вся база языка программирования Leo
Всем привет! В данной статье мы изучим базовый синтаксис языка программирования Leo. Мы поговорим про функции, переменные, циклы и условные выражения.
Напоминаю, что Leo - это язык программирования на основе Rust, созданный командой проекта Aleo для написания приватных приложений в блокчейне.
Полную документацию языка вы можете прочитать по ссылке.
Или найти в разделе build -> aleo docs на сайте aleo.org.
Наш код мы будем писать в среде разработки Aleo Studio. Вы также можете пользоваться Visual Studio.
Создаем новый проект. Он имеет такое содержание:
Это аналог hello world в языке Leo. Давайте разберем, что происходит в данной программе, тем самым поймем, как работают функции в Leo и как создаются переменные.
Данная строка состоит из объявлений функции (transition), названия функции(main). Далее в скобках идут входные данные, в нашем случае это переменные a
и b
. На выходе указывается тип переменной, которая будет выводится с помощью return.
Переменные
Переменные в Leo объявляются следующим образом:
Сначала мы пишем инициацию создания переменной "let", далее название переменной, указываем тип. В данном случае тип u32. Это обозначает, что число положительное и кодируется 32 битами. После равно пишется значение переменной. В нашем случае это сумма переменных a и b.
Помимо типа переменных u (u8, u16, u32), есть тип i. Он включает в себя не только положительные, но и отрицательные значения.
Также Leo поддерживает тип переменных boolean. Они могут хранить выражения true или false и создаются следующим образом:
В переменных Leo можно также хранить адреса и скалярные выражения, но это уже более сложная тема о которой мы поговорим в следующих статьях.
Циклы
Если мы хотим выполнить одно и то же действие несколько раз, то мы можем использовать циклы. В Leo они создаются так:
В данном цикле мы выполняем действие 5 раз. В теле цикла указывается действие, в нашем случае мы к переменной с
прибавляем 1. Переменная с равняется сумме а
и b
. Значение переменных a и b мы получаем из входных данных.
Таким образом, сумма равняется 3 и мы к ней 5 раз прибавляем 1. На выходе программы мы должны получить 8. Давайте запустим наш код:
Условные операторы
Давайте напишем простую программу, которая выводит наибольшую переменную из двух. Если a
больше b
, тогда мы задаем переменной c
значение переменной а
и возвращаем её, иначе, переменная с
получает значение переменной b
и также возвращается.
Для реализации мы использовали конструкцию if/else. Синтаксис вы видите на скриншоте выше. Таким образом, с такими входными данными:
На выходе мы получаем 3, то есть наибольшую переменную: