GNU bug report logs - #53765
[PATCH 00/17] Remove limitations on clojure-tools

Previous Next

Package: guix-patches;

Reported by: Reily Siegel <mail <at> reilysiegel.com>

Date: Fri, 4 Feb 2022 00:23:01 UTC

Severity: normal

Tags: patch

Full log


View this message in rfc822 format

From: Maxime Devos <maximedevos <at> telenet.be>
To: Reily Siegel <mail <at> reilysiegel.com>, 53765 <at> debbugs.gnu.org
Subject: [bug#53765] [PATCH v2 05/18] gnu: Add clojure-core-memoize.
Date: Fri, 18 Mar 2022 14:22:21 +0100
[Message part 1 (text/plain, inline)]
Reily Siegel schreef op vr 18-03-2022 om 10:01 [+0100]:
> > Looks like there's a bug somewhere then.  Has this been reported? 
> > Could a link be added to the report so we know when the #:aot-
> > exclude
> > can be removed?  If it's an issue with ant-build-system, can this
> > be
> > reported?
> 
> Clojure libraries are usually not designed to be AOT-compiled, and
> are largely distributed in source form. The fact that Guix's
> clojure-build-system chooses to AOT all Clojure code by default is
> confusing to me.

For languages for which a compiler is available, AOT is rather standard.
(E.g., C, C++, Guile Scheme, Python, Java, Fortran).  Apparently Clojure
has a compiler as well.  Basically, why not AOT when it is possible, instead
of delaying compilation until runtime?

> At some point, this default should probably be changed because many
> Clojure libraries rely on the fact that they are distributed
> uncompiled to work properly.

How can a Clojure library rely on this fact in the first place?  I
don't quite see how -- for comparison, there are a few methods in Guile
for detecting if it is has been compiled or is being interpreted,
e.g. some uses of 'eval-when', '%load-compiled-path' or 'procedure-
name', but they are rather convoluted and unused (except in examples).

Also, if a Clojure library misbehaves when being AOT-compiled, without
additional context, that seems like a bug in the Clojure library to me
(or the AOT-compilation code).

Greetings,
Maxime.
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 3 years and 58 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.