IRC channel logs

2025-07-03.log

back to list of logs

<wehlutyk>Hello all! I'm copying a question I just asked on the Guix channel
<wehlutyk>I'm exploring various of Guix's gnu/packagesguile-xyz.scm sources (currently goblins), to try and understand how guile projects with C libs are configured for Guix packages
<wehlutyk>Would there be a kind of standard way (a setup script?) to generate all the basic configure.ac, bootstrap, etc., for all that?
<wehlutyk>or a tutorial for having C libs?
<identity>wehlutyk: i would guess the guile manual has what you are looking for
<wehlutyk>identity: right, thanks, I see https://www.gnu.org/software/guile/manual/guile.html#A-Sample-Guile-Extension
<dthompson>wehlutyk: fwiw goblins does not have any C extensions
<wehlutyk>indeed no
<wehlutyk>any good / simple examples that do?
<dthompson>pretty sure fibers does
<dthompson>not sure how simple it is, though
<veqq>Does anyoe know how Guile ended up with the Boehm GC? I know wingo is working on a replacement, but I'm curious how Boehm compared to the tracing/mark and sweep GC from v. 1
<df> https://www.gnu.org/software/guile/manual/guile.html#Conservative-GC seems like a reasonable explanation
<veqq>df: that explains how it works. I asked why they chose this.
<veqq>df: I read that and the old versions e.g. http://gnu.ist.utl.pt/software/guile/docs/docs-1.8/guile-ref/Conservative-GC.html prompting my question
<df>oh, I didn't realise the previous version was also conservative
<df>I guess if the two are basically equivalent then boehm has the benefit of being heavily battle-tested?
<wingo>boehm was faster and less error-prone than our old gc
<wingo>and we didn't know about mostly-copying collectors back then
<civodul>the 1.8-and-earlier version wasn’t fully conservative and a bit inconvenient to use in C
<civodul>Boehm promised to be easier to use and to work better with C code
<civodul>which was seemed useful back then
<dsmith>I think no one wanted to track down GC bugs..
<wingo>good evening
<dthompson>👋
<rlb>wingo: if you recall, did you end up with any adjusted opinion about srfi-207, given the srfi statements? i.e. my reading suggested that at least according to the srfi, there wasn't supposed to be any distinguishable type involved. Not pressing, and I can also just shelve it if we're not sure, and/or don't want to decide right now, but wanted to check back while it's still swapped in.
<ekaitz>wingo: we had some talk about the status of guile in the Guix mailing list maybe you are interested on taking a look to it
<ekaitz>wingo: tl;dr some community members raised concers about the status of the guile maintainership and offered help (with some, i mean me in the first place)
<wingo>ekaitz: happy to have help :) let's see about finishing the codeberg move and we can see if we can get a nice PR workload going
<wingo>ekaitz: i need reviewers for wip-whippet work also!
<ekaitz>wingo: I'm literally struggling with a copying garbage collector right now lol
<wingo>once reviewers catch their wind they can have commit powers etc
<wingo>lol ;)
<ekaitz>wingo: but I'll do
<wingo>sympathies & solidarity! ;)
<ekaitz>in any case, i wasn't aware that you were pushing for a codeberg migration. I'm happy to read that
<ekaitz>i'm pretty busy but I'll try to take part on the reviewing process
<wingo>codeberg.org/guile/guile
<wingo>zomg, the bug i was losing my mind over: https://github.com/wingo/whippet/commit/c0baca39ba022ed05e6eb1d19311ec7d31d9c5ec
<ekaitz>wingo: please move lightening to the same org
<wingo>turns out guile records some interior pointers to SCM objects in global variables
<wingo>ekaitz: sgtm, will take a little more work to manage CI
<ekaitz>wingo: open an issue, and assign me (ekaitz-zarraga)
<ekaitz>i'll take a look if I can
<ekaitz>at least we can start with a mirror