March 24, 2024

Вся база языка программирования 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. Давайте запустим наш код:

Всё верно, мы получили 8.

Условные операторы

Давайте напишем простую программу, которая выводит наибольшую переменную из двух. Если a больше b, тогда мы задаем переменной c значение переменной а и возвращаем её, иначе, переменная с получает значение переменной b и также возвращается.

Для реализации мы использовали конструкцию if/else. Синтаксис вы видите на скриншоте выше. Таким образом, с такими входными данными:

На выходе мы получаем 3, то есть наибольшую переменную:

На этом наш базовый урок подошёл к концу. До встречи!