IRC channel logs

2020-01-15.log

back to list of logs

<mwette>chrislck: thanks -- I'll need to look again not getting it. Is p then bound to the second argument?
<dsmith>unknown_lamer: Where is the current/lastest bobot++ source?
<unknown_lamer>dsmith: https://unknownlamer.org/darcsweb/browse?r=bobot%2B%2B;a=summary
<unknown_lamer>ten years ago last commits, yow
<unknown_lamer>I can convert it to git if you want
<dsmith>Hmm. Sure.
<unknown_lamer>there's something funky and my darcsweb is kind of broken (but pulling should work)
<dsmith>Tarball is ok.
<dsmith>I can't seem to find my sources anywhere.
<unknown_lamer> https://git.hcoop.net/clinton/bobotpp.git
<unknown_lamer> https://git.hcoop.net/clinton/bobotpp.git/tag/refs/tags/release-2.2.3 might be the last good release
<unknown_lamer>gitweb can dump a tarball
<dsmith>fatal: repository 'http://git.hcoop.net/clinton/bobotpp.git/' not found
<dsmith>
<dsmith>or
<dsmith>dsmith@gpib:~$ git clone https://git.hcoop.net/clinton/bobotpp.git/tag/refs/tags/release-2.2.3
<dsmith>Cloning into 'release-2.2.3'...
<dsmith>fatal: repository 'https://git.hcoop.net/clinton/bobotpp.git/tag/refs/tags/release-2.2.3/' not found
<dsmith>Ahh
<dsmith>git clone git://git.hcoop.net/git/clinton/bobotpp.git works
<dsmith>Oi. Gotta port all that lazy-catch stuff
<dsmith>unknown_lamer: Ok, got it compiling!
<dsmith>Not sure if it works.
<dsmith>unknown_lamer: Accepting patches?
<unknown_lamer>dsmith: definitely
<dsmith>unknown_lamer: Well, it's compiling cleanly now. But I'm pretty sure I didn't do the lazy_catch stuff right. Getting errors in some scheme code somewhere.
<dsmith>!uptime
<sneek> 23:07:39 up 21:53, 1 user, load average: 0.00, 0.01, 0.05
<dsmith>~uptime
<dsmith>tsneek: botsnack
<dsmith>sneek: botsnack
<dsmith>sneek: botsnack
<dsmith>sneek: botsnack
<dsmith>unknown_lamer: What's bobotpp/bot.scm trying to do with %module-public-interface ?
<dsmith>Adding to (guile-user) ?
<dsmith>sneek: botsnack
<dsmith>sneek: botsnack
<dsmith>sneek: botsnack
<sneek>:)
<wingo>moin
<wingo>has anyone built guile 2.9.9 on mingw?
<rndd>hi everyone!
<rndd>could anybody help? how to convert an output of the function to string?
<zig>rndd: sure! paste the code you have already.
<chrislck>(display (fn args)) or (write (fn args)) will do usually...
<lloda>those write to any port
<lloda>call-with-output-string or (format #f ...) I guess
<rndd> https://pastebin.com/iTMKxfvw
<chrislck>ooh a few newbie issues:
<chrislck>don't use eq? to compare strings, use equal? or string=?
<chrislck>the case match should be: ((#t) (display "yes"))
<chrislck>no further comments
<chrislck>it's a nice start!
<lampilelo>eq? won't work on strings, equal? should, but string=? is preferred
<chrislck>in general I use eq? if I'm comparing symbols
<civodul>wingo: https://web.fdn.fr/~lcourtes/tmp/guile-3.svg (you need font-adobe-source-han-sans)
<rndd>chrislck, thanks for your answer, could you explain difference between #t and "#t"?
<civodul> https://web.fdn.fr/~lcourtes/tmp/guile-3.png
<wingo>civodul: nice :)
<chrislck>(equal? "a" "a") => #t; (string-join (list "#" "t") "") => "#t"...
<chrislck>#t is a TRUE/FALSE boolean; "#t" is a sequence of unicode code points that look like guile's TRUE output... :)
<lampilelo>and #\t is a character 't'
<rndd>ok, thanks
<chrislck>rndd: https://www.gnu.org/software/guile/manual/guile.html#Equality
<lloda>re: guile-json, I wish there was an option to wrap lines
<lloda>or to add newlines on nesting levels maybe
<lloda>pretty-print only works on one level it seems
<lloda>ok it seems it's only for nested vectors that there are no newlines
<rndd>there is another question. i'm trying to compare output of bash command with string but getting #f =( [ https://pastebin.com/W7qiCS5k ]
<chrislck>rndd: hint: type the whole thing out in a REPL and run (test)
<rndd>ok, got it
<rndd>(equal? (test) "bin\n") => #t
<rndd>could someone give link to any guide on parsing textfiles in guile?
<dsmith>sneek: paste?
<sneek>Someone once said paste is Try lisppaste at http://paste.lisp.org/
<dsmith>sneek: paste?
<sneek>Last time I checked paste is Try lisppaste at http://paste.lisp.org/
<dsmith>sneek: forget paste
<sneek>Okay.
<dsmith>sneek: paste?
<dsmith>wingo: What should %module-public-interface be replaced with: https://paste.debian.net/1126088
<dsmith>Or anyone
<wingo>dsmith: probably (module-public-interface (current-module))
<dsmith>sneek: paste is https://paste.debian.net
<sneek>Understood.
<wingo>search for %module-public-interface in the manual
<wingo>er
<wingo>the NEWS i mean
<dsmith>Yes, saw that. Didn't help *me* much though. ;^) Is why I'm asking.
<dsmith>sneek: botsnack
<dsmith>Hmm.
<dsmith>sneek: botsnack
<sneek>:)
<dsmith>Yes!
<dsmith>sneek: paste?
<dsmith>sneek: seen wingo?
<sneek>Not as far as I can remember.
<dsmith>Hmm
<dsmith>sneek: paste is https://paste.debian.net
<sneek>So noted.
<dsmith>sneek: paste?
<dsmith>Ahh well.
<mwette>in guile-1.8.8/ice-9/boot-9.scm: (define (module-public-interface m)
<mwette> (module-ref m '%module-public-interface #f))
<mwette>(define (set-module-public-interface! m i)
<mwette> (module-define! m '%module-public-interface i))
<mwette>
<unknown_lamer>dsmith: not sure at this point, probably some evil magic to export stuff from the bot
<unknown_lamer>if you don't figure it out lmk and I can try to take a look later
*wingo pushed a cheeky patch to master, la la la
<rlb>For any following along -- OK, *now* 2.2.6 built on all the debian arm* hosts and should finally be able to propagate to testing. Turns out the armel buildd was even slower still, i.e. 240 min was not enough for psyntax, but 300 min apparently did it.
<rlb>wingo: is 3.0 likely to bootstrap any faster, or should it be about the same (if you know).
<wingo>rlb: relative to 2.2 i think it is broadly similar but i don't know specifics
<rlb>(Mostly just curious -- since we should be fine as long as it's not *slower*.)
<rlb>Heh, OK, well I'll be able to tell you in a while -- though not working on it yet.
<wingo>if jit is not enabled, it will probably bootstrap slower
<jonsger>building Guile got very slow because of `make -j1` for reproducible .go files...
*jonsger is brave and tries to build gnucash with guile 3.0 :P
<civodul>jonsger: yeah that .go file reproducibility issue is a bummer
<civodul>we thought we fixed it ca. 2015 i think, but apparently not quite
***ng0_ is now known as ng0
<rlb>That's not the issue for debian (at least yet -- though arguably it should be). Right now the issue is just that (I think) 2.2.6 serialized the early bootstrap a bit, and so there's a much longer period with no output, which is what the buildd monitors (and it kills anything that's inactive for too long).
<rlb>The debs still build in parallel (or rather just use the dpkg-buildpackage defaults, which are normally parallel).
<wingo>rlb: does the debian build remove the .go files?
<wingo>the prebuilt ones
<rlb>yes, that's why it's so slow.
<rlb>well we don't actually remove them, we build from the git tag, not the release archive right now.
*wingo nod
<rlb>As a practical matter (not suggesting we should do this just for debian), if the compiler had some --verbose flag that ended up printing a line now and then, that'd fix the problem too, but since the arm* buildd admins ended up being willing to raise the timeout high enough for psyntax, we're hopefully fine for now.
<rlb>And I'm all in favor of reproducible builds for both guile and emacs. If it's just things I need to change in the debs, happy to do it, and also happy to help wrt the source if we know what needs doing and I have time.
<wingo> https://wingolog.org/pub/guile-3.0.0-vs-2.2.6-microbenchmarks.png
<wingo> https://wingolog.org/pub/guile-3.0.0-vs-chez-9.5.0-microbenchmarks.png
<drakonis1>still a long way to go before reaching chez speed?
<wingo>depends on the benchmark :)
<jonsger>wingo: could you also compare with 1.8 and 2.0?
<lispmacs[work]>Is there a way to pull the type of an object when you aren't using goops?
<civodul>jonsger: comparing with 1.8 may be hard (and somewhat irrelevant IMO :-)) because it lacks many language features and modules
<jonsger>civodul: yeah that's what I tought.
<str1ngs>lispmacs[work] you mean (class-of foo) is that what you need?
<drakonis1>where in the repository is the hook system?
<lispmacs[work]>str1ngs: I believe class-of foo is a goops function
<drakonis1>oops i'm in a roll
<drakonis1>wrong channel again
<lispmacs[work]>str1ngs: I was just wondering if you could view the type of an object when you are using goops system
<lispmacs[work]>*aren't
<drakonis1>wingo: how much does guile 3.0 speed up guix?
<str1ngs>drakonis1: libguile/hooks.c I think
<drakonis1>i was thinking about guix's hooks that are run when the system is altered
<str1ngs>lispmacs[work]: it's defined in oop goops but it can work on other types. though some of those types might be goops classes anyways.
<str1ngs>,eval (class-of 1)
<str1ngs>sneek: !
<str1ngs>,(class-of 1)
<str1ngs>sneek compute!
<str1ngs>drakonis1: ahh depends which hooks you mean build hooks? I know profile are in guix/profile.scm
<drakonis1>profile hooks, yeah.
<str1ngs>don't ask me how I know! I would never do something like this ;; manual-database
<drakonis1>i found it already
<drakonis1>but its not relevant to guile itself
<str1ngs>I reposted in #guix for posterity
***drakonis1 is now known as drakonis
<manumanumanu>wingo: Those are impressive numbers!
<manumanumanu>what is going on with mbrot?
<manumanumanu>jeez.
<manumanumanu>Is that a current "best case" for guile optimizations? If that reproduces on ecraven's benchmarks (if it is the same code) that should easily give guile the no 1 spot.
<lispmacs[work]>,eval (+ 1 1)
<lispmacs[work]>sneek: !
<lispmacs[work]>sneek computer!
<lispmacs[work]>sneek compute!
<lispmacs[work]>sneek: help
<wingo>good evening
***janneke_ is now known as janneke
<wingo>so.
<wingo>what if we make a test 3.0.0 tarball
*wingo hates libtool
<civodul>hey hey wingo!
<wingo>hey hey!
<wingo>so
<wingo>i think we can freeze guile for 3.0 this evening!
<wingo>wdyt?
<drakonis>nice!
<civodul>wingo: i say go for it!
<civodul>and then tomorrow: party time!
<wingo>yay
<wingo>civodul: so we send mails and make blog posts tomorrow 14h CET or so?
<civodul>yes, that sounds good
<civodul>do you need help for anything?
<wingo>hum, dunno, i think if i just do it like previous releases we will be pretty good
<wingo>write a blog post if you like :)
<wingo>wdyt?
<wingo>configure: autobuild revision... 3.0.0
<wingo>incidentally blog posts are something that everyone in this channel can do :)
<rndd>hi everyone, found simple command (crypt key salt), and how i can decrypt the result of this function?
<civodul>wingo: yes, you did very well
<civodul>i could write the post for 3.0.0 but i feel like you know better what to highlight & co.
<wingo>civodul: yeah i am ok writing the gnu.org one
<civodul>awesome
<wingo>will make it relatively short but a quick link from the guix blog is also nice ;)
<civodul>yeah i offer help just to say it'd be better if you did it, silly me ;-)
<wingo>haha :)
<civodul>ah yes, we could have a blog post on Guix
<civodul>i wonder if we should wait until Guix fully works on 3.0 though
<civodul>maybe it doesn't matter, we're almost there
<civodul>yeah i'll look into that tomorrow, then!
<wingo>civodul: spreading out things over time is fine too, however you see it is fine
*wingo turned network off during distcheck b/c apparently that damn netdb test fails on my home network :P
<wingo>i think i wanted to check the change in requests/sec for the http server but didn't get around to it
<drakonis>civodul: wait you haven't tested 3.0 on guix yet?
<wingo>he has. just that there are a few test failures.
<wingo>for guix itself on guile 3.0
<wingo>guix has built a number of guile packages on guile 3.0 tho
<drakonis>ah, okay.
<drakonis>i want to see how much better guix can be under 3.0
<civodul>wingo: ok i'll see what i can do but will definitely post something, either tomorrow or later on
<wingo>coo
*wingo uploading 3.0.0 docs
<wingo>fyi there is a guile 3.0.0 on https://ftp.gnu.org/gnu/guile/ :)
<drakonis>nice.
<civodul>woow, now this is for real :-)
<wingo> https://www.gnu.org/software/guile/manual/ :)
<drakonis>ohhh
<drakonis>its coming
<drakonis>do guix's repos now!
<drakonis>its like a magic trick
<drakonis>oh you sneaky sneaky folks
<drakonis>its there already
<wingo>:)
<wingo>ok, draft email ready, blog ready, tarballs up. all ready i think
<wingo>night!
<civodul>night, wingo! sleep well! :-)
<ng0>does this mean 3.0 is out of testing now?
<ng0>looking at the numbers alone
<slyfox>maybe it's not too late for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=38112 fix? :)