IRC channel logs
2026-08-31.log
back to list of logs
<sneek>I've been a process for 4 days <sneek>This system has been up 2 weeks, 5 days, 12 hours, 38 minutes <old>rlb: found my bug I think <old>basically, in scm_fork <old>we call scm_all_threads <old>the problem is that we call it _after_ the finalizer thread was stopped <old>and so, it's possible that by calling scm_all_threads, we trigger a GC <old>when the GC is run, it also call the finalizer callback, which spawn the finalizer thread again just before the fork <old>then all can happen. I basically got some weird abort in BLUE that were very random <old>but I managed to somehow get a deadlock with weak table mutex and I figure this can only happen if the finalizer thread is alive while a fork happen <old>keeping the lock in locked state forever in the child process <trannus_aran_>where do you all get your guile.m4 when building a new project? <graywolf>trannus_aran_: Well it comes with Guile, I just copied it from /share/aclocal/guile.m4 <trannus_aran_>ah! thank you, I just wasn't sure where it was on my system and my `find` incantations were failing me <graywolf>dthompson: Huh, I always vendor it into m4/guile.m4 in my projects, but never considered whether it is necessity. <trannus_aran_>and perusing guile libraries with fewer dependencies and building a mental model of what filetree is common between them, is anyone basing these off of a particular reference? <trannus_aran_>presumably guile-hall plays some role in what's considered "normal" here, but idk for sure <dthompson>guile.m4 contains autoconf macros that are present if guile is installed on the build machine <dthompson>so there's no need to copy it into your project unless you need a patched version or something <dthompson>autotools is horrible. everything else is worse. my best advice is snarf stuff from a project that already figured it out and move on. I learned from guix in the early days, before the autotomfoolery got too complicated. <TheTaoOfSu>I'm planning an app and need to write the core library for it, but I'd like to keep the library, at least, as implementation-independent as possible. Will Guile handle it well if, say, I write the library in R7RS and then have to use more traditional Guile Scheme for the rest of the app? Or will I need to trigger a global adaptation to R7RS that may interfere with other Guile-specific libraries? <loon>trannus_aran: totally unrelated, love your nick :D <TheTaoOfSu>Also open to using R6RS if needed, but while I've seen tools to convert R7 to R6, I don't think I've seen one going the other way, so R7 seems most universal <dthompson>trannus_aran: a new build system written in guile. been too busy to try it out but heard good things. <JohnCowan>dthompson: imo the Chibi aporoach is better than autotool, even if it doesn't work on random ancient OSes <graywolf>autotools (when done right) are great for the user, pain for the developer <JohnCowan>the makefile looks at uname to see what OS you are building on and then includes makefile.linux, makefile.macos, makefile.whatever <JohnCowan>so if you want to run it on VMS, you need to modify makefile.detect and write makefile.vms <trannus_aran>dthompson: aha! I had something like BLUE of my own (mostly as sexp notes of how to make the autotools files needed) <trannus_aran>Figured somebody out there *must* be making something IN guile itself <dthompson>build systems are kind of the "I can fix him" of software <old>It is still in pre-alpha. I've been pretty much busy on Guile lately <old>Would like to make a release 3.0.12 at some point (Guile) <daviid>trannus_aran: fwiw, I (highly) recommend you 'stick' to the autotool chain - no need to become an expert (which is very difficult), just read some project(s) that used it and ask for help here ... my 2c <old>Is guile 2 still a thing? this needs to be back-ported to it I think <rlb>That's great (and my condolences wrt tracking that down :) ). <TheTaoOfSu>If I use (install-r7rs!), does that mean I must use strictly R7RS-compliant Scheme in the entire rest of the program? I need to use Guile for some GUI bindings, but I'd like the core library to remain implementation-independent if possible <PuercoPop>Is there a way interpret patterns sequentially in match? that is bind a part to (response body) and have a second (and pattern) already have response body to check if response-code is between 200 and 300? <TheTaoOfSu>sham1: Oh nice, yeah, that doesn't seem to hardly change anything at all. Great, thank you <sham1>Yeah, it's pretty much just read syntax and recognising