<daviid>rekado_: do you happen to know/think if gnu solfege is still maintained? <manumanumanu>wingo: _really_ nice work with the inlinable exports! It seems... nontrivial. :) ***apteryx_ is now known as apteryx
<rekado_>daviid: I don’t know, but it doesn’t look like there’s any development. <wingo>manumanumanu: tx. has been trickier than i thought it would be :) <wingo>i wired up the "inlinables" side. haven't done peval yet <wingo>some tricky considerations regarding reproducibility -- because inlinables can themselves benefit from cross-module inlining, it's not clear when you reach a fixed point ***Aurora_iz_kosmos is now known as Aurora_v_kosmose
<manumanumanu>wingo: "Inlining, how hard can it be?". Famous last words. <manumanumanu>I don't know who I'm quoting, but it is a quote I know I have stolen from someone. I suspect it might be you: "Writing an inliner is like trying to restrain a rabid dog on a leash" <manumanumanu>wingo: I am a little bit curious. Have you measured any speedups? Cross module inlining is one of those things often talked about, but I don't really know about the benefits. <wingo>manumanumanu: still not really working <wingo>from looking at some diagnostics, generally will be no impact on guile. sometimes amazing tho <wingo>one of those "whoa where did that 10x improvement come from" things <wingo>but, it will allow us to write programs in different ways <wingo>i.e. without considering module boundaries to be optimization boundaries <wingo>so you can freely (define x 42) and know that users will inline as appropriate <wingo>(nb, only for declarative modules and unassigned toplevels) <wingo>er, declarative bindings in declarative modules rather <wingo>in my branch, the "provider" side is done i think <wingo>i.e. candidate values are written to the compilation units <wingo>the "consumer" side is done for simple values like constants and such <wingo>needs some help for lambdas tho. inlining a lambda introduces new lexicals in the source program, which peval wasn't expecting before <sneek>Welcome back civodul, you have 1 message! <sneek>civodul, raghavgururajan says: In c-u, glib-or-gtk-build-system doesn't trigger bootstrap. For example. try `guix build farstream --without-tests=gupnp-igd`. <civodul>wingo: how can users retain control over ABI compatibility issues? <civodul>as a module writer, sometimes there are things you explicitly don't want to be inlined <manumanumanu>wingo: thanks! It will hopefully make something like define-inlinable mostly redundant <ArneBab>wingo: not having to worry about module-structure for optimizations sounds great! <ArneBab>(not that I did that to date, but it would be great to never having to do it in hindsight)