diff options
author | Nikita Karetnikov <nikita@karetnikov.org> | 2013-02-01 16:11:29 +0000 |
---|---|---|
committer | Nikita Karetnikov <nikita@karetnikov.org> | 2013-02-02 12:48:58 +0000 |
commit | 9c63fe6c1f855a09a62d6d74739ce6eced6fdef8 (patch) | |
tree | cb6056beb84ee84ee49f8caf49298dc0701f0249 /gnu/packages/gprolog.scm | |
parent | 58cc3b385bb573caee09213d7a4394920220269f (diff) | |
download | guix-9c63fe6c1f855a09a62d6d74739ce6eced6fdef8.tar.gz |
gnu: Add GNU Prolog.
* gnu/packages/gprolog.scm: New file. * Makefile.am (MODULES): Add it.
Diffstat (limited to 'gnu/packages/gprolog.scm')
-rw-r--r-- | gnu/packages/gprolog.scm | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/gnu/packages/gprolog.scm b/gnu/packages/gprolog.scm new file mode 100644 index 0000000000..ba84d9a836 --- /dev/null +++ b/gnu/packages/gprolog.scm @@ -0,0 +1,72 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages gprolog) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public gprolog + (package + (name "gprolog") + (version "1.4.2") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.gprolog.org/gprolog-" + version ".tar.gz")) + (sha256 + (base32 + "0y25c2gwz41i6g28qyfjklrmanzgk0c8cr4jn2s7s8qgd9dnm1fm")))) + (build-system gnu-build-system) + (arguments + `(#:phases (alist-cons-before + 'configure 'change-dir-n-fix-shells + (lambda _ + (chdir "src") + (substitute* "configure" + (("-/bin/sh") (string-append "-" (which "sh"))) + (("= /bin/sh") (string-append "= " (which "sh"))))) + %standard-phases))) + (home-page "https://www.gnu.org/software/gprolog/") + (synopsis + "GNU Prolog, a free Prolog compiler with constraint solving over +finite domains") + (description + "GNU Prolog is a free Prolog compiler with constraint solving over +finite domains developed by Daniel Diaz. + +GNU Prolog accepts Prolog+constraint programs and produces native +binaries (like gcc does from a C source). The obtained executable is +then stand-alone. The size of this executable can be quite small since +GNU Prolog can avoid to link the code of most unused built-in +predicates. The performances of GNU Prolog are very +encouraging (comparable to commercial systems). + +Beside the native-code compilation, GNU Prolog offers a classical +interactive interpreter (top-level) with a debugger. + +The Prolog part conforms to the ISO standard for Prolog with many +extensions very useful in practice (e.g., global variables, OS +interface, sockets). + +GNU Prolog also includes an efficient constraint solver over finite domains. +This opens contraint logic programming to the user combining the power of +constraint programming to the declarativity of logic programming.") + (license (list gpl2+ lgpl3+)))) \ No newline at end of file |