[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] R build system and CRAN importer (updated)
From: |
Ludovic Courtès |
Subject: |
Re: [PATCH] R build system and CRAN importer (updated) |
Date: |
Sat, 29 Aug 2015 23:15:04 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
Ricardo Wurmus <address@hidden> skribis:
> From 1c726be7746021f5d967d12154c057391e24585d Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <address@hidden>
> Date: Fri, 24 Jul 2015 16:49:57 +0200
> Subject: [PATCH 1/2] import: Add 'cran' importer.
>
> * guix/import/cran.scm: New file.
> * guix/scripts/import.scm: Add "cran" to 'importers'.
> * guix/scripts/import/cran.scm: New file.
> * tests/cran.scm: New file.
> * Makefile.am (MODULES): Add 'guix/import/cran.scm' and
> 'guix/scripts/import/cran.scm'.
> (SCM_TESTS): Add 'tests/cran.scm'.
> * doc/guix.texi (Invoking guix import): Document it.
> * po/guix/POTFILES.in: Add 'guix/scripts/import/cran.scm'.
Nice work.
> +(define string->license
> + (match-lambda
> + ("AGPL-3" 'agpl3)
Perhaps ‘agpl3+’ is a better match?
> + ("GPL-2" 'gpl2)
‘gpl2+’
> + ("GPL-3" 'GPL3)
Lower-case, and probably with ‘+’ as well.
> + ("LGPL-2" 'lgpl2.0)
> + ("LGPL-2.1" 'lgpl2.1)
> + ("LGPL-3" 'lgpl3)
‘+’?
> +(define (format-inputs names)
> + "Generate a sorted list of package inputs from a list of package NAMES."
> + (sort
> + (map (lambda (name)
> + (list name (list 'unquote (string->symbol name))))
> + names)
> + (lambda args
> + (match args
> + (((a _ ...) (b _ ...))
> + (string-ci<? a b))))))
Might be more readable like this:
(map (lambda ...)
(sort names string-ci<?))
Otherwise LGTM. OK to push with these changes.
> From 8271e8a5e7d237693e8d4b7b34e4a484b9a1fc22 Mon Sep 17 00:00:00 2001
> From: Ricardo Wurmus <address@hidden>
> Date: Fri, 31 Jul 2015 14:47:34 +0200
> Subject: [PATCH 2/2] build: Add R build system.
>
> * guix/build-system/r.scm: New file.
> * guix/build/r-build-system: New file.
> * Makefile.am (MODULES): Add new files.
> * doc/guix.texi (Build Systems): Document r-build-system.
[...]
> +(define (call-r command params)
Nitpick: I’d call it ‘invoke-r’ (a function is called, a program is
invoked.)
Thanks!
Ludo’.