Non-Backtrackable Data Structures

The following routines implement well-known data-structures using global non-backtrackable variables (implemented on the Prolog stack).

The data-structures currently supported are Queues, Heaps, and Beam for Beam search. They are allowed through library(nb).