IRC channel logs

2019-11-06.log

back to list of logs

***pc is now known as Guest91288
<amz3>o/
<spk121>New guile-ncurses 3.0 release, now using foreign objects instead of SMOBs has been uploaded to GNU.
<civodul>spk121: yay!
<civodul>how much work was it to switch to foreign objects?
<spk121>civodul: the switch was easy because I'd already hidden the SMOB internals by a layer of abstraction. But I lost many cool features in the switch.
<spk121>I lost my custom type printer, so things like <window 80x25> now are just print as <window #x123412341>
<spk121>And I lost custom equality predicates, so I can't make equal? mean <window>s that have the same underlying C pointer.
<spk121>But, the code is shorter, so that's a win.
<RhodiumToad>can't foreign objects have an equality method?
<wingo>i think so, yes; (define-method (equal? (a <your-obj>) (b <your-obj>)))
<wingo>only works between objects of that type tho afaiu
<wingo>er, iirc :)
***jao is now known as Guest68393
<amz3>does ice-9 futures work with a guile-fibers?
<wingo>probably not
<amz3>even if guile fibers is running in a single thread?
<wingo>joining a future would block fibers
<amz3>ty
<dsmith-work>Hey Hi Howdy, Guilers
<RhodiumToad>hmm. curiouser and curioser. looks like my armv7 build of guile has more general issues with (do ...)
<RhodiumToad>it looks like it's somehow getting the bindings screwed up
<amz3>I am trying to create a threadpool for calling blocking operations inside a single thread fibers scheduler. It seems to me run-fibers #:drain #t does not work as expected.
<amz3>I am using guile 2.2.4
<amz3>here is a program where you can comment the line 41 to show the curious behavior https://paste.gnome.org/p36aeujb3#line-41
<amz3>in the above snippet `fib` is the mocking the blocking behavior.
<RhodiumToad>hm. maybe it's not the fault of (do ...)
<amz3>s/the//
<amz3>it seems like the (get-message return) where turn is the channel that is used to return the value of the blocking operation, is not taken into account.
<amz3> https://github.com/wingo/fibers/blob/master/fibers/operations.scm#L148
<amz3>it seems to me the block-fn procedures will block the fiber or thread
<amz3> https://github.com/wingo/fibers/blob/master/fibers/channels.scm#L104
***hugh is now known as Guest66414
<amz3>very funny :)
<dsmith-work>amz3: ?
<amz3>dsmith-work: working on a small bug in guile-fibers