Description
Lazy-Spined Monadic Priority Queues.
Description
This library provides a priority queue data structure that is meant to be used primarily as a control structure, in the vein of list and Logic. The PriorityQueue data structure in question is an instance of Applicative, Alternative, and Monad classes much like the standard list data type. In addition, it also tracks the cost incurred by each computation it stores, and provides operations for pruning overly expansive branches.