3 타입 시스템(Type System)

3 타입 시스템(Type System)

타입(Types)에서 서로 다른 종류의 타입들에 대해 배웠어요. 이제 그것들이 서로 어떻게 상호작용하는지 볼 차례입니다. 우선 typedef를 소개하면서 가볍게 시작할게요. typedef는 더 복잡한 타입에 이름(또는 별칭)을 주는 메커니즘이에요. 여러 사용 사례 중에서도, 타입 매개변수(type parameters)를 가진 타입을 다룰 때 typedef가 특히 유용합니다.

타입 안전성의 상당 부분은 두 타입이 호환되는지 확인하는 것으로 얻어져요. 즉 컴파일러는 유니피케이션(Unification)에 나온 것처럼 두 타입 사이의 유니피케이션을 시도합니다.

모든 타입은 모듈(modules)로 조직되며 경로(paths)로 주소가 지정됩니다. 모듈과 경로(Modules and Paths)에서 관련 메커니즘을 자세히 설명합니다.

출처: Type System

본문

타입 간 상호작용

타입 시스템은 단순히 타입의 종류를 아는 것에서 나아가, 타입들이 서로 어떻게 호환되고 결합되는지를 다뤄요. typedef로 복합 타입에 이름을 붙이고, 유니피케이션으로 타입 호환성을 검사하며, 모듈과 경로로 타입을 조직합니다.

유니피케이션의 역할

두 타입의 호환성 판단은 유니피케이션을 통해 이루어져요. 이는 타입 안전성의 핵심이며, 이후 절들에서 상세히 다룹니다.

더 알아보기