Verse — это язык программирования со строгой типизацией, то есть каждому идентификатору присваивается тип. При строгой типизации код не выдаёт непредсказуемые результаты в среде выполнения, поскольку типы этих идентификаторов и то, как операции влияют на данные типы, известны.
Бывают случаи, когда тип не требуется явно, например при создании константы. В примере MyConstant := 0 тип MyConstant определяется механизмом вывода типов как int, потому что константе присваивается целочисленное значение, даже если тип int не указан явно. В подобных случаях тип определяется механизмом вывода типов.
В языке Verse предусмотрены встроенные типы, которые поддерживают основные операции, необходимые большинству программ. При этом вы можете создавать собственные типы, объединяя их в более крупные структуры данных, однако важно понимать, что общие типы являются основой для использования переменных и констант в Verse.
На следующих страницах представлено описание общих типов Verse:
Logic
Тип logic представляет булевы значения true и false.
Тип int
Тип int представляет целочисленные (не дробные) значения.
Число с плавающей запятой
Тип float представляет все нецелые числовые значения. Он может хранить большие значения и точные дроби.
Строка
Тип `string` представляет нечисловые значения, например, слова, имена, предложения и другие наборы символов.
Rational
Тип rational используется как результат деления целого числа.
Any
Any — это супертип всех типов, то есть поведение, опредёленное для any, распространяется на все его подтипы.
Comparable
Comparable является подтипом типа any. Он добавляет требование о том, что любое значение одного типа можно сравнивать с любым другим значением того же типа.
Void
Тип `void` может использоваться только качестве возвращаемого типа функции, указывающего на то, что результат функции не является полезным.