IRC channel logs

2023-03-18.log

back to list of logs

<winter>lloda: so is the let required so that the argument is evaluated at macro-expansion time?
<Aurora_v_kosmose>daviid: Oh, I didn't know that. Nice.
<Aurora_v_kosmose>It'd be nice if it were.
<daviid>Aurora_v_kosmose: you probably meant dsmith
<Aurora_v_kosmose>daviid: Oh, you're right. Sorry.
<daviid>np!
<daviid>lloda: i am trying to fix the guile-cairo make check problem, some progress, but i still have one 'strange problem', maybe you can help - i am going to paste a 'git diff', so i can describe some of the changes, then ask the question
<daviid>lloda: here are the diffs i made - https://paste.centos.org/view/eff62064 - the 'point of departure' is to fix cairo.scm, which was h'ardcoding' the libguile-cairo path, so no matter what, make check would either fail if not installed, or use the installed one if ... which is not what we want
<daviid>lloda: that change is line 33 34 of the paste - that's what we want, i think - to have make check to be able to find libguile-cairo, i changed env.in [i took the g-golf one, which works perfectly]
<daviid>lloda: then i updated the top Makefile.am, which shouldn't have an env target, with the above changes and the configure.ac rule AC_CONFIG_FILES([env], [chmod +x env]) - it is fine, and not updating the Makefile.am raises an error, all fixed
<daviid>lloda: then i updated the ests/unit-tests/Makefile.am to also refer to $(abs_top_builddir)
<daviid>lloda: with all these changes, now even if you unisntall guile-cairo, make checks finds the libguile-cairo and all check pass except ests/unit-tests/context-pointer.scm, and i fail to undestand why - both cairo-context->pointer and cairo-pointer->context) are undefined
<daviid>and this simple manual test also fails - https://paste.centos.org/view/5be2b6a2 - even though make pass, so the local libguile-cairo should have those two new symbols
<daviid>lloda: by contrast, trying the same, still with an uninstalled guile-cairo succeed
<daviid>
<daviid> ./env guile -c "(use-modules (cairo)) (pk cairo-create)" => ;;; (#<procedure cairo-create (_)>)
<daviid>lloda: so my questyion is, is there somethig missing which would also export those symbols ? but then why does it work if i run 'make install' before make check? i hope you can help
<cow_2001>any tips on how to use the picture language with sicp?
<cow_2001>purty https://jeetparte.github.io/posts/sicp-picture-language-exhibition/
<cow_2001>oh wait this is not guile
<cow_2001>weird how M-x info shows the pictures in the guile picture language manual
<mirai>how can I read the "truncated" output from the repl when the line is too long?
<sneek>dsmith: Greetings :)
<dsmith>sneek: botsnack
<sneek>:)
<dsmith>daviid: Works for me (the old names):
<dsmith>dsmith@debmetrix:~/src/guile-cairo$ ./env guile -c "(use-modules (cairo)) (pk context->cairo-pointer)"
<dsmith>
<dsmith>;;; (#<procedure context->cairo-pointer (_)>)
<dsmith>I have the added funcs in guile-cairo.c
<dsmith>And that also works after a git pull (using airo-context->pointer instead)
<daviid>dsmith: try make uninstall, then the above, whitout the patch i psted, it won't even find cairo ...
<daviid>you'd need to apply the diffs i pasted to reproduce ... we are trying to fix make check whic does not work as it should ...
<dsmith>I haven't done a make install. Make check is not finding (unit-test). I have it installed from a deb, but my guile is locally compiled.
<dsmith>Have you cleared your cache?
<daviid>dsmith: yuou first need to git pull, then apply the diffs i liked, then we can share expe, you are in a diff env, your env is the old version ...
<dsmith>ok
<dsmith>This? https://paste.centos.org/view/eff62064
<daviid>yes
<daviid>have to gafk, but be back later ...
<dsmith>Ok. Having trouble applying that patch
<daviid>they are diffs, not a patch ...
<daviid>i'll paste a patch later then ...
<dsmith>Ive got it applied. uninstalled the guile-lib package and installed 2.7 from source (--prefix=/usr/local)
<dsmith>Downloading the paste converts tabs to spaces, which messsed up the Make* diffs
<dsmith>Ahh. guile-lib needs --with-guile-site=yes
<dsmith>So in guile env.in, DYLD_LIBRARY_PATH has .libs added, while in guile-cairo, env.in uses LTDL_LIBRARY_PATH
<dsmith>ISTR Guile no longer using libtool?
<dsmith>Hah! got it.
<dsmith>daviid: env.in has libguile-cairo/.libs should be guile-cairo/.libs
<dsmith>Edited that and make check passes
<dsmith>daviid: I made this change: https://paste.debian.net/1274524/
<dsmith>daviid: On top of your diffs
<daviid>dsmith: i'll be back in 10 to 15 min, that change you made is not 'ok', and is not used anyway in the version 'after my diffs', but i can't explainn why now, i'll be able to sit and talk work in about 15min from now ... tx
<dsmith>ok
<dsmith>The problem as I see it is there is no ./libguile-cairo/.libs/ directory. There *IS* a ./guile-cairo/.libs/ direectory.
<daviid>ah, let me check, i am back now ..
<daviid>dsmith: perfect, that was the problem indeed, in the 'patched' env.in, if you change libguile-cairo -> guile-cairo, make check pass in the local build tree
<daviid>dsmith: you can just copy (unit-test) in your manually installed guile repo
<dsmith>It's the cairo/Makefile.am that needs the libguile-cairo -> guile-cairo change
<daviid>in the env.in as well
<dsmith>I've got guile-lib installed properly now.
<dsmith>Ahh! Yeah, didn't notice that among the other changes.
<daviid>in the new 'version', we are actually not using config.scm anymore, except for the doc
<daviid>i left those lines but i want to clean them and just keep a good env or pre-inst-env file that is the only 'source' that setrs what ever is needed to use cairo in the build ennv
<daviid>i am gona do some 'patch cleaning', removing those lines in the config.scm, and Makefile.am, then send those patches - it would be nice to get rid of the config setting for the doc as well, but let's first get those patches in - thanks for your help! i'll ping you when email sent ...
<daviid>dsmith: i changed the /unit-tests/Makefile.am, the TESTS_ENVIRONMENT target - https://paste.centos.org/view/6c33737f
<daviid>which is much better as well [no -s is needed and you don't want to compile the test files]
<Arsen>hi! can I load a scheme file as a quoted list? so, if I have (1 (2 3)) in a file, I'd like to get that as a list
<Arsen>(load ...) seems to evaluate too
<dsmith>Arsen: You are probably want (read)
<Arsen>I see, I hoped I could let load handle the IO for me while not evaluating, but (read) it is. Thanks!
<dsmith>How about (call-with-input-file "filename" read)
<Arsen>sounds handy
<Arsen>ACTION tries
<dsmith> https://www.gnu.org/software/guile/manual/html_node/File-Ports.html#index-call_002dwith_002dinput_002dfile
<Arsen>yeah, that's exactly right
<Arsen>thanks
<dsmith>Sweet
<dsmith>Of course that only gives you one expression..