***octo_ is now known as Octophore
<CustosLimen>"bug#22152: fat_mutex owner corruption (fmoc) inside fat_mutex_unlock (guile-v2.0.11)" <fps>hi, a possibly very stupid and ignorant question: is it possible to write a closure over a function to a file and retrieve it later? <taylan>fps: procedures can't be serialized, sadly <taylan>i.e. you can neither store them in a file, nor transfer them over the network or even between two guile processes on the same machine <fps>taylan: aww, too bad.. <fps>taylan: ty for the info though <fps>i guess that's where the "procedures are data" finally breaks :) <fps>i had partial success with serializing/deserializing closures in lua btw ;) <taylan>procedures aren't the only data type that can't be serialized, but maybe the most tricky <fps>the reason i looked at this was the idea that the configuration/building step in a build system could nicely be thought of as configure->create closure, build->execute it <fps>taylan: oh, there's more? i suppose so especially in guile with its C interaction <taylan>fps: for instance hash tables don't have a serialized form either, at least by default <taylan>though that can be added relatively easily (done in my Guile SRFI-126 implementation for instance) <fps>taylan: yeah, generating code isn't as pretty though :) <taylan>(well, except for hash tables with custom hash/equal functions, since that would once again require procedure serialization) <fps>generating code is what the gnu autotools do <fps>and it's not pretty :) <fps>ok, that's maybe a particularly nasty example of code generation <taylan>it should be much less ugly with lisp :) still not as nice as just serializing a procedure, but an improvement... <fps>btw: i looked at all these replicated configure calls when i built the guix world and wondered "so much wasted cpu cycles" <fps>have a tool that compiles one C file in 0.1 secs? the configure run takes 10 secs <fps>sure, not all of it could be shared/memoized, but so much of it.. hmm <fps>ok, next step after functional package management with guix is functional build systems <fps>i mean, what's a more obvious candidate? <fps>might even go hand in hand. factor out common stuff and use the guix daemon to memoize the "configure" output for the common stuff <fps>oh well, food for thought. mindless soul crushing meetings ahead instead.. have fun.. <frofroggy>I want to fix grammar in the manual, but it's understandable as it is, so it's not a bug by the guidelines :( <frofroggy>"Better is to use the procedure hashq-get-handle, which makes a distinction between the two cases." <frofroggy>API Reference > Compound Data Types > Hash Tables > Hash Table Examples <taylan>frofroggy: I'm sure a patch to that effect would be accepted <taylan>frofroggy: what's the mistake in that sentence though? <frofroggy>taylan: the sentence is missing a subject. I would add 'it': "It is better to use the procedure hashq-get-handle ...." <fps>frofroggy: maybe send a patch to the guideline, too, that makes grammar errors bugs, too :) <taylan>oh, I would've thought that gets a pass for being a common usage. meh, not an English expert. <wleslie>my favourite PR: deleting one character for the sake of grammar <rjmacready>just wanted to let the nice-people-that-i-talked-to-yesterday know that i got started with the guile integration yesterday <paroneayea>davexunit: the important thing is you don't just put each sentence on its own line, you wrap each sentence! ***karswell` is now known as karswell
***dje is now known as xdje
<amz3>this might interest people looking at ways to have guile in the browser <amz3>basically it means translating the C runtime of Guile into webassembly (wasm) and then well we would have a basic guile which will be able to compile itself <amz3>but it's not straightforward as compiling a héllo world ;) <amz3>pypy.js is (was?) supported by mozilla for over 2 years IIRC and it's still nowhere near production ready <CustosLimen>so something I dont quite get - you can compile C to webassembly, but then you still need standard library <amz3>that the way guile works, it compiles a small C core and then compile the rest <amz3>one the primary upgrade of wasm over asm.js is that it improves startup time