IRC channel logs

2017-06-15.log

back to list of logs

<catonano>rekado: thank you fofr discussing paredit. Yesterday night I fell asleep
<catonano>I'll delve deeper into that
<catonano>not rigt now, though
<catonano>tere's an example script by the Freexl project. It reads a xsl ile and wrtes a sql file to populate a db
<catonano>I want to see suuch sql file because I'm not sure I am understanding corrrectly the code
<catonano>reading code in general is hard. C code specifically is not exactly my thing
<catonano>well, the state of grace of the early morning is over
<catonano>so the next step in my wrapping of Freexl is accessing what I think is an attribute of the istance of something. Like this
<catonano> switch (cell.type)
<catonano> {
<catonano> case FREEXL_CELL_INT:
<catonano>...
<catonano>I'm concerned about that "cell.type"
<catonano>is that possible, in guile ?
<cmaloney>morning
<catonano>cmaloney: morning
<civodul>catonano: if you're using the FFI, you'll have to use make-c-struct to declare the struct type of 'cell'
<civodul>and from there you can access the fields of these C structs
<catonano>civodul: thanks
<catonano>note taken
<dsmith-work>Greetn's Guileers
<OrangeShark>hello
<CustosLimen>ok
<CustosLimen>so I can't reproduce the leak independantly yet
<CustosLimen> https://git.savannah.gnu.org/cgit/guile.git/tree/lib/regcomp.c?h=v2.0.11#n2754
<CustosLimen>but its coming from those two reallocs
<CustosLimen>both are leaking
<CustosLimen>ok and its fixed in 2.0.14
<CustosLimen>YAY
<CustosLimen> https://git.savannah.gnu.org/cgit/guile.git/commit/?id=d484bfbacec75941ba643ddc600e995f2c160928
<CustosLimen>re_free (new_array_start); re_free (new_array_end);
<civodul>oh, too bad you were missing a fix from last year
<CustosLimen>hmm actually not sure it fixed it now though
<CustosLimen>does not seem like it fixed it
<CustosLimen>ok
<CustosLimen>I have it I think
<CustosLimen>maybe y'all can tell me what is what
<CustosLimen>I'm going to quote 2.0.11 but I think problem is same in later versions
<CustosLimen> https://git.savannah.gnu.org/cgit/guile.git/tree/lib/regex_internal.h?h=v2.0.11#n113
<CustosLimen>so here we have condition defining # define RE_ENABLE_I18N of #if (defined MB_CUR_MAX && HAVE_WCTYPE_H && HAVE_ISWCTYPE) || _LIBC
<CustosLimen>here we have allocation of space based on RE_ENABLE_I18N https://git.savannah.gnu.org/cgit/guile.git/tree/lib/regcomp.c?h=v2.0.11#n2754
<CustosLimen>however here the space is only cleaned up based on different condition: https://git.savannah.gnu.org/cgit/guile.git/tree/lib/regcomp.c?h=v2.0.11#n3783
<CustosLimen>so I'm going to take that re_free (cset->range_starts); and re_free (cset->range_ends); out of the define block
<CustosLimen>ok it looks like that did it
<CustosLimen>I will fine a bug report I guess
<CustosLimen>ye ?
<CustosLimen>no ?
<CustosLimen>I think it is solaris' fault anywa
<CustosLimen>y
<ijp>I might need to change my function representation in js-il
<paroneayea>ijp: why's that?
<ijp>well currently the "hierarchy" is functions have clauses (a la case-lambda) and clauses have conts
<ijp>but if conts can be shared across clauses, then it makes some sense to hoist them up to the same level
<ijp>then I can get rid of the $local type, but the inliner will probably need to be rewritten
<ijp>an alternative is to keep the same process for now, but all the conts in each clause, and let the inliner remove them. It may result in some duplication, but is a smaller change
<ijp>yeah that might be better
<paroneayea>interesting
<paroneayea>ACTION prints out "Contification Using Dominators" to read during lunch
<paroneayea>ijp: sounds like you're thinking things through well... keep hacking! :)
<spk121>So, the captcha for webchat.freenode.net is so complicated now, that I don't always get it right.
<spk121>I may not be clever enough to use IRC. haha.
<paroneayea>spk121: you could always use a desktop client
<ijp>ye olde factorial -- http://shift-reset.com/pastes/fact.js.html
<spk121>paroneayea: IRC is blocked at work
<ijp>not runnable yet, there are a few new primitives that will need to be implemented
<paroneayea>ijp: thrilling :)
<ijp>the reference of srfi-1 also compiles, but I will spare you that
<ijp>suffice to say wc -l /tmp/srfi-1.js -- 10634 /tmp/srfi-1.js
<paroneayea>:)
<davexunit>ijp: that is so cool!
<ijp>hmmm, k_7 is free, but the linter I was using didn't say that
<ijp>which I think means I'm not handling $ktail correctly
<stis_>guile is soo smoothy: http://www.c-lambda.se/call-and-define.html
<stis_>perhaps scheme to but I want syntax-case and syntax parameters
<ijp>or maybe it was just that the define! primitive changed from returning no value, to returning one
<ijp>I'm starting to push to https://gitlab.com/ijp/guile/commits/compile-to-js-2017 I'll make a post on guile-user once I've updated runtime.js + a few other things
<paroneayea>ijp: \\o/
<paroneayea>ijp: excited to see commits going up :)
<stis_>yey
<ijp>wingo: look at all these primitives you've added for unboxing :(
<civodul>heheh
<slyfox>does giule have a debug mode to aid debugging when guile SIGSEGVs itself?
<slyfox>it fails in interpreter due to sp variable being 0x0: http://dpaste.com/22V1ZWZ.txt
<Muto>I'm not sure about Guile itself, but I think the GDB supports Scheme languages.
<slyfox>i think it's a bug of interpreter itself
<slyfox>it's guile itself crashing when it build it's own source
<slyfox>guile-2.0.14/libguile $ GUILE_INSTALL_LOCALE=1 GUILE_AUTO_COMPILE=0 ../meta/build-env guild snarf-check-and-output-texi </dev/null
<Muto>slyfox: Hm.. That's interesting... Did you install Guile from a package (like apt in debian) or build it yourself from a tarball?
<slyfox>it's a gentoo package. it builds guile from source tarball
<dsmith-work>slyfox: In general, Guile should *never* segfault.
<Muto>slyfox: Ah, makes sense. I've never used Gentoo but personally I think it's probably not a distribution problem, however, I've never gotten an error code like this so I don't think I can help, sorry.
<slyfox>yes. it's a rare case of not-so-common CPU architecture :)
<slyfox>full build log but it's not very interesting https://paste.pound-python.org/raw/NRqqu5Ddxut6QY5I6dd1/
<spk121>slyfox: one thing you can do is manually edit the libguile Makefile to remove the guile-procedures.texi build step. This will let you carry on to build guile. From there you can run the "./check-guile" to do the unit tests, which will help you find your problem.
<slyfox>would 'make -k' do the same?
<dsmith-work>slyfox: It's worth a try.
<spk121>slyfox: I seem to recall that that doesn't work for some reason. But it is worth a try.
<dsmith-work>slyfox: Do you have any other guile on your system?
<slyfox>i think i can get guile-1.8.8 on that system
<dsmith-work>slyfox: Ah. No I meant if you *do* already have one that might be interfering with your build.
<slyfox>nope, i don't have any other
<slyfox>./check-guile seems to SIGSEGV early as well: http://dpaste.com/2DYJXDX.txt
<slyfox>can i run ./meta/guile on a minimal hello world example to see if basic functions work?
<slyfox>perhaps is does not matter. './meta/guile --help' also fails