[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#33215] [PATCH 05/11] guix: Add clojure-utils.

From: Alex Vong
Subject: [bug#33215] [PATCH 05/11] guix: Add clojure-utils.
Date: Wed, 21 Nov 2018 22:35:54 +0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)


address@hidden (Ludovic Courtès) writes:

> Hello!
> I’m late to the party but I think there are things worth discussing
> here.  Danny, for non-trivial bits, in particular in the (guix …) name
> space, I think we should ping people to get more detailed review before
> merging.
> Alex Vong <address@hidden> skribis:
>> From 857cce37325f01c26f79a6e15e33d7988ea4a0a2 Mon Sep 17 00:00:00 2001
>> From: Alex Vong <address@hidden>
>> Date: Sun, 14 Oct 2018 03:09:48 +0800
>> Subject: [PATCH 05/11] guix: Add clojure-utils.
>> * guix/build/clojure-utils.scm: New file.
>> * gnu/packages/lisp.scm (clojure)[arguments]: Use it.
>> * (MODULES): Add it.
> [...]
>> +(define-module (guix build clojure-utils)
>> +  #:use-module (guix build utils)
>> +  #:use-module (ice-9 ftw)
>> +  #:use-module (ice-9 regex)
>> +  #:use-module (srfi srfi-1)
>> +  #:use-module (srfi srfi-26)
>> +  #:export (%clojure-regex
>> +            define-with-docs
>> +            install-doc))
>> +
>> +(define-syntax-rule (define-with-docs name docs val)
>> +  "Create top-level variable named NAME with doc string DOCS and value VAL."
>> +  (begin (define name val)
>> +         (set-object-property! name 'documentation docs)))
> This is not necessarily a bad idea, but in general I’m very much in
> favor of consistency: since we don’t use this anywhere else, I’d rather
> not have it here either.  We could discuss it separately, but IMO it
> shouldn’t be buried in a Clojure patch.
> Thus I’d be in favor of using the same style in this file as in the rest
> of Guix.
No problem, I am happy to replace the doc string by a comment
instead. IMO, providing doc string for variables in addition to
procedures is more consistent [in a different way :)] since a procedure
is just a special kind of variable. For example, 'defvar' in Emacs
allows one to specify a doc string.

Besides, I thought it is okay to use custom syntactic form within a
module (as long as it doesn't break other's code). However, I can see
that the way I use it can be confusing since everyone are used to
defining variable via 'define'. Is this what you have in mind when you
wrote that you are in favor of consistency?

> Thanks,
> Ludo’.


Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]