aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/prolog.scm
diff options
context:
space:
mode:
author宋文武 <iyzsong@member.fsf.org>2024-03-16 13:14:37 +0800
committer宋文武 <iyzsong@member.fsf.org>2024-03-23 19:17:59 +0800
commit9f11c33b6d2c16e710fa2ef3c74f985e2b885350 (patch)
treee4ba7f7a541a302c9386e1aaad794a7df4b81f99 /gnu/packages/prolog.scm
parent517a19806050a4797fefe8932577f6bc1c87c8e8 (diff)
downloadguix-9f11c33b6d2c16e710fa2ef3c74f985e2b885350.tar.gz
guix-9f11c33b6d2c16e710fa2ef3c74f985e2b885350.zip
gnu: Add logtalk.
* gnu/packages/prolog.scm (logtalk): New package. Change-Id: I99e04e70b32c498b5da1f094752279e4668f3865
Diffstat (limited to 'gnu/packages/prolog.scm')
-rw-r--r--gnu/packages/prolog.scm45
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index 0f2ad25a49..a969823374 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -171,3 +171,48 @@ compiler with a rich set of built-in predicates. It offers a fast, robust and
small environment which enables substantial applications to be developed with
it.")
(license license:bsd-2)))
+
+(define-public logtalk
+ (package
+ (name "logtalk")
+ (version "3.75.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://logtalk.org/files/logtalk-"
+ version ".tar.bz2"))
+ (sha256 (base32 "0w35br03l307wk2fwh67rybqjgvjlwpy9j5r4c3pkrywd7lhrc54"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:tests? #f ;no tests
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure) ;no configure script and Makefile
+ (delete 'build)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (mkdir #$output)
+ (invoke "./scripts/install.sh" "-p" #$output))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "LOGTALKHOME")
+ (separator #f) ;single valued
+ (files '("share/logtalk")))))
+ (home-page "https://logtalk.org/")
+ (synopsis "Object-oriented logic programming language")
+ (description "Logtalk is a declarative object-oriented logic programming language
+that extends and leverages the Prolog language with a feature set suitable for
+programming in the large. As a multi-paradigm language, Logtalk includes support for
+both prototypes and classes, protocols (interfaces), categories (components and
+hot-patching), event-driven programming, coinduction, lambda expressions, and
+high-level multi-threading programming.")
+ ;; Most are under Apache License 2.0, some contributed libraries and ports are
+ ;; under other licenses.
+ (license (list license:asl2.0
+ license:artistic2.0
+ license:bsd-2
+ license:bsd-3
+ license:cc0
+ license:expat
+ license:gpl2+
+ license:osl2.1))))