streamt

Simple, Fair and Terminating Backtracking Monad Transformer

http://github.com/davidar/streamt

Version on this page:0.5.0.0
LTS Haskell 21.25:0.5.0.1
Stackage Nightly 2023-06-21:0.5.0.1
Latest on Hackage:0.5.0.1

See all snapshots streamt appears in

BSD-3-Clause licensed by Oleg Kiselyov, Sebastian Fischer, David A Roberts
Maintained by David A Roberts
This version can be pinned in stack with:streamt-0.5.0.0@sha256:2e3b0ffcc71483352655ab8a6b5518bb9b653f6f9f8280e063d0e5dfee28bd6b,2051

Module documentation for 0.5.0.0

Depends on 3 packages(full list with versions):

Simple, Fair and Terminating Backtracking Monad Transformer

This Haskell library provides an implementation of the MonadPlus type class that enumerates results of a non-deterministic computation by interleaving subcomputations in a way that has usually much better memory performance than other strategies with the same termination properties.

It also terminates in many cases where the fair conjunction and interleaving operators provided by LogicT fail to do so, allowing it to safely provide fairness by default.

More information is available on the author’s website.

This package aims to be a drop-in replacement for the unmaintained stream-monad package, in addition to providing much of the same functionality as the logict package.