이 라이브러리는 큰 정수와 합리적으로 임의의 예비 산술을 구현합니다.
이것은 레거시 라이브러리입니다. 예전에는 핵심 OCAML 분포 ( otherlibs/num
)의 일부 였지만 이제 별도로 배포되었습니다. 임의의-프리션 산술이 필요한 새로운 응용 프로그램은 NUM 라이브러리 대신 Zarith 라이브러리 (https://github.com/ocaml/zarith)를 사용해야하며 이미 NUM을 사용하는 이전 응용 프로그램은 Zarith로 전환하도록 권장됩니다. Zarith는 NUM보다 훨씬 더 나은 성능을 제공하며 API가 더 좋습니다.
프로그램의 Bignum 라이브러리를 사용하려면 OcamlFind를 사용하는 것이 좋습니다.
ocamlfind ocamlc -package num ...
ocamlfind ocamlopt -package num ...
또는 할 수 있습니다
ocamlc <options> nums.cma <.cmo and .ml files>
ocamlopt <options> nums.cmxa <.cmx and .ml files>
Toplevel 사용의 경우 명령을 발행하십시오
#use "topfind";;
#package "num";;
또는
#load "nums.cma";;
다음 모듈은 인터페이스에 문서화되어 있습니다.
Big_int
: 임의의 정수 정수에 대한 작업Num
: 임의의 차량 번호에 대한 작업 (정수 및 합리적)Arith_status
: 합리적 산술을 제어하는 깃발이 라이브러리에 제공된 기능에 대한 더 많은 문서는 Valérie Ménissier-Morain의 CAML 번호 참조 설명서 , Inria Technical Report 141, 1992 년 7 월, http://hal.inria.fr/docs/00/07/00/에서 찾을 수 있습니다. 27/PDF/RT-0141.PDF
전제 조건 : OCAML 버전 4.04 또는 최신.
make all PROFILE=release
make test
make install
make clean
이 라이브러리는 Valérie Ménissier-Morain의 CAML v3.1에 대한 합리적 산술 구현에서 파생되었습니다. Xavier Leroy는 Caml Light Port를 수행했습니다. Victor Manuel Gulias Fernandez는 초기 CAML Special Light / Ocaml 포트를 수행했습니다. Pierre Weis는 대부분의 유지 보수 및 버그 수정을 수행했습니다.
처음에 저수준의 큰 정수 작업은 Bernard Serpette, Jean Vuillemin 및 Jean-Claude Hervé (Inria and Digital PRL)가 개발 한 Bignum 패키지로 제공되었습니다. 라이센스 문제로 인해 Bignum 패키지를 교체해야했습니다. 저수준의 대형 정수 작업의 현재 구현은 Xavier Leroy에 기인합니다.