IRC channel logs

2018-07-18.log

back to list of logs

<ison[m]>I'm just trying to create save/load functions for some project and all data types are working fine except classes. They get read in as symbols. The obvious solution would be to just create a big condition block with all available classes and return the right one, but that will look messy so I'm just wondering if there's another way.
<jralls>I'm trying to build guile-2.2.4 for Mingw-w64, 32-bit. The C part compiled OK once I disabled networking, but compiling the Scheme fails. It purports to compile eval.scm, but then:
<jralls>WARNING: loading compiled file C:/gcdev64/gnucash/maint/build/guile-2.2.4/bootstrap/ice-9/eval.go failed:
<jralls> Throw to key misc-error with args ("load-thunk-from-memory" "missing DT_GUILE_ENTRY" () #f)
<jralls>I get a long chain of warnings like that as it churns through the list of files until:
<jralls>WARNING: loading compiled file /bin/sh: line 6: 8532 Segmentation fault
<jralls>And the build stopped.
<jralls>I looked up DT_GUILE_ENTRY (it's in libguile/loader.c) but can't figure out where it comes from. Does anyone know?
<dsmith>ison[m]: What are you using to save? write ?
<ison[m]>dsmith: I just made my own simple plain text format, but it's basically writing instructions to recreate the class instances. So for instance it writes the class name that it's an instance of, then all the keywords and values. So basically it's able to fully recreate the (make class #:keyword1 val1 ...) form except that "class" is a symbol.
<ison[m]>Right now I just have a big condition table to take in the class name and return the right one, but it seems silly to have that for such a little thing.
<ison[m]>Reading is just done with (with-input-from-string filedata read) so most data types are already correct but the class types are read in as symbols.
***wleslie_ is now known as wleslie
<mbowcutt>I'm building haunt, and when I run ./configure i get this:
<mbowcutt>./configure: line 2367: syntax error near unexpected token `2.2'
<mbowcutt>./configure: line 2367: `GUILE_PKG(2.2 2.0)'
***dsmith is now known as dsmith-work
<dsmith-work>Morning Greetings, Guilers
<sneek>dsmith-work, you have 1 message.
<sneek>dsmith-work, wingo says: i fixed that segfault on master i think
<dsmith-work>Yep
<dsmith-work>Took 4 hours and 7 minutes to build, btw.
<OrangeShark>happy Wednesday!
<yilin>Hello, I wanted to hook up flycheck to the guile linter but I'm getting an error message while linting. Does anyone use the linter?
<yilin>
<yilin>ice-9/boot-9.scm:2497:45: In procedure nested-ref-module:
<yilin>ice-9/boot-9.scm:2497:45: In procedure car: Wrong type argument in position 1 (expecting pair): #f
<yilin>Is the error message
<yilin>nvm
<yilin>Found the issue
<OrangeShark>yilin: what was the issue? So if someone else has the same problem they can also have an answer
<yilin>It doesn't seem to be working correctly yet, but the first error was caused by the fact that it tried to load the module #f since it couldn't find the module in the file. The actual linting doesn't seem to be working yet though; need to grok the code.
<ArneBab>wingo: do you already expect big speed gains in Guile 3?
<ArneBab>(I ask because in minimal benchmarking I did not see any)
<wingo>i expect until there is a jit there will be general slowdown though some cases will be faster
<manumanumanu>wingo: will guile3 be released befor the JIT will be added?
<wingo>no
<manumanumanu>Good :D
<wingo>but, jit is close! i think it is about 200h more of work or so
<cmaloney>If only there was a JIT for JITs
<rain1>I wonder how unboxing integers work
<ArneBab>200h is a strange measure of being close — thank you, THANK YOU for doing this!
<ArneBab>(200h of hobby time would be about four months for me, though it’s just 5 weeks in work-time … )
<manumanumanu>wingo: remember, if we ever meet I owe you a nice meal. I can only offer some small things that might make the ecosystem nicer, but other than that, I am way too dumb to actually add anything to guile
<manumanumanu>ArneBab: speaking of which: I am doing a rewrite of the for loops. I realized that I can't support streams unless I add support for non-tail-recursive forms (like what racket did with for/list). I am making it a lot nicer to add user-made for loops as well :)