Rust로 빠르고 안전한 타입추론 구현 Rc와 RefCell의 실전 설계
Rust로 빠르고 안전한 타입추론 구현 Rc와 RefCell의 실전 설계간단하고 빠르면서도 안전한 타입추론을 Rust에서 구현해보면 꽤 놀랍더라고요.핵심은 'Rc'와 'RefCell' 조합인데요.레퍼런스 카운팅으로 값 복사를 빠르게 처리하고, 내부 가변성으로 대입을 유연하게 처리하는 그림이 깔끔하죠.이번 글은 부울과 함수형만 있는 아주 작은 타입 시스템에서 시작해요.여기에 타입변수를 얹고, 'occurs-check'와 'unify'를 구현한 뒤, 성능을 제대로 끌어올리는 'union-by-rank'까지 다뤄보려는 거예요.조금씩 쌓아가면 코드가 의외로 간단해지거든요.타입과 타입변수의 정의먼저 타입을 정의해볼 텐데요.부울 'Bool'과 함수형 'T → T'만 있는 최소한의 타입부터 시작하죠.use std::..