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.
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.