IRC channel logs

2024-05-13.log

back to list of logs

<daviid>lilyp: it occurs to me that on their - https://www.gtk.org/docs/language-bindings/ - page, we're still missing an entry for Guile, that would link to the G-Golf project page, checking both their v3 and v4 'boxes'
<lilyp>ah, that'd be the index or smth, haven't worked on that
<daviid>lilyp: as time allows, it'd be nice to ask/patch that page to ... thanks
<wakyct>hey if dthompson is in the house, I was looking at the Guile Hoot template on itch and wondering if you use that with a repl running? Or more typically edit -> compile -> run?
<wakyct>or to rephrase is it set up for live reloading
<lilyp>p sure it can do live reload
<abcdw>why `(tree-il->scheme (macroexpand `(define* (hello #:key (a 12)) 'yo)))` expands to (define* (hello #:key (a 12 #:a)) (quote yo)) and not (define something) ?
<dthompson>wakyct: we're not there yet re: live hacking with hoot. for now you recompile and reload the page.
<dthompson>I think the path is roughly: get the syntax expander working, get an interpreter, get a repl server, get the compiler. will be awhile yet.
<old>Is there a good resource to learn CPS and its usage for compilation?
<flatwhatson>old: https://mumble.net/~kelsey/kelsey-diss-2012.pdf
<flatwhatson>also the "Compiling with Continuations" book by Andrew Appel
<old>flatwhatson: thanks. Any resource for using Guile CPS soup to generate custom bytecodes, like hoot target WASM ?
<old>I guess I could go read the hoot source code for that
<flatwhatson>kelsey's dissertation is about lowering to machine code, WASM isn't so different, but yeah i'm sure reading hoot would be worth doing
<dthompson>as someone that works on hoot, I still don't grok all the cps stuff going on it. :)
<dthompson>I understand at a high level and I am better at reading cps than ever before, but it's challenging stuff
<dthompson>reading through the dumped cps output of small programs can be helpful
<old>dthompson: sounds like a nice subject for a blog post :-)
<old>I'll have a peek at Hoot for unmangling that CPS soup then
<dthompson>some of the shorter optimization passes in guile itself might be good, too
<dthompson>I wish there were better materials for learning guile cps though
<dthompson>I'm not really the one to be teaching it
<dthompson>I just poke and prod
<old>wingo: then :-)
<ano>what's the canonical way to define multi vars in one exp, (define-values (VAR1 VAR2 ...) (values VAL1 VAL2 ...)) ?
<shawnw>That's how I'd do it.
<mwette>re guile cps: I worked on this a bit ago. Simple example in https://git.savannah.nongnu.org/cgit/nyacc.git/tree/examples/nyacc/lang/calc/compiler.scm
<mwette>I used this a lot, IIRC: https://paste.debian.net/1316826/
<dthompson>that's cool mwette!
<mwette>ty
<old>mwette: thx. I'm starting to have too many tabs to read ^^