R6RS Scheme: 수치 탑
R6RS Scheme: 수치 탑
Scheme의 수치 탑(numerical tower) 개념을 설명해요. 수가 부분집합의 탑으로 배열되는 방식과 관련 술어들을 다뤄요.
출처: 문서
본문
숫자는 각 수준이 그 위 수준의 부분집합인 탑으로 배열될 수 있어요:
number ⊃ complex ⊃ real ⊃ rational ⊃ integer
예를 들어 5는 정수예요. 따라서 5는 유리수, 실수, 복소수이기도 해요. 5를 모델링하는 숫자 객체도 마찬가지예요.
숫자 객체는 number?, complex?, real?, rational?, integer? 술어로 정의되는 대응하는 하위 타입의 탑으로 정리돼요; 11.7.4.1절을 보세요. 정수 숫자 객체는 *정수 객체(integer objects)*라고도 불러요.
어떤 수가 담긴 부분집합과 컴퓨터 내부에서의 그것의 표현 사이에는 단순한 관계가 없어요. 예를 들어 정수 5는 여러 표현을 가질 수 있어요. Scheme의 수치 연산은 숫자 객체를 추상 데이터로, 가능한 한 그 표현과 무관하게 다뤄요. Scheme 구현이 숫자에 대해 여러 다른 표현을 사용할 수 있지만, 간단한 프로그램을 작성하는 일반 프로그래머에게는 이것이 드러나지 않아야 해요.