IRC channel logs

2021-09-17.log

back to list of logs

<lispmacs[work]>hi, I was just wondering how bad a performance hit is raising an exception, compared to say a procedure call
<sneek>lispmacs[work], you have 3 messages!
<sneek>lispmacs[work], maximed says: (define-syntax backquote (syntax-rules () ((_ exp) (let-syntax ((exp* (datum->syntax s exp))) exp*)))) (untested)
<sneek>lispmacs[work], maximed says: (make-bytevector (backquote (* 100 100)))
<sneek>lispmacs[work], maximed says: oops, forgot s is unbound: (define-syntax backquote (syntax-rules () ((_ exp) (let-syntax ((exp* (datum->syntax #'exp exp))) exp*)))) (untested)
<lispmacs[work]>sneek tell maximed I am getting an error when I try to use backquote syntax you defined: In procedure syntax-wrap: Wrong type argument in position 1 (expecting syntax object). Maybe show me how you use it in a definition?
<sneek>maximed, lispmacs[work] says: I am getting an error when I try to use backquote syntax you defined: In procedure syntax-wrap: Wrong type argument in position 1 (expecting syntax object). Maybe show me how you use it in a definition?
<lispmacs[work]>sneek later tell maximed I am getting an error when I try to use backquote syntax you defined: In procedure syntax-wrap: Wrong type argument in position 1 (expecting syntax object). Maybe show me how you use it in a definition?
<sneek>Got it.
<lispmacs[work]>hi, in the definition of scheme procedure raise-exception (6.11.8.2) there is optional argument #:continuable=#f listed. I got a bit confused by that because it is supposed to be #:continuable?=#f with a question mark.
<lispmacs[work]>not sure if somebody is able to fix that sort of typo easily
***chris is now known as Guest7581
<muradm>good morning guile
<muradm>lost in void link to list of guile based software/libraries that is different from https://www.gnu.org/software/guile/libraries/
<muradm>please remind if possible
<daviid>sneek: guile-software?
<sneek>Someone once said guile-software is http://sph.mn/foreign/guile-software.html
<daviid>muradm: ^^
<muradm>daviid: ty
***iskarian is now known as Guest5838
<wingo>lloda: i think 3df3ba1a2c956bba122328e1fc4be614171a4f42 is probably an abi breaker; would invalidate files compiled before then with static arrays
<wingo>(also, good morning :)
<wingo>nice patches recently btw
<lloda>morning
<lloda>thx for checking that
<lloda>i depend on autocomp so ofc i didn't notice anything
<lloda>should I revert?
<wingo>lloda: i think you can keep the flag change in but just keep the shift to 17
<lloda>wingo: done
<wingo>clapping hands emoji
<lloda>heh
<pkill9>guile-bytestructures reports invalid target for aarch64-linux
<pkill9>`guix build --target=aarch64-linux guile-bytestructures` to reproduce
<pkill9>anyone have any ideas?
<civodul>pkill9: try --target=aarch64-linux-gnu :-)
<civodul>--target expects a triplet
<pkill9>nice that works, thanks
<pkill9>now i need to recompile everything i compiled to aarch64-linux
<pkill9>civodul: maybe there should be an error raised then if you dont provide a triplet?
<pkill9>i was successfully compiling to aarch64-linux a bunch of stuff
<lloda>3.0.8 soon?
<wingo>lloda: sgtm. i want to update match.upstream.scm in that
<vijaymarupudi>Are there some new features in the updated match?
<stis>(bytevector-u64-set! x i (lognot (bytevector-u64-ref x i e) e) is soooo slow
<stis>My C version of the loop is 100x faster
<ecraven>maybe those u64 values are boxed?
<stis>most probably yes!
<civodul>maybe they're bignums, too?
<stis>hmm lognot 0 = -1
<civodul>ah hmm
<civodul>but the thing returned by u64-ref could still be a bignum, no?
<stis>The compiler should now to store them unboxed though and keep them fixnum without tagging
<stis>also lognot 0 = -1
<stis>which means that it is quit complicated to use lognot in setminus with bitsets
<stis>you need to use (logand (2 64-1) (lognot x)) for that
<stis>And here ideally the compiler should know what to do
<stis>actuaööy even wothout lognot boced values are used
<stis>maybe I need to compile with higer OX
<stis>I will try
<stis>(load-compiled "a.scm.go")
<stis>does not work, my defined function is not visible why?
<stis>it loads the go file though
<stis>ok, It assumed a module
<stis>confusing name of that function
<stis>no, even with -O3 the u64 is not unboxed
<stis>Oh well I will make some insfrastructure to use C-based code
<stis>In hot loops
<stis>Anyhow, I got bitvectors on steroids working now, C based speed of many bitwise operations and still friendly to fibers
<stis>can use cow and sharing and resizing,
<cybersyn>heya guilers! I moved into a friend's house in july who's ip was on a spam blacklist, so its nice to be finally welcome back to IRC
<cybersyn>hope you all are well
<cybersyn>i'm wondering, is there a module for getting Chez-style repl indentation in the guile repl (in the shell, independently of emacs & geiser?)
<cybersyn>i'm coming from racket, but after falling in love with guix I've decided to go headfirst into Guile, and I absolutely love it. so I would really like to start operating guix from shell repls, but, while I know it may seem like a superficial complaint, not having the indentation makes it feel a little less smooth; when i'm working in bash, for instance, if i had to count parens, it would feel like a significant hamper on my workflow
<cybersyn>also, I've started to get interested in Andy Keep's Nanopass framework, and figured it could be a cool project to port it to guile. has anyone attempted this yet?
<dsmith-work>Happy Friday, Guilers!!
<cybersyn>happy friday!
<avp>Hello Guilers. It seeems that Guile-SSH will work better with the next libssh release: https://gitlab.com/libssh/libssh-mirror/-/commit/1ab2340644109442f933b1fb47dee927bed29f8e
<clacke>I think not tolerating cycles is a better way to cope with cycles than Python's "appears as if it were working, but then you sort the imports in a seemingly unrelated module and suddenly you have a missing symbol error"
<dsmith-work>clacke: cycles. Bad.
<clacke>indeed
<apteryx>Hello Guilers! I'm testing the waters; is a 3.0.8 planned for release soon?
<civodul>wingo: speaking of which, i'd like to talk about cross-module inlining
<civodul>whether to enable it at -O2, etc.
<civodul>i had tons of questions/comments when i read your blog post back then, but where did time go? :-)
<dsmith-work>civodul: Oh, everyone know that. It flies...
<muradm>hi, in (web client) i'm doing multiple (http-get uri #:port socket #:keep-alive? #t) with same socket. after like 10-20 http requests i'm getting eof-object at some point.
<muradm>do i do something wrong? or i have to just reopen socket ?
<muradm>something like is raised https://paste.rs/uiq
<muradm>here, this code https://paste.rs/H8O works like this: https://paste.rs/ino
<muradm>wandering if it is me or server or else
<stis>Hello guilers!
<drakonis>hi