mbox series

[bug#69091,0/1] Adding clojure.java-time

Message ID cover.1707775899.git.steve@futurile.net
Headers show
Series Adding clojure.java-time | expand

Message

Steve George Feb. 12, 2024, 10:18 p.m. UTC
Investigating adding Clojure libs. Clojure.java-time is a common basic wrapped
Java lib.

Steve George (1):
  gnu: Add clojure.java-time.

 gnu/packages/clojure.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)


base-commit: b64862e5cb8209c92aa2eff4cec0be328e38c45d

Comments

Andreas Enge Feb. 16, 2024, 10:06 a.m. UTC | #1
Hello,

according to our naming convention
   https://guix.gnu.org/de/manual/devel/en/html_node/Package-Naming.html
   https://guix.gnu.org/de/manual/devel/en/html_node/Python-Modules.html
I think the package should be called clojure-java-time (well, this is not
spelt out precisely, but we could argue by analogy, and by consistency with
the existing clojure packages).

I know nothing about clojure, but am wondering about two things:
- There is one other package with #:aot-exclude '(#:all), which gives
  an explanation why the line is there; could you add one here as well?
- Would it make sense to package math.combinatorics first to enable the
  tests? If we do not test now, I am afraid we will forget it later...

Andreas
Ludovic Courtès March 2, 2024, 4:17 p.m. UTC | #2
Hi Steve,

Did you have a chance to look into Andreas’ comments about this patch?

  https://issues.guix.gnu.org/69119

Ludo’.

Andreas Enge <andreas@enge.fr> skribis:

> Hello,
>
> according to our naming convention
>    https://guix.gnu.org/de/manual/devel/en/html_node/Package-Naming.html
>    https://guix.gnu.org/de/manual/devel/en/html_node/Python-Modules.html
> I think the package should be called clojure-java-time (well, this is not
> spelt out precisely, but we could argue by analogy, and by consistency with
> the existing clojure packages).
>
> I know nothing about clojure, but am wondering about two things:
> - There is one other package with #:aot-exclude '(#:all), which gives
>   an explanation why the line is there; could you add one here as well?
> - Would it make sense to package math.combinatorics first to enable the
>   tests? If we do not test now, I am afraid we will forget it later...
>
> Andreas
Steve George March 3, 2024, 4:45 p.m. UTC | #3
Hi Ludo,

I got blocked as this patch caused me to look at whether we should be compiling to byte-code by default. I have not been able to achieve consensus so far (and have taken some time off from the thread):

https://lists.gnu.org/archive/html/guix-devel/2024-02/msg00241.html

Having been unable to convince others I also asked the Clojure community:

https://clojureverse.org/t/should-linux-distributions-ship-clojure-byte-compiled-aot-or-not/10595

Their perspective is that:

a. We should not byte-code compile libraries (what Clojure calls AOT), but we could do so for tools/apps.
b. We should not package libraries at all

From both interactions I'm unsure if packaging this (or any other Clojure libs/tools) is the right move. 

Steve

On  2 Mar, Ludovic Courtès wrote:
> Hi Steve,
> 
> Did you have a chance to look into Andreas’ comments about this patch?
> 
>   https://issues.guix.gnu.org/69119
> 
> Ludo’.
> 
> Andreas Enge <andreas@enge.fr> skribis:
> 
> > Hello,
> >
> > according to our naming convention
> >    https://guix.gnu.org/de/manual/devel/en/html_node/Package-Naming.html
> >    https://guix.gnu.org/de/manual/devel/en/html_node/Python-Modules.html
> > I think the package should be called clojure-java-time (well, this is not
> > spelt out precisely, but we could argue by analogy, and by consistency with
> > the existing clojure packages).
> >
> > I know nothing about clojure, but am wondering about two things:
> > - There is one other package with #:aot-exclude '(#:all), which gives
> >   an explanation why the line is there; could you add one here as well?
> > - Would it make sense to package math.combinatorics first to enable the
> >   tests? If we do not test now, I am afraid we will forget it later...
> >
> > Andreas