przypadki użycia dla BigInt kontra BigInteger w Clojure

Szukam wskazówek, kiedy używać Clojure BigInt kontra Java BigInteger w Clojure. Oba działają dobrze i zakładam, że głównym powodem używania BigInt jest wykorzystanie operatorów takich jak+ i=, do których należy uzyskać dostęp za pomocą metod instancji Java.add i.equals, na przykład. Ale jest niewielu operatorów, takich jakisProbablePrime, że mogę uzyskać dostęp tylko z BigInteger.

Przejście z BigInt na BigInteger lub odwrotnie wydaje się dość łatwe, ale obecność obu sprawia, że ​​przypadki użycia są dla mnie niejasne. Moją odruchową reakcją jest po prostu trzymanie się BigIntegera przy braku jasnych kryteriów, ponieważ niektóre z sugerowanych zastosowań wydają się nie działać. Zclojuredocs tutaj:

user=> (def x (bigint 97))
user=> (.isProbablePrime x 1)
IllegalArgumentException No matching method found: isProbablePrime for class     
clojure.lang.BigInt  clojure.lang.Reflector.invokeMatchingMethod (Reflector.java:53)

questionAnswers(1)

yourAnswerToTheQuestion