Verse는 엄격한 타입의 프로그래밍 언어입니다. 즉 타입이 모든 식별자에 할당됩니다. 엄격한 타입이 적용되면 코드는 런타임 중에 예상치 못한 결과를 산출하지 않습니다. 식별자 타입이 알려져 있고 연산이 해당 타입에 어떤 영향을 미치는지도 알려져 있기 때문입니다.
상수를 생성할 때처럼 타입이 명시적으로 요구되지 않는 경우도 있습니다. 예를 들어 MyConstant := 0의 경우, MyConstant의 타입은 int로 추론됩니다. int 타입이 명시적으로 제공되지 않더라도 integer 값이 할당되기 때문입니다. 이런 경우에 타입이 추론된다고 합니다.
Verse에는 대부분의 프로그램이 수행해야 하는 기본 연산을 지원하는 내장 타입이 있습니다. 내장 타입을 더 큰 구조로 결합하여 자체 타입을 생성할 수 있지만 이러한 일반 타입은 Verse에서 변수 및 상수를 활용하는 기초이므로 알아둬야 합니다.
다음 페이지에서는 Verse의 일반 타입을 설명합니다.
logic
logic 타입은 부울 값인 true와 false를 나타냅니다.
int
int 타입은 integer(정수) 값을 나타냅니다.
float
float 타입은 integer가 아닌 숫자 값 전체를 나타냅니다. 큰 값과 정밀한 소수를 포함할 수 있습니다.
string
string 타입은 단어, 이름, 문장, 기타 문자 컬렉션 등 숫자가 아닌 값을 나타냅니다.
rational
rational 타입은 integer 나눗셈의 결과로 사용됩니다.
any
any는 모든 타입의 수퍼타입입니다. 즉 any에 대해 정의된 비헤이비어는 모든 서브타입에서도 정의됩니다.
comparable
any의 서브타입인 comparable에는 이 타입의 모든 값을 이 타입의 다른 값과 비교할 수 있다는 요건이 추가됩니다.
void
void 타입은 함수의 반환 타입으로만 사용할 수 있으며, 함수의 결과가 유용하지 않다는 것을 나타냅니다.