connections - Galois connections for composable numeric casts in Rust

connections - Galois connections for composable numeric casts in Rust

connections는 Rust에서 Galois 연결을 일급 값으로 제공하는 라이브러리로, 숫자 타입 간의 안전하고 합법적인 변환을 가능하게 합니다. 표준 `as` 캐스팅과 달리 반올림, 포화, 손실 변환에 대한 명확한 의미를 제공하며, 컴파일 타임에 구성 가능한 변환 체인을 지원합니다. `compose!` 매크로를 사용하면 여러 연결을 하나로 결합할 수 있고, 모든 연산은 속성 기반 테스트와 SMT 검증을 통해 보장됩니다. 고정 소수점, Q-포맷, NonZero, float, 시간, 네트워크 주소 등 다양한 타입 패밀리를 지원하며, Rust 1.88 이상에서 사용 가능합니다.

Galois 연결은 부분 순서 타입 간의 정적이고 합법적인 변환을 위한 올바른 형태입니다. 표준 캐스트 연산자는 한 번에 한 방향만 제공하고, `as`는 반올림이나 포화에 대해 침묵하지만, 이 크레이트는 명확한 의미와 안전한 구성을 제공합니다.

이 날의 다른 글

2026-07-16