/psq

Functional Priority Search Queues for OCaml

Primary LanguageOCamlISC LicenseISC

psq — Functional Priority Search Queues

%%VERSION%%

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.

psq is distributed under the ISC license.

Documentation

Documentation is generated by odoc. It can be browsed online.