ห้องสมุดนี้ใช้เลขคณิตที่มีความแม่นยำโดยพลการกับจำนวนเต็มขนาดใหญ่และเหตุผล
นี่คือไลบรารีมรดก มันเคยเป็นส่วนหนึ่งของการกระจาย OCAML หลัก (ใน otherlibs/num
) แต่ตอนนี้มีการกระจายแยกต่างหาก แอปพลิเคชันใหม่ที่ต้องการเลขคณิตโดยพลการควรใช้ไลบรารี Zarith (https://github.com/ocaml/zarith) แทนไลบรารี NUM และแอปพลิเคชันเก่าที่ใช้ 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
: ธงที่ควบคุมเลขคณิตที่มีเหตุผลเอกสารเพิ่มเติมเกี่ยวกับฟังก์ชั่นที่มีให้ในห้องสมุดนี้สามารถพบได้ใน คู่มืออ้างอิงหมายเลข CAML โดยValérieMénissier-Morain รายงานทางเทคนิคของ Inria 141, กรกฎาคม 1992, 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érieMénissier-Morain Xavier Leroy ทำพอร์ต CAML Light Victor Manuel Gulias Fernandez ทำพอร์ต CAML Special Light / Ocaml เริ่มต้น ปิแอร์ไวส์ทำส่วนใหญ่ของการบำรุงรักษาและแก้ไขข้อผิดพลาด
ในขั้นต้นการดำเนินงานจำนวนเต็มขนาดใหญ่ระดับต่ำนั้นจัดทำโดยแพ็คเกจ Bignum ที่พัฒนาโดย Bernard Serpette, Jean Vuillemin และ Jean-Claude Hervé (Inria และ Digital PRL) ปัญหาใบอนุญาตบังคับให้เราเปลี่ยนแพ็คเกจ Bignum การใช้งานปัจจุบันของการดำเนินงานจำนวนเต็มขนาดใหญ่ในระดับต่ำนั้นเกิดจาก Xavier Leroy