उच्चस्तरीय पहले से ही शुरू की है, तो आप गतिशील रूप से पुस्तकालय लोड कर सकते हैं:
# #load "nums.cma";;
# Num.mult_num;;
- : Num.num -> Num.num -> Num.num = <fun>
एक और संभावना है (जो सभी तृतीय पक्ष पुस्तकालयों के लिए काम करेंगे और आप के लिए रास्तों और निर्भरता का प्रबंधन करेगा) करने के लिए है ocamlfind
का उपयोग करें। इस मुद्दे के लिए
#use "topfind";;
(या बेहतर अपने ~/.ocamlinit
फ़ाइल में रख)। एक पुस्तकालय लोड करने के
# #require "num";;
/usr/lib/ocaml/nums.cma: loaded
/home/user/.opam/system/lib/num-top: added to search path
/home/user/.opam/system/lib/num-top/num_top.cma: loaded
/home/user/.opam/system/lib/num: added to search path
बस करो
यहाँ गुणन का एक उदाहरण है (ocamlfind
है - - इसलिए topfind
उपलब्ध नहीं है, यह opam का उपयोग कर स्थापित करें।):
# Num.(num_of_int 30 */ num_of_int 1234);;
- : Num.num = Num.Int 37020
निर्माण Num.(e)
let open Num in e
के लिए एक शॉर्टेंड है और e
में उपसर्ग के बिना Num
फ़ंक्शंस का उपयोग करना संभव बनाता है।यहाँ भाज्य की एक परिभाषा है:
# let rec fac n =
let open Num in
if n =/ Int 0 then Int 1 else n */ fac (n -/ Int 1);;
val fac : Num.num -> Num.num = <fun>
आप यदि आप #require
इस्तेमाल किया
# fac Num.(Int 100);;
- : Num.num = Num.Big_int <abstr>
साथ यह कोशिश कर सकते हैं, यह Num
मूल्यों के लिए एक सुंदर प्रिंटर स्थापित करता है तो पिछले बातचीत की तरह दिखता है:
# fac Num.(Int 100);;
- : Num.num =
<num 93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000>
जो पढ़ने के लिए बहुत आसान है!
आपने मुझे एक ही जवाब में ओकंपल के टन सिखाए! धन्यवाद! –