В данном разделе рассказывается о языке программирования Verse и его синтаксисе. Изучите язык, а затем используйте данный раздел в качестве справочника.
Если вы используете Verse впервые или вы новичок в программировании, ознакомьтесь с разделом Программирование на Verse. Вам также пригодится Руководство по началу работы.
Что такое Verse?
Verse — это язык программирования, разработанный компанией Epic Games, который вы можете использовать для создания собственной игры в Unreal Editor для Fortnite, в том числе для настройки собственных устройств для творческого режима Fortnite.
Основные цели разработки на Verse:
Достаточно простой язык для изучения новичком в программировании.
Достаточно универсальный язык для написания любого типа кода и описания любых данных.
Продуктивный язык в контексте создания, последовательного внесения изменений и распространения проекта в командной среде, а также интеграции кода и контента.
Наличие статистического подтверждения того, что язык позволяет выявлять на этапе компиляции максимально возможное количество ошибок, возникающих в среде выполнения.
Эффективный язык для написания многопользовательских игр в реальном времени с открытым миром.
Полный язык, т. е. каждая функция языка поддерживает абстракции программирования для этой функции.
Язык не должен устаревать, то есть он создаётся не только для удовлетворения текущих потребностей, но и с расчётом на обозримое будущее. Язык не должен наследовать дефекты других языков.
Цели разработки, описанные выше, определяют ключевые особенности языка Verse:
Строгий контроль типов, что позволяет свести к минимуму вероятность пропуска ошибок при разработке или развёртывании и обеспечивает статическую проверку.
Мультипарадигмальный язык, что позволяет заимствовать лучшее из функционального программирования, объектно-ориентированного программирования и императивного программирования, к примеру обеспечить максимальную детерминированность. Один из примеров: данные по умолчанию являются неизменяемыми, и при одинаковых данных и коде результаты будут идентичными.
Между операторами и выражениями нет разницы. В Verse всё является выражением, то есть у всего есть некоторый результат.
Неоднозначность — это способ контроля исполнения в Verse. Вместо использования значений true / false для управления потоком выполнения программы (например, в точках принятия решений) в Verse используются выражения с неоднозначным результатом, которые возвращают значение в случае успешного выполнения или не возвращают в случае отсутствия результата. Выражения с неоднозначным результатом могут выполняться только в контекстах, допускающих неоднозначность, например выражения if.
Возможность спекулятивного выполнения в контекстах, допускающих неоднозначность, благодаря чему вы можете протестировать действия без их фиксации (необратимого выполнения). Эффекты выражения при его успешном выполнении фиксируются, а при отсутствии результата откатываются, как если бы это выражение вообще не выполнялось. Таким образом, вы можете выполнить ряд действий, накопив все сопутствующие изменения, которые всегда можно отменить, если в контексте, допускающем неоднозначность, одно из действий будет выполнено с отсутствием результата.
Конкурентность на уровне языка, благодаря чему вы не зависите от потоков на системном уровне, распределяемых по разным процессорам для одновременного выполнения операций. Вы можете создать временной поток так же, как поток управления выполнением, с помощью встроенных в язык выражений для организации конкурентности.
Epic Games продолжает совершенствовать язык программирования Verse, добавляя в него много новых функций. Для кода в текущей версии Verse гарантируется обратная совместимость с будущими версиями, и он будет работать с последующими обновлениями языка.
Изучение языка
Следующие страницы содержат справочную информацию по языку программирования Verse.
Обновления и устаревшие данные в версии 1 языка Verse
Узнайте об обновлениях и устаревших данных в версии 1 языка Verse.
Выражения
В Verse всё является выражением и имеет результат. На этой странице описаны все виды выражений в Verse.
Комментарии
Комментарий к коду содержит некоторые пояснения к нему. Комментарии игнорируются при выполнении программы.
Константы и переменные
Переменные и константы могут хранить информацию, или значения, которые использует ваша программа.
Общие типы
Общие типы поддерживают основные операции, реализуемые большинством программ.
Операторы
Операторы — это специальные функции, определённые в языке программирования Verse, которые выполняют такие действия, как арифметические операции сложения и умножения.
Группировка
Сгруппируйте свои выражения в Verse, чтобы указать порядок их расчёта и сделать код более удобочитаемым.
Блоки кода
Блок кода — это группа выражений, которая вводит новую область видимости для переменных и констант.
Функции
Функция — это многократно используемый код, который выполняет действие и выдаёт различные выходные данные с учётом входных данных.
Неоднозначность
Неоднозначность — это способ контролировать последовательность выполнения программой действий (способ контроля исполнения).
Спецификаторы и атрибуты
Узнайте о спецификаторах и атрибутах, а также о том, как применить дополнительную семантику и поведение к коду Verse.
Контроль исполнения
Контроль исполнения определяет порядок, в котором компьютер выполняет инструкции. В Verse предусмотрено несколько способов изменения контроля выполнения вашей программы.
Контроль времени и конкурентное выполнение
Вы можете установить контроль времени так же, как контроль выполнения, запуская выражения одновременно с помощью встроенных в язык Verse конкурентных выражений.
Контейнерные типы
Вы можете хранить несколько значений вместе, используя контейнерный тип.
Составные типы (composite)
Создайте собственный уникальный тип из составного типа.
Работа с типами в Verse
Узнайте, как можно использовать типы в Verse.
Модули и пути
Модуль в Verse — это самостоятельный блок кода, который можно использовать в других местах и который можно импортировать в свой файл Verse, чтобы использовать определения из других файлов Verse.