IRC channel logs

2024-03-26.log

back to list of logs

<chrislck>sneek: botsnack
<sneek>:)
<daviid>apteryx: just pushed the <log-handler> flush-on-emit? slot, getter and init-kw rename ...
<daviid>wingo: when running make distcheck on guile-lib, in an isolated environment [and after clearing the .cache/guile/ccache dir], it fails, due to texinfo module(s) ... that are in guile-lib, but outdated compared to those in guile ... one possible fix is to copy all texinfo.scm and texinfo/*.scm modules from a fresh guile main clone, which fixes the problem - the question is: do you have any objection if i push such a patch in guile-lib? i
<daviid>mean to ask, do you think it could create other problems for those still running 2.0 (and/or 2.2), or is it ok that we do not 'care anymore' about those configuration ... not familiar with such a situation in my not so short career, so i ask ... tx
<sneek>Yey! chrislck is back :D
<apteryx>daviid: is there a need to copy them, instead of just using them from guile?
<apteryx>(the texinfo modules, gone stale?)
<sneek>Welcome back dsmith!!
<glenneth>hi o/
<dsmith>sneek, botsnack
<sneek>:)
<freakingpenguin>Is there an existing function that takes '((a b)) '((c d)) and gives '((a b c d))? Best I have is (list (append (car foo) (car bar))) which feels kinda ugly.
<ieure>freakingpenguin, https://www.gnu.org/software/guile/manual/html_node/SRFI_002d171-Transducers.html#index-tflatten maybe?
<ieure>There are a handful of flattening functions in Guile, I haven't used any of them though.
<ieure>Oh, hmm, you want to flatten only the inner lists though.
<chrislck>"if it works, it works"
<freakingpenguin>(list (fold-right append '() foo bar)) works too which is slightly better I guess. ieure: I think I can make that work since I can guarantee a and b aren't lists themselves.
<freakingpenguin>I'm surprised there's a transducer flatten but not a normal flatten
<ieure>freakingpenguin, There are a couple non-transducer flattening functions, but nothing as straightforward as (flatten some-list-of-lists) as I've seen in some other Lisps.
<chrislck> https://github.com/Gnucash/gnucash/blob/2c25d0bbc056e52801fe2b9fcd2ecbdcc3578f37/bindings/guile/utilities.scm#L148 steal away
<chrislck>it was a gift from manu**3
<freakingpenguin>Thanks! That's a really nicely commented file chrislck!
<chrislck>you're welcome!
<freakingpenguin>ieure: Thanks as well!
<rekado>is there a way to get location information from an arbitrary exception?
<rekado>I'm using SRFI-34+35 for guard and conditions, and I haven't found a way to derive source location information from conditions/exceptions that are raised by type errors or syntax errors.
<rekado>a specific example is this: (#<&compound-exception components: (#<&assertion-failure> #<&origin origin: "struct-vtable"> #<&message message: "Wrong type argument in position 1 (expecting struct): ~S"> #<&irritants irritants: ("/tmp/meow/4046")> #<&exception-with-kind-and-args kind: wrong-type-arg args: ("struct-vtable" "Wrong type argument in position 1 (expecting struct): ~S" ("/tmp/meow/4046") ("/tmp/meow/4046"))>)> #t "struct-vtable"
<rekado>() ())
<rekado>this exception mentions irritants and an origin, but no source location. Neither origin nor irritants have source properties.
<jgomo3>Hello! Can somebody point me to some instructios on how to run Emacs Lisp and/or Ecmascript code using Guile?