타입은 어떻게 증명이 되는가 — TypeScript가 숨기고 있는 Curry-Howard 대응

2 weeks ago 5

TypeScript의 타입 시스템을
Curry-Howard 대응(Type = Proposition, Program = Proof) 관점에서 해석하며,
함수 타입, 제네릭, 조건부 타입, 타입 추론이
어떤 의미에서 “논리적 증명”으로 볼 수 있는지를 설명하는 글입니다.

타입 체크 과정이 단순한 규칙 적용이 아니라
명제 간의 함의 관계를 검증하는 과정이라는 점을 중심으로, 왜 TypeScript가 특정 형태의 타입 표현을 선택했는지까지 다룹니다.

실무 테크닉보다는 타입 시스템의 개념적·수학적 기반을 이해하는 데 초점을 맞춘 글입니다.

Read Entire Article