From 9f11c33b6d2c16e710fa2ef3c74f985e2b885350 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sat, 16 Mar 2024 13:14:37 +0800 Subject: gnu: Add logtalk. * gnu/packages/prolog.scm (logtalk): New package. Change-Id: I99e04e70b32c498b5da1f094752279e4668f3865 --- gnu/packages/prolog.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) 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 @@ (define bin `(,(string-append #$output "/bin"))) 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)))) -- cgit v1.2.3