IRC channel logs

2024-05-03.log

back to list of logs

<rlb>I think I'd be inclined to either special-case the compilation messages, or start inventing log tags/levels/something. i.e. whether or not you want to see the messages might be orthogonal to where you want them to go? Also, unless we're going to secretly detect /dev/null somehow, that approach is more expensive, since you have to generate the messages unconditionally?
<rlb>And might we eventually have --debug /dev/null --fatal /dev/null --info /dev/null --warn /dev/null ...?
<rlb>I also would favor the default eventually being *off* for those -- other languages don't report them (well I guess elisp compilation started to, but now has a way to turn them off), but python/ruby/clojure/... don't.
<rlb>But we could do that on an X release if we wanted to be *really* cautious.
<rlb>If we don't have the resources to settle some broader plan. Could still just start with an envt var or something.
<rlb>too
<rlb>Oh, and note that although it might sound like it, I'm *not* suggesting adding some "typical" logging-like system to guile right now and/or using it for normal guile messages -- just using that as a potentially "somewhat comparable domain".
<FlaminWalrus>Is it intended GOOPS behavior to need to use define-generic for certain primitives? E.g. (define-method (1+ (x <my-class>)) ...) apparently isn't doing it automatically for me (version 3.0.9-1.1).
<FlaminWalrus>s/primitives/Scheme built-ins/
<FlaminWalrus>Also, this example seems inconsistent with how I understand the class precedence rules from the manual: if I (define-method (sqrt (x <integer>)) (exact-integer-sqrt x)), then (sqrt 2) gives me a real. Isn't <integer> more specific than <real>, being a subclass? Stranger still, if I try to define a sqrt method of <real> to be something else, it doesn't change the behavior. Is there a description of these internals anywhere, or even of
<FlaminWalrus>the default classes corresponding to Scheme types, beyond source code?
<FlaminWalrus>The only work-around I've found is doing (define sqrt '()) (define-generic sqrt) ..., which is hardly ideal.
<dariqq>hi, is there a nice way to destructure an association list?
<lloda>(match alist (((k . val) ...) ...)) or maybe (map (match-lambda ((k . val) ...)) alist) ?
<dariqq>thanks :)
<lloda>yw
<mwette>any idea what this means? In procedure primitive-call-ip: Wrong type argument in position 1 (expecting PRIMITIVE_P): #<procedure 75fd4fe661e0 (_ _)>
<mwette>the procedure was generated with pointer->procedure
<graywolf>Would anyone know how I can get both stdout and stderr from guile-ssh? I created open-remote-pipe*, but the stderr is just discarded. I have noticed channel-set-stream!, but that allows be to switch to stderr, not process both (if I understand right).
<graywolf>Any ideas?
<ArneBab>mwette: did you already post your found-again patch to guile-devel?
<old>mwette: in what context? You have a snippet?
<mwette>ArneBab: I thought I had posted patch ref but looks like I did not. I will follow up.
<mwette>old: When I reduce to isolated code it works. So, need to track down. Here is the isolated code: https://paste.debian.net/1315972/
<mwette>I'm creating a gui program all in scheme, using gtk2+ and creating my own Packer container derived from GtkContainer.
<mwette>using ffi to access gtk+ etc