[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Building Guix with Guile 2.1
From: |
Andy Wingo |
Subject: |
Re: Building Guix with Guile 2.1 |
Date: |
Thu, 22 Sep 2016 11:22:45 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) |
On Wed 21 Sep 2016 23:01, address@hidden (Taylan Ulrich "Bayırlı/Kammer")
writes:
> With the attached quick-and-dirty patch, 'make' runs to completion.
LGTM.
> I think we can keep the (compile 'dummy) hack. That leaves two issues
> which may be solved in a cleaner manner than in this patch:
>
> - The (define foo (@@ (bar) foo)) parts.
> - Making %tty-gid public. (The above didn't work for this one...)
>
> Both fixes may become unnecessary if Guile 2.2 goes back to allowing
> #:select to import private bindings. Otherwise, recommendations for
> cleaner solutions welcome.
I think allowing access to private bindings via #:select was simply an
error and is unlikely to be reinstated.
> By the way, compile time seems to increase greatly with 2.2, to the
> point I wondered if it's really compiling in parallel, but it does seem
> to as evidenced by top(1). Maybe package modules could be compiled with
> certain optims turned off, since they mostly just consist of package
> object definitions and not procedures whose performance would matter.
How much?
I think turning off most optimizations for the packages is a good idea.
There is not a nice way to do this however. What `guild compile -O1
...` does is:
http://git.savannah.gnu.org/gitweb/?p=guile.git;a=blob;f=module/scripts/compile.scm;h=939fb2564ec344de5f4a531b2041383730262d4f;hb=HEAD#l55
The default is -O2.
Andy