LQPL is a functional quantum programming language based on the semantics as presented in "Towards a Quantum Programming Language" by Peter Selinger. LQPL is available as a source distribution as well, at http://pll.cpsc.ucalgary.ca/lqpl
The binary distribution contains the following items:
-
bin - The backend binaries - lqpl, lqpl-compiler-server, lqpl-emulator.
- The back end is written in Haskell and is comprised of two main components
- The Emulator (binary: lqpl-emulator)
- The Compiler (command line binary: lqpl; server binary: lqpl-compiler-server)
- Each of the server pieces are required and are included in this binary distribution.
- The back end is written in Haskell and is comprised of two main components
-
lib - Contains the redistributed jars required to run the front end UI.
-
LICENSE - The license file.
-
lqplcode - LQPL source files that can be used with the front end UI.
-
lqpl_gui.jar - The executable of the front end UI(this is written in Java and JRuby). lqpl_gui is a front end for the Linear Quantum Programming Language developed at the University of Calgary. This is now in a separate repository, http://github.com/drogar/lqpl-jruby-fe
-
lqplManual.pdf - The manual of the LQPL language.
-
README - This read me file.
You will need to have a copy of the Java 8 (or higher) runtime environment installed and add the path of bin directory of the JRE into your system path.
-
You may leave the binary servers as they are and use them through the lqpl_gui, or you can copy the command line binary(lqpl) into a directory on your path and then use it to compile lqpl programs.
-
To run the front end, open a terminal, change to the directory where you expanded the tar file and type 'java -jar lqpl_gui.jar' (without quotes).
- The modularized compiler, emulator and front end.
- Graphical User Interface front end.
This is the first release of LQPL to be made up of a separated GUI and back-end. ChangeLog:
- Modularization of the Compiler / Emulator / Front End.
- Removal of dependency on Alex and Happy for the Compiler(Moved to Parsec). The assembler in the emulator still requires Alex and Happy
- Removal of dependency on Gtk2Hs for the front end - moved to a JRuby/Java/Swing based interface.
Please report any issues to brett.giles@drogar.com If you prefer, you may also enter issues directly at:
https://github.com/drogar/lqpl/issues
Fork, issue a pull request. Or, get in touch with brett.giles@drogar.com