haskelzinc: CP in Haskell through MiniZinc

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.



This package was created in the context of the GRACeFUL project.

The haskelzinc library defines an interface to the MiniZinc 2.0 constraint proramming language. It provides a Haskell abstract syntax tree for the MiniZinc language, with which one can represent MiniZinc models in Haskell, a pretty printer to print the representation of a MiniZinc model in MiniZinc and a parser that returns a representation of the solutions obtained by running the MiniZinc model.

An additional module gives the possibility to directly get the solutions of a MiniZinc finite domain model. Option for interactive interface is provided, as well as choice between two solvers: the G12/FD built-in solver of FlatZinc and choco3.

[Skip to ReadMe]


Change logchangelog
Dependenciesbase (>=4.8 && <5), containers (==0.5.*), filepath (>=1.2), parsec3 (>=, pretty, process [details]
AuthorKlara Marntirosian
UploadedSat Sep 10 14:07:15 UTC 2016 by klara_mar




Maintainers' corner

For package maintainers and hackage trustees

Readme for haskelzinc-

[back to package description]



To use choco solver, also required:


  1. Create a file HZconf/conf.txt in the same directory level where you want to run your code.
  2. Fill in the corresponding paths by adding the equal sign (=) and the correct path. . MINIZINC_DIR: the directory where mzn2fzn and flatzinc executables are located . CHOCO_PARSER: the path of the choco parser java library . CHOCO_SOLVER: the path of the choco solver java libaray . ANTLR: the path of the antlr java libaray Example: MINIZINC_DIR = path/to/dir

Not yet supported