IRC channel logs

2015-12-07.log

back to list of logs

<paroneayea>that's interesting.
<paroneayea>ACTION runs into: ERROR: Throw to key `vm-error' with args `(vm-run "Unrewindable partial continuation" (#<vm-continuation 5a50460>))'.
<paroneayea>my first unrewindable continuation! ;)
<paroneayea>I'm guessing it was because I used either call-with-values or because I used dynamic-wind, but which one caused it I'm not sure.
<paroneayea>ah yeah
<paroneayea>it was the dynamic-wind
<paroneayea>can't use dynamic-wind and delimited continuations, it seems!
<marusich>I'm having trouble understanding why this evaluates to #f (in Guile): (eq? '(a b c) (list 'a 'b 'c)). My REPL prints out identical results when I evaluate '(a b c) and (list 'a 'b 'c). In both cases, it prints: (a b c). I don't understand this behavior; what am I missing?
<davexunit>marusich: eq? tests if 2 objects are actually the same reference
<davexunit>which these are not
<davexunit>they are two separate lists
<davexunit>in other words, they are equal?, but not eq?
<marusich>Yeah, I just read that in the manual :|
<marusich>My mistake
<marusich>thanks
<davexunit>np
<paroneayea>ACTION trying to make sense of https://lists.gnu.org/archive/html/guile-user/2011-02/msg00031.html
<davexunit>paroneayea: that's where sly got it's coroutine implementation from :)
<daviid>I confirm that guile-gnome make check pass when built using gcc 5.2, -fno-strict-aliasing is not required
<daviid>I'll do the git house keeping and release tomorrow or the next day though, I'm too tired now
<paroneayea>davexunit: :)
<daviid>and guile-clutter grip-clutter work like a charm when the all chain was compiled against gcc 5.2 as well, great!
<civodul>Hello Guilers!
<madsy>Morning :)
<taylan>ACTION wants a 'displayln'
<lloda>I use (define (format! s . args) (apply format #t (string-append s "\\n~!") args))
<civodul>lloda: i usually make such procedures a macro so that -Wformat works
<lloda>ah, so that's why it gives me bogus warnings
<civodul>about the non-literal string, i guess
<lloda>I get warnings about argument count, actually
<amz3>what is -Wformat?
<amz3>hmm warning about the format I guess
<taylan>amz3: about possible misuse of the 'format' procedure
<amz3>taylan: do you know which procedure like read/write that doesn't block?
<amz3>it's recv! ?
<taylan>I don't know
<amz3>thx :)
<taylan>doesn't (info "(guile) Input and Output") have something?
<amz3>char-ready? seems to be the procedure I'm looking for... I'll try again
<lloda>how do I fix this:
<lloda>make[2]: Entering directory `/home/danielo/sys/guile-git/obj4/bootstrap'
<lloda> BOOTSTRAP GUILEC ice-9/eval.go
<lloda>Warning: Unwind-only `stack-overflow' exception; skipping pre-unwind handler.
<lloda>
<lloda>building master ---it's strange b/c it worked with gcc 5.2, but I tried compiling with gcc 5.3 and I got this, then I switched back to 5.2 and I got the same error again :-/
<amz3>I can't find bv-take, bv-drop, or bv-append in the procedure-index, what I am doing wrong?
<amz3>bv == bytevector
<taylan>they're probably missing
<davexunit>one doesn't typically work with bytevectors in that way
<davexunit>they are trivial to implement using bytevector-copy!, though
<amz3>what do you mean?
<amz3>yes... I can implement them but what's the correct way to work with bv without them then?
<davexunit>I work with bytevectors a lot, and I've never wanted those.
<amz3>network code?
<davexunit>reading binary data from a port, matrices, etc.
<amz3>because I waiting for message with delimiter, if there is no delimiter i append the bytevector, otherwise I split the bytevector
<amz3>I'm using the fast path u8-list->bytevector and bytevector->u8-list :o)
<amz3>I should use bv-copy! though
<davexunit>are bytevectors appropriate for this?
<amz3>I'm wondering myself
<amz3>the problem is that I need to call utf8->string at some point
<davexunit>so you're reading strings?
<davexunit>from a port?
<davexunit>if so, it doesn't seem like you want to be using bytevectors
<amz3>correct
<davexunit>you'll want read-char and friends
<davexunit>(ice-9 rdelim) has some useful things, too
<amz3>I'm writing a non-blocking read and write
<amz3>I know it's a toy, but it will be helpful for me
<amz3>davexunit: I'm trying something else, instead of read-char, I use read and catch the error
<amz3>hopefully the port remains at the beginning of the failling string
<amz3>the read/ procedure is so ugly
<dsmith-work>Morning Greetings, Guilers
<artyom-poptsov>Evening greetings, dsmith-work
<paroneayea>looks like I can't use guile's dynamic-wind with 8sync because it will result in an unrewindable continuation
<paroneayea>*but*
<paroneayea>slib contains a pure scheme dynamic-wind
<paroneayea>I can probably use that?
<paroneayea>oh
<paroneayea>it doesn't deal with errors or interrupts ;p
<paroneayea>well that's kind of important in my case
<davexunit>I'd be interested in what wingo or mark_weaver or civodul have to say on the subject
<paroneayea>davexunit: yeah I wanted to use dynamic-wind to close ports even in case of error when leaving the web handler
<paroneayea>right now I have code wrapped by a catch-all that runs at the end of the function, or if caught, runs inside the catch and then re-raises the exception
<paroneayea>not really ideal
<paroneayea> http://groups.csail.mit.edu/mac/ftpdir/scheme-mail/HTML/rrrs-1992/msg00192.html hum, these are some pretty bold proposals for ideas to be included in r5rs, most of which didn't happen
<daviid>hello guilers!
<amz3>hélo daviid :)
<mark_weaver>paroneayea: we could probably reimplement dynamic-wind in pure scheme, but forget about using slib for this. we'll have to make it for guile specifically
<mark_weaver>e.g. it will have to integrate with the C implementation of dynamic-wind
<mark_weaver>(which is also needed)
<mark_weaver>alas, I don't have time to explore this further right now
<mark_weaver>more generally, we would like to reduce the amount of C code we use in Guile, for many reasons. the most important parts to rewrite in scheme are the procedures that call back into Scheme, so that their activation frames end up in the middle of the stack.
<daviid>wingo: is this commit message ok? http://paste.lisp.org/+3K2R
<daviid>wingo: I mean this, [the was a tipo] http://paste.lisp.org/+3K2R/1
<paroneayea>mark_weaver: that'd be cool
<daviid>for info, Guile-Gnome 2.16.4 released
<civodul>congrats, daviid!
<civodul>good news
<daviid>thank you civodul!
<paroneayea>hm
<paroneayea>ssuming you already have some rendered (x)html
<paroneayea>is it really possible at all to dump it into an sxml document as-is without being escaped?
<paroneayea>or would it need to be parsed into sexps first