`racket/contract/base` 모듈

racket/contract/base 모듈

racket/contract/base는 컨트랙트(계약) 관련 모듈인 racket/contract의 일부 내보내기만 담은 더 가벼운 모듈이에요. 데이터 구조 컨트랙트, 함수 컨트랙트, 컨트랙트 첨부, 컨트랙트 유틸리티 절에 정의된 내용을 포함해요.

출처: Racket Reference

본문

8.9 racket/contract/base

(require racket/contract/base) package: base

racket/contract/base 모듈은 racket/contract 모듈이 내보내는 것 중 일부만 제공해요. 구체적으로 다음 절들에 속한 모든 내용을 포함하지요.

  • 데이터 구조 컨트랙트 (Data-structure Contracts)
  • 함수 컨트랙트 (Function Contracts)
  • 값에 컨트랙트 첨부하기 (Attaching Contracts to Values)
  • 컨트랙트 유틸리티 (Contract Utilities)

아쉽게도 racket/contract/base를 사용한다고 해서 racket/contract보다 메모리 사용이 크게 줄어들지는 않아요. 다만 racket/contract가 컨트랙트 시스템의 고급 기능을 구현할 때 이용하는 라이브러리에 컨트랙트를 추가하려는 경우에는 여전히 유용할 수 있어요.

더 알아보기