opam-version: "2.0" maintainer: "David Kaloper Meršinjak " authors: ["David Kaloper Meršinjak "] homepage: "https://github.com/pqwy/psq" doc: "https://pqwy.github.io/psq/doc" license: "ISC" dev-repo: "git+https://github.com/pqwy/psq.git" bug-reports: "https://github.com/pqwy/psq/issues" depends: [ "ocaml" {>= "4.02.0"} "ocamlfind" {build} "ocamlbuild" {build} "topkg" {build} "alcotest" {with-test} ] build: [ "ocaml" "pkg/pkg.ml" "build" "--pinned" "%{pinned}%" ] synopsis: "Functional Priority Search Queues" description: """ psq provides a functional priority search queue for OCaml. This structure behaves both as a finite map, containing bindings `k -> p`, and a priority queue over `p`. It provides efficient access along more than one axis: to any binding by `k`, and to the binding(s) with the least `p`. Typical applications are searches, schedulers and caches. If you ever scratched your head because that A\\* didn't look quite right, a PSQ is what you needed. The implementation is backed by [priority search pennants][hinze]. psq is distributed under the ISC license. [hinze]: https://www.cs.ox.ac.uk/ralf.hinze/publications/ICFP01.pdf""" url { src: "https://github.com/pqwy/psq/releases/download/v0.1.0/psq-0.1.0.tbz" checksum: [ "sha256=979abf22fe357ef3cf3a6939a05ba158e8946b324bc3c1b0b23dcbb5637bf021" "md5=21d6abc3db996888887ec61b7d38f885" ] }