quantum-arrow

An embedding of quantum computation as a Haskell arrow

http://github.com/luqui/quantum-arrow

Latest on Hackage:0.0.5

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

LicenseRef-LGPL licensed by Luke Palmer
Maintained by [email protected]

This module is a loose port of the Quantum::Entanglement Perl module, which endows its host language with quantum-computationesque effects. In this Haskell version this is done using an arrow to take advantage of the arrow syntax for imperative-looking code. The module has all the fun bells and whistles of quantum computation, including entanglement and interference, even through conditionals (which the Perl analog does not support). The arrow is defined over any instance of MonadRandom, so if you want to get especially crazy, you can experiment with what quantum computation is like when observables include invoking continuations. See the included example.hs for some simple examples of what using this module looks like.