On Tue, 30 May 2023, Simon Tournier wrote:
Just to put a figure on what means “big”: currently the .go files are 5
times bigger than their associated .scm.
Somehow, it’s the trap of DSL. :-) Packages are declarative and the
information they declare is not dense. However, because they are
bytecompiled to a general programming language, their specificity is not
exploited. In an ideal world, the compiled binary representation of the
packages should be smaller than their human-readable text-file
counterpart.
The mentioned improvement is nice. And it’s visible:
--8<---------------cut here---------------start------------->8---
145M
/gnu/store/nqrb3g4l59wd74w8mr9v0b992bj2sd1w-guix-d62c9b267-modules/lib/guile/3.0/site-ccache/gnu
117M
/gnu/store/s6rqlhqr750k44ynkqqj5mwjj2cs2yln-guix-a09968565-modules/lib/guile/3.0/site-ccache/gnu
127M
/gnu/store/ndii4bpyzh2rc05ya61s89rig9hdrl4k-guix-a0178d34f-modules/lib/guile/3.0/site-ccache/gnu
164M
/gnu/store/ni63a203jf61dwxlv8kr9b8x3vb1pdsp-guix-8e2f32cee-modules/lib/guile/3.0/site-ccache/gnu
--8<---------------cut here---------------end--------------->8---
This is probably a tagent, sorry, but I was curious how well the .go files
compressed. It seems quite well, actually:
jackhill@mimolette ~/.config/guix/current/lib/guile/3.0/site-ccache/gnu [env]$
sudo compsize .
Processed 595 files, 1659 regular extents (1659 refs), 0 inline.
Type Perc Disk Usage Uncompressed Referenced
TOTAL 21% 36M 173M 173M
none 100% 16K 16K 16K
zstd 21% 36M 173M 173M
Best,
Jack