IRC channel logs

2020-08-20.log

back to list of logs

***Guest58294 is now known as daviid
<daviid>dsmith: np! here is the snipset I did paste to reproduce the problem https://paste.gnome.org/p6tasyf73 (only valid a few days ...) - it would be good if you could (re)read the log of http://logs.guix.gnu.org/guile/2020-08-18.log, top part of the log, where i give a little context about the re-export-public-interface macro ... tx!
<sneek>Welcome back daviid, you have 1 message!
<sneek>daviid, peanutbutterandc says: Is work ongoing to make g-golf compatible with 3.x series, too?
<dsmith>daviid: On a guess, I tried adding "#:re-export (map)" to the define-module form in a.scm
<dsmith>scheme@(guile-user)> map
<dsmith>WARNING: (guile-user): imported module (a) overrides core binding `map'
<dsmith>WARNING: (guile-user): imported module (a) overrides core binding `map'
<dsmith>$1 = #<procedure map (f l) | (f l1 l2) | (f l1 . rest)>
<dsmith>daviid: I guess that's what re-export-public-interface is supposed to do?
<daviid>dsmith: right, str1ngs did also proposed to add #:re-export-and-replace (which afaaict only exists for 3.0.4 and future versions ... but I wish, that is the all point actually, very precisely that users don't have to do that
<daviid>dsmith: and no warnings either, just like you have no warning when you import (srfi srfi-1) ina module or in the repl ... or does 3.0.4 produces warnings whn one import srfi-1 in the rpl ... i hav nearly zro xperienc with 3.0 so far ...
<daviid>dsmith: I also wouldn't want to maintain diff version of a same module for diff guile versions - so, the solution is expectd to be fully automatic, for both 2.2 and 3.0 ...
<dsmith>Well, I've been playing a bit with it here.
<dsmith>But I really don't know much about the way modules work.
<dsmith>daviid: Since you have such a nice repeatable test case, probably best to file a bug against Guile 3.
<dsmith>daviid: Andy did made some changes to modules. Not sure exactly what.
<dsmith>daviid: One of the changed needed for bobot++ was to replace %module-public-interface with (module-public-interface (current-module))
<dsmith>daviid: But it looks like re-export-public-interface already has that.
<daviid>dsmith: ok thanks for the help and tip - I know there has been changes, and I am prety sure something can be cooked for 3.0 as well, it's just that i have users willing that it works 'now', and I won't be able to lok into this 'now' ... hence my request for elp ... thanks for your time
<dsmith>It may be instructive to see what differences there are in re-export between 2.x and 3.0, if any.
<daviid>sure, as it migyht be ineteresting to look at module-use! as well, but i'm really not having time to do that now, thanks again
<dsmith>I would think you could just call re-export with the list of public symbols from the modules of interest,
<dsmith>but re-export takes actual symbols, not a list. And it's a macro, so you can't apply it.
<dsmith>And is there some reason re-export-public-interface is a define-macro instead of a define-syntax ?
<daviid>right, i also think 3.0.4 mandate to use re-export-and-replace in certain circumstances ... all this needs a deep analysis, will do, but not 'now'
<dsmith>Yep
<daviid>dsmith: to the last quiz, i think historical reasons, re-export-public-interface is nearly 20y old :)
<daviid>andy probably never told us he was an advance lisper in a previous life :):)
<dsmith>Ahh, pre-dates the better macros
<dsmith>Long ago, you needed to use-modules syncase. Or was it use-syntax syncase? Anyway it was a really long time to load. I'm thinking like 0.5 - 2.0 seconds or so.
<dsmith>And so define-syntax was avoided unless the cost was worth it.
<daviid>i think guil-gnome is not that old, i did exaggerate a bit :):)
<dsmith>Long long LONG ago, guile had tk built in!
<peanutbutterandc>Hey there,
<peanutbutterandc>is anybody aware that (procedure-source) does not work in guile?
<peanutbutterandc>Okay there's a bug report too: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24887 hmm
***apteryx is now known as Guest11016
***apteryx_ is now known as apteryx
<dsmith-work>Thursday Greetings, Guilers
***hugh_marera_ is now known as hugh_marera
<leoprikler>guile-gnome is stone-age old
***dddddd_ is now known as dddddd
***apteryx_ is now known as apteryx
***evhan` is now known as evhan
***hugh_marera_ is now known as hugh_marera