{"schema_version":1,"metadata":{"branch":"release","release":"7.9","architecture":"amd64","generated_at":"2026-09-09T04:04:02.361425+00:00","source_url":"https://cdn.openbsd.org/pub/OpenBSD/7.9/packages/amd64/sqlports-7.54.tgz","source_sha256":"2de00144847bf9da3a365be982f101dbb55d591ed7a915ea94984a16ab0e0404","package_count":12059,"source_kind":"sqlports"},"package":{"name":"ocaml-zarith-1.12p3","path":"math/ocaml-zarith","url":"/packages/release/math/ocaml-zarith/","comment":"arbitrary precision integer and rational arithmetic","homepage":"https://github.com/ocaml/Zarith/","maintainer":"Christopher Zimmermann <chrisz@openbsd.org>","description":"This library implements arithmetic and logical operations over\narbitrary-precision integers.\n\nThe module is simply named Z. Its interface is similar to that of the Int32,\nInt64 and Nativeint modules from the OCaml standard library, with some\nadditional functions. See the file z.mlip for documentation.\n\nThe implementation uses GMP (the GNU Multiple Precision arithmetic library) to\ncompute over big integers. However, small integers are represented as unboxed\nCaml integers, to save space and improve performance. Big integers are\nallocated in the Caml heap, bypassing GMP's memory management and achieving\nbetter GC behavior than e.g. the MLGMP library. Computations on small integers\nuse a special, faster path (coded in assembly for some platforms and functions)\neschewing calls to GMP, while computations on large intergers use the low-level\nMPN functions from GMP.\n\nArbitrary-precision integers can be compared correctly using OCaml's\npolymorphic comparison operators (=, <, >, etc.). This requires OCaml version\n3.12.1 or later, though.\n\nAdditional features include:\n\n * a module Q for rationals, built on top of Z (see q.mli)\n * a compatibility layer Big_int_Z that implements the same API as Big_int from\n   the legacy Num library, but uses Z internally\n","package_architecture":"amd64","stem":"ocaml-zarith","readme":null,"dependencies":[{"path":"devel/gmp","type":"library","package_spec":"","url":"/packages/release/devel/gmp/"},{"path":"lang/ocaml","type":"runtime","package_spec":"","url":"/packages/release/lang/ocaml/"},{"path":"sysutils/findlib","type":"build","package_spec":"","url":"/packages/release/sysutils/findlib/"},{"path":"lang/ocaml","type":"build","package_spec":"","url":"/packages/release/lang/ocaml/"},{"path":"devel/gmake","type":"build","package_spec":"","url":"/packages/release/devel/gmake/"}],"reverse_dependencies":{"count":4,"url":"/packages/data/19/1995fd87575f626afe0f9fd3e309e9f28d266306b7a020d359f6461895a7e369.json"},"categories":["math"],"flavors":[],"only_for_architectures":[],"not_for_architectures":[]}}
