Subject: Re: [PATCH] Adding xlispstat.scm

From: Liliana Marie Prikler <[email-masked]>
Date: Sat, 20 Nov 2021 11:32:26 +0100

Am Freitag, den 19.11.2021, 11:55 -0800 schrieb Frank Pursel:
> ---
>  gnu/packages/xlispstat.scm | 83 
If you're adding a package, that also needs to be recorded in
Makefile.am.  Also the ChangeLog is missing.

On a slightly related note, single-package files are usually a bad
idea.  Would it make sense to add this to lisp.scm, lisp-xyz.scm or
statistics.scm?
> ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 83 insertions(+)
>  create mode 100644 gnu/packages/xlispstat.scm
> 
> diff --git a/gnu/packages/xlispstat.scm b/gnu/packages/xlispstat.scm
> new file mode 100644
> index 0000000000..94f5b9863b
> --- /dev/null
> +++ b/gnu/packages/xlispstat.scm
> @@ -0,0 +1,83 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright =C2=A9 2021 Frank Pursel <[email-masked]>
> +;;;
> +;;; 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 xlispstat)
> +  #:use-module (guix packages)
> +  #:use-module (guix git-download)
> +  #:use-module (guix build-system gnu)
> +  #:use-module (guix licenses)
> +  #:use-module (gnu packages xorg)
> +  #:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages ncurses)
> +  #:use-module (gnu packages maths)
> +  #:use-module (gnu packages shells))
> +
> +(define-public xlispstat
> +  (let ((xlispstat-version "3.52.23")
> +        (guix-revision "0")
> +        (commit "f1bea6053df658ee48612bf1f63c35de99e2c649"))
Guile is not Java.  revision and commit suffice, as does hard-coding
the base version as the first argument to git-version. 
> +    (package
> +      (name "xlispstat")
> +      (version (git-version xlispstat-version guix-revision commit))
> +      (source (origin
> +                (method git-fetch)
> +                (uri (git-reference
> +                      (url "https://github.com/jhbadger/xlispstat")
> +                      (commit commit)))
> +                (sha256
> +                 (base32
> +                  "1p0cmgy19kbkxia139cb5w9dnkp2cdqp5n3baag6cq3prn3n7
> 1mf"))
> +                (file-name (git-file-name name version))))
> +      (build-system gnu-build-system)
> +      (arguments
> +       `(#:parallel-build? #f
> +         #:parallel-tests? #f
> +         #:tests? #f
Any explanation on these flags?
> +         #:configure-flags
> +         (list "--with-gcc")))
> +      (inputs
> +       `(("tcsh" ,tcsh)
> +         ("libx11" ,libx11)
> +         ("libxmu" ,libxmu)
> +         ("libxext" ,libxext)
> +         ("libxpm" ,libxpm)
> +         ("libxaw" ,libxaw)
> +         ("ncurses" ,ncurses)
> +         ("gnuplot" ,gnuplot)))
> +      (native-inputs `(("pkg-config" ,pkg-config)))
> +      (synopsis "Statistical analysis environment with interactive
> graphics
> +based on lisp")
> +      (description "XLISP-STAT is a statistical environment based on
> a dia=
> lect
> +of the Lisp language called XLISP.  To facilitate statistical
> computations,
> +standard Lisp functions for addition, logarithms, etc., have been
> modified=
>  to
> +operate on lists and arrays of numbers, and a number of basic
> statistical
> +functions have been added.  Many of these functions have been
> written in L=
> isp,
> +and additional functions can be added easily by a user.  Several
> basic for=
> ms
> +of plots, including histograms, scatterplots, rotatable plots and
> scatterp=
> lot
> +matrices are provided.  These plots support various forms of
> interactive
> +highlighting operations and can be linked so points highlighted in
> one plot
> +will be highlighted in all linked plots.  Interactions with the
> plots are
> +controlled by the mouse, menus and dialog boxes.  An object-oriented
> +programming system is used to allow menus, dialogs, and the response
> to mo=
> use
> +actions to be customized.")
> +      (home-page "http://homepage.divms.uiowa.edu/~luke/xls/xlsinfo/
> ")
> +      (license expat))))
> +
> +;; See also 
> https://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/li=
> sp/impl/xlspstat/
> +
> +;; xlispstat
Don't leave trailing declarations, commented or uncommented in the
patch.

Cheers