IRC channel logs

2021-06-13.log

back to list of logs

<dsmith>lampilelo: That's about the most concise explanation I've seen.
<dsmith>It not a hard concept, but sometimes hard to explain
<dsmith>sneek: modules?
<dsmith>sneek: remember modules is (use-modules (foo bar baz)) means to search for the baz in the file foo/bar/baz.scm, relative to any dir in the path.
<sneek>So noted.
<dsmith>sneek: modules?
<dsmith>sneek: what is modules?
<dsmith>sneek: modules is (use-modules (foo bar baz)) means to search for the baz in the file foo/bar/baz.scm, relative to any dir in the path.
<sneek>Okay.
<dsmith>sneek: what is modules?
<sneek>Someone once said modules is (use-modules (foo bar baz)) means to search for the baz in the file foo/bar/baz.scm, relative to any dir in the path.
<dsmith>sneek: forget rememeber modules
<sneek>Okay.
<dsmith>sneek: forget modules
<sneek>Okay.
<dsmith>sneek: modules is (use-modules (foo bar baz)) means to search for the module baz in the file foo/bar/baz.scm, relative to any dir in the load path.
<sneek>I'll keep that in mind.
<dsmith>sneek: modules?
<sneek>Someone once said modules is (use-modules (foo bar baz)) means to search for the module baz in the file foo/bar/baz.scm, relative to any dir in the load path.
***terpri is now known as robin
<daviid>dsmith: great! i would say '... search for the module defined as (define-module (foo bar baz) ...) in the file ...'
<daviid>dsmith because 'beginners' often think (define-module (baz) ...), (use-modules (foo bar baz)) or (define-module (foo bar baz) ...), (use-modules (baz)) ... will 'also' work ...
<daviid>leoprikler: when time permets, could you kindly update the gtk gitlab g-golf 'page' to mention that g-golf also works with guile 3.0 (>= 3.0.7), thanks!
<daviid>*permits
<daviid>and Gtk-4.0 if 'possible'
***xeno__ is now known as xeno
<emestee>there's no guile on Windows, correct?
<leoprikler>Guile 2.2 has a MinGW and Cygwin port IIRC, dunno about Guile 3.0 but it's at least WIP
<leoprikler>daviid: https://gitlab.gnome.org/leoprikler/gtk-web/-/jobs/1344379 currently building, let me know if there's an issue
<leoprikler>gtg now
<dsmith>sneek: forget modules
<sneek>Consider it forgotten.
<dsmith>sneek: modules is (use-modules (foo bar baz)) means to search for the module defined as (define module (foo bar baz)) in the file "foo/bar/baz.scm", relative to any dir in the load path.
<sneek>I'll keep that in mind.
<flatwhatson>sneek: it should be define-module
<flatwhatson>sneek: botsnack
<sneek>:)
<dsmith>Bah!
<dsmith>sneek: forget modules
<sneek>Okay.
<dsmith>sneek: modules is (use-modules (foo bar baz)) means to search for the module defined as (define-module (foo bar baz)) in the file "foo/bar/baz.scm", relative to any dir in the load path.
<sneek>Okay.
<dsmith>flatwhatson: Thanks
<dsmith>daviid: Thanks too!
<chrislck>sneek: botsnack
<sneek>:)
<lampilelo>it's kinda amusing
***apteryx_ is now known as apteryx
<kitzman>so another beginner question - (sxml match) - is there an (undocumented) way of matching elements, but not ordered? it seems so obvious that the matching should not care about ordering...
<kitzman>i guess sxml fold... but still, it's a bit unexpected
<manumanumanu>kitzman: what do you want to do?
<manumanumanu>pre-post-order is my swiss-army-bazooka of choice for most things
<kitzman>i'm trying to process an atom feed. the tags are not in the same order for every feed
<manumanumanu>oh, sxpath maybe?
<kitzman>apparently foldt checks if it's an atom. i was trying to write my own fold function, which instead of (atom? ...) would have a match
<kitzman>that would work indeed
<manumanumanu>kitzman: https://docs.racket-lang.org/sxml/sxpath.html is probably the best documentation
<manumanumanu>and is not racket specific
<kitzman>seems to work for now, thank you. panicked a bit
<manumanumanu>np.
<manumanumanu>glad to help!
<manumanumanu>ArneBab: just FYI, I am making (syntax define) compatible with 3.0 and expanding it to be complete with when and unless. I did some restructuring to allow making shims for srfi-71, 11, 8 and (ice-9 match).
<manumanumanu>In guile3, you get definitions in _all_ expression contexts with no penalties. in guile2 you get definitions in expression context that is as slow as letrec :)
<manumanumanu>rlb: the above might be useful for lokke. I am pushing it later tonight
<manumanumanu>to the repo at https://hg.sr.ht/~bjoli/guile-define
<rlb>manumanumanu: interesting - thanks.
<ArneBab>manumanumanu: very cool!
<kitzman>hm, what is the general consensul on GOOPS vs srfi-9 records? i would go with the latter because it's schemish
<kitzman>sensus*
<kitzman>i guess one would only need goops when needing inheritance
<manumanumanu>I would go with goops when I need generic methods
<leoprikler>Who needs records, when you can have closures? :P
<leoprikler>Just pick whichever abstraction suits your needs and feels helpful :)
<manumanumanu>otherwise I would go with r6rs records if I need inheritance. I usually go for srfi-9.
<kitzman>nice, i'll do records because i don't need anything specific for now
<manumanumanu>r6rs records also supports the nongenerative clause which is pretty nice to use when you are doing repl thingies and have data defined in the repl.
<kitzman>writing yet another rss news aggregator/processor (i.e: one can configure it - you want a desktop notification? you want mails a-la mailing list? you want mails to go to your own nntp server?)
<manumanumanu>But I might just be doing things in a bad style :)
<kitzman>seems like a handy feature
<kitzman>a bit of an uneducated question - does the dynamic wind "out" execute even if errors happen?
<leoprikler>you mean stuff like scm_dynwind_free?
<manumanumanu>in case of (error "..."): no
<avp>FWIW, I managed to write my first Guix package -- for Guile-SMC: https://github.com/artyom-poptsov/guile-smc/blob/master/guix.scm
***unCork is now known as Cork
<daviid>leoprikler: ok tx!
***dongcarl6 is now known as dongcarl
***KindOne_ is now known as KindOne
***kir0ul2 is now known as kir0ul
***berndj-blackout is now known as berndj
***unCork is now known as Cork
***sneek_ is now known as sneek