답변:
유형의 의미론에서 집합을 피하는 주된 이유는 일반적인 프로그래밍 언어로 인해 임의의 재귀 함수를 정의 할 수 있기 때문입니다. 따라서 형식의 의미가 무엇이든 고정 소수점 속성이 있어야합니다. 이러한 속성을 가진 유일한 집합은 싱글 톤 집합입니다.
더 정확하게 말하면, 유형 의 재귀 적으로 정의 된 값 (일반적으로 는 함수 유형)는 고정 소수점 방정식 로 정의됩니다. 여기서 can 모든 프로그램이 될 수 있습니다. 만약 가 세트 로 해석된다면, 우리는 모든 가 고정 점을 가질 것으로 기대할 것이다 . 그러나이 속성을 가진 유일한 세트 는 싱글 톤입니다.
물론 범인이 고전적인 논리라는 것도 알 수 있습니다. 직관적 인 집합 이론으로 작업하는 경우 고정 소수점 속성을 가진 집합이 많이 있다고 가정합니다. 실제로 이것은 프로그래밍 언어의 의미론을 제공하는 데 사용되었습니다.
Alex Simpson, 직관적 집합 이론의 모델에서 재귀 유형에 대한 계산적 적합성, 순수하고 적용되는 논리의 연대기, 130 : 207-275, 2004.
시맨틱 서브 타이핑은 서브 타이핑이 서브 세트 인 유형의 기본 세트 이론적 해석을 기반으로합니다. 필자는 원본 작업 은 Castagna가 XML 처리 언어 CDuce와 관련하여 수행 한 것이라고 생각합니다. 유형은 XML 문서 세트에 해당합니다. 아이디어는 이후 한 다시 적용 받는 -calculus과에 미적분 객체와 클래스 .
몇 가지 예외 (Dave Clarke가 인용 한 것)를 제외하면 간단한 유형 이론적 의미론은 사용하기 어렵습니다. 그 이유는 집합 이론적 의미론에서 데이터 추상화가 잘 작동하지 않기 때문입니다.
기본 문제는 다형성 유형을 가진 완전히 순수한 기능적인 언어에서 가장 쉽게 볼 수 있으며, 다형성 유형 인 고려하십시오 . 유형의 순진한 집합 이론적 의미론에서 함수 공간을 집합 이론적 함수 공간으로 해석 한 다음 유니버설 수량자를 일부 (작은) 세트의 우주 대한 곱으로 해석합니다 . 그건,
그러나 이러한 유형의 해석에는 각 요소에서 다른 기능을 수행하는 함수가 포함 됩니다. 에서 분기하여 각 에 대해 로 다른 함수를 제공 할 수 있습니다 . 반대로, 다형성 유형에는 항등 함수 만 포함 됩니다 . 프로그래밍 언어를 사용하면 모든 유형에서 작동하는 유형 만 수행 할 수 있기 때문 입니다.
따라서이 의미론은 (예를 들어) ID가 의 유일한 거주자라는 사실에 근거하여 최적화를 정당화 할 수 없습니다 .