From 2c56db1e5ea59dd82e07065515d1a576255a88cc Mon Sep 17 00:00:00 2001 From: Katherine Cox-Buday Date: Fri, 7 Jun 2019 15:48:30 -0500 Subject: [PATCH 09/15] gnu: Add antik. * gnu/packages/lisp.scm (antik): New variable. --- gnu/packages/lisp.scm | 122 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 122 insertions(+) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index e4f1cba12d..b5a221e1ac 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -5714,3 +5714,125 @@ libraries.") (define-public ecl-trivial-utf-8 (sbcl-package->ecl-package sbcl-trivial-utf-8)) + +(define-public sbcl-antik-base + (let ((commit "e4711a69b3d6bf37b5727af05c3cfd03e8428ba3") + (revision "1")) + (package + (name "sbcl-antik-base") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.common-lisp.net/antik/antik.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "047ga2c38par2xbgg4qx6hwv06qhf1c1f67as8xvir6s80lip1km")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("sbcl-iterate" ,sbcl-iterate) + ("sbcl-alexandria" ,sbcl-alexandria) + ("sbcl-metabang-bind" ,sbcl-metabang-bind) + ("sbcl-named-readtables" ,sbcl-named-readtables) + ("sbcl-cl-ppcre" ,sbcl-cl-ppcre) + ("sbcl-split-sequence" ,sbcl-split-sequence))) + (native-inputs + `(("sbcl-lisp-unit" ,sbcl-lisp-unit))) + (synopsis + "Antik provides a foundation for scientific and engineering +computation in Common Lisp.") + (description + "Antik provides a foundation for scientific and engineering +computation in Common Lisp. It is designed not only to facilitate +numerical computations, but to permit the use of numerical computation +libraries and the interchange of data and procedures, whether +foreign (non-Lisp) or Lisp libraries. It is named after the +Antikythera mechanism, one of the oldest examples of a scientific +computer known.") + (home-page "https://common-lisp.net/project/antik/") + (license license:gpl3)))) + +(define-public sbcl-foreign-array + (package + (inherit sbcl-antik-base) + (name "sbcl-foreign-array") + (arguments + (substitute-keyword-arguments (package-arguments sbcl-antik-base) + ((#:asd-file _ "") "foreign-array.asd") + ((#:asd-system-name _ #f) "foreign-array"))) + (inputs + `(("sbcl-antik-base" ,sbcl-antik-base) + ("sbcl-cffi" ,sbcl-cffi) + ("sbcl-trivial-garbage" ,sbcl-trivial-garbage) + ("sbcl-static-vectors" ,sbcl-static-vectors))) + (synopsis + "A library providing access to foreign (i.e., C) arrays."))) + +(define-public cl-foreign-array + (sbcl-package->cl-source-package sbcl-foreign-array)) + +(define-public ecl-foreign-array + (sbcl-package->ecl-package sbcl-foreign-array)) + +(define-public sbcl-physical-dimension + (package + (inherit sbcl-antik-base) + (name "sbcl-physical-dimension") + (inputs + `(("sbcl-foreign-array" ,sbcl-foreign-array) + ("sbcl-fare-utils" ,sbcl-fare-utils) + ("sbcl-trivial-utf-8" ,sbcl-trivial-utf-8))) + (arguments + (substitute-keyword-arguments (package-arguments sbcl-antik-base) + ((#:asd-file _ "") "physical-dimension.asd") + ((#:asd-system-name _ #f) "physical-dimension"))) + (synopsis + "A library to provide computations with physical dimension, i.e. +units."))) + +(define-public cl-physical-dimension + (sbcl-package->cl-source-package sbcl-physical-dimension)) + +(define-public ecl-physical-dimension + (sbcl-package->ecl-package sbcl-physical-dimension)) + +(define-public sbcl-science-data + (package + (inherit sbcl-antik-base) + (name "sbcl-science-data") + (inputs + `(("sbcl-physical-dimension" ,sbcl-physical-dimension) + ("sbcl-drakma" ,sbcl-drakma))) + (arguments + (substitute-keyword-arguments (package-arguments sbcl-antik-base) + ((#:asd-file _ "") "science-data.asd") + ((#:asd-system-name _ #f) "science-data"))) + (synopsis + "Numerical data science and engineering data."))) + +(define-public cl-science-data + (sbcl-package->cl-source-package sbcl-science-data)) + +(define-public ecl-science-data + (sbcl-package->ecl-package sbcl-science-data)) + +(define-public sbcl-antik + (package + (inherit sbcl-antik-base) + (name "sbcl-antik") + (inputs + `(("sbcl-physical-dimension" ,sbcl-physical-dimension) + ("sbcl-gsll" ,sbcl-gsll))) + (arguments + (substitute-keyword-arguments (package-arguments sbcl-antik-base) + ((#:asd-file _ "") "antik.asd") + ((#:asd-system-name _ #f) "antik"))))) + +(define-public cl-antik + (sbcl-package->cl-source-package sbcl-antik)) + +(define-public ecl-antik + (sbcl-package->ecl-package sbcl-antik)) -- 2.17.1