IRC channel logs

2021-07-18.log

back to list of logs

<stis>Hey guilers!
<manumanumanu>hej stis
<manumanumanu>whats going down in game of thrones-land?
<stis>Hidiing from the heat of the mighty dragon helios, albeit his a bit shy today
<manumanumanu>what are you working on?
<manumanumanu>any news on PoG?
<stis>It's vacation time and i'm mostly relaxing now, not much accomplished
<stis>and you?
<manumanumanu>goof loop is pretty much feauter complete. Now I need to write documentation, so I ended up writing markup not unlike scribble for racket. Not as fancy as skribilo, but also a lot easier to get started with.
<manumanumanu>it is a lot more powerful than my old port of (a large subset of) racket's for-loops, and it is now written mostly in syntax-rules. I do believe that it also produces slightly better code, as well as being more general than racket's for loops.
<manumanumanu>I need to back-port all improvements made I made when I submitted srfi-171 for inclusion in guile to the reference implementation as well, but that is pretty boring :)
<manumanumanu>The reference implementation of tsegment of tpartition should be correct, but the guile versions definitely are.
<manumanumanu>I want to make a version with british spelling as well, and submit it as errata. I have mistyped tdelete-neighbor-duplicates the 4 times I have tried to use it :)
***apteryx_ is now known as atperyx
***atperyx is now known as apteryx
<stis>manumanumanu:: great hacking!!
<manumanumanu>stis: https://git.sr.ht/~bjoli/goof-loop/ the doc is out of sync with master though...
<manumanumanu>I talked to alex about his future loops, and they do seem like something between olin's "anatomy of a loop"-loops, and chibi loop. Seems like pretty amazing stuff...
<manumanumanu>If I ever go any deeper in this looping hole, it will be a proper compiler in syntax-case.
<manumanumanu>and letrec*+lambdas (ie: gotos with argument passing).
<stis>manumanumanu: k
***modula is now known as defaultxr
<dekenevs>is there a way to have optional patterns with (ice-9 match)
<manumanumanu>dekenevs: how do you mean?
<dekenevs>something like (match ((x #:optional a) ... ) )
***dekenevs is now known as kitzman
<manumanumanu>kitzman: I don't think so.
<manumanumanu>((x . a) and then check a for whatever you need.
<kitzman>thank you
<manumanumanu>if you want it to be a proper list (because the above matches (cons 1 2)), you should use (x a ...). a will in that case always be a list (null, or any amount of arguments).
<RhodiumToad>if you do (x a b . r) first and error out if it matches, then a following (x a ...) will have a be either empty or a list of one element