From the webpage:
Quipper is an embedded, scalable functional programming language for quantum computing. It provides, among other things:
- A high-level circuit description language. This includes gate-by-gate descriptions of circuit fragments, as well as powerful operators for assembling and manipulating circuits.
- A monadic semantics, allowing for a mixture of procedural and declarative programming styles.
- Built-in facilities for automatic synthesis of reversible quantum circuits, including from classical code.
- Support for hierarchical circuits.
- Extensible quantum data types.
- Programmable circuit transformers.
- Support for three execution phases: compile time, circuit generation time, and circuit execution time. A dynamic lifting operation to allow circuit generation to be parametric on values generated at circuit execution time.
- Extensive libraries of quantum functions, including: libraries for quantum integer and fixed-point arithmetic; the Quantum Fourier transform; an efficient Qram implementation; libraries for simulation of pseudo-classical circuits, Stabilizer circuits, and arbitrary circuits; libraries for exact and approximate decomposition of circuits into specific gate sets.
The website has a Quipper tutorial, online documentation and a detailed look at the language itself.
No link for a quantum computer but that isn’t very far off.
Learn Quipper now and perhaps you can lead the first Apache project to develop open source software for a quantum computer.
I first saw this in a tweet by Jose A. Alonso.