package psq

  1. Overview
  2. Docs
Functional Priority Search Queues

Install

Dune Dependency

Authors

Maintainers

Sources

psq-0.1.0.tbz
sha256=979abf22fe357ef3cf3a6939a05ba158e8946b324bc3c1b0b23dcbb5637bf021
md5=21d6abc3db996888887ec61b7d38f885

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.

psq is distributed under the ISC license.

Published: 21 Nov 2016

README

psq — Functional Priority Search Queues

v0.1.0

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

Interface, online.

Dependencies (4)

  1. topkg build
  2. ocamlbuild build
  3. ocamlfind build
  4. ocaml >= "4.02.0"

Dev Dependencies (1)

  1. alcotest with-test

Used by (7)

  1. dream < "1.0.0~alpha3"
  2. dream-httpaf
  3. h2
  4. ke >= "0.5"
  5. lru < "0.3.0"
  6. ocluster < "0.2"
  7. piaf < "0.2.0"

Conflicts

None

OCaml

Innovation. Community. Security.