IRC channel logs
2026-05-28.log
back to list of logs
<resica>I'm curious to know more about how the garbage collector works. What actually causes the GC to run and how can I test it for myself? <identity>resica: see (info "(guile) Memory Management") and (info "(guile) Garbage Collection") <resica>I've seen that manual online, half of it is C related and it appears it's more tailored to how memory management works when using C rather than using guile directly. <mwette>"If the total amount of allocation since the last collection is less than the heap size divided by GC_free_space_divisor, we try to expand the heap. Otherwise, we initiate a garbage collection." see https://www.hboehm.info/gc/gcdescr.html <mwette>The role of guile for this GC, as far as I understand, is to call the memory allocator and mark the roots. <resica>I didn't think to read up on the third party library that does the actual garbage collection. Thanks for the heads up, mwette. <dthompson>did wingo write a new pretty printer recently or am I misremembering things? <dthompson>(ice-9 pretty-print) in main hasn't been touched since 2023 it seems