IRC channel logs

2016-09-04.log

back to list of logs

<paroneayea>ACTION struggles to come up with a good subcommand name
<paroneayea>pubstrate-web bootstrap /path/to/new-dir
<paroneayea>I guess bootstrap isn't so bad
<paroneayea>just sounds too much like a theming library :)
<paroneayea>"init" maybe, but it's just writing out example configs and etc
<xd1le>is there something similar to `case` but it uses `equal?` instead of `eqv?`? Basically I want to control flow based on string values of a key.
<evhan>xd1le: `match` does strings. https://www.gnu.org/software/guile/manual/html_node/Pattern-Matching.html
<evhan>(case x (("foo" "bar") 1)) ≈ (match x ((or "foo" "bar") 1))
<xd1le>evhan: Thanks so much! :) Sorry for the stupid question, couldn't find anything after searching for a bit.
<amz3`>héllo :)
<amz3`>so the plan today is to port boolean keyword search to grf3 which a new implementation of a graphdb library
<amz3`>and add some tests to at least the graphdb library
<amz3`>and maybe help fix the leak bug
<tohoyn_>hello
<tohoyn_>does anybody know about CPS?
<tohoyn_>I have a problem with compiling to CPS
<amz3`>no?
<random-nick>he quit
<janneke>random-nick: s/he/they/
<wilfredh>hi folks
<wilfredh>so, I've been learning about exploring functionality with guile, making heavy use of ,d and ,a
<wilfredh>is there a similar command for viewing the source of a function/macro? My google-fu has failed me
<wingo>hi wilfredh
<wingo>there is no nice ,foo for that
<wingo>but if you use emacs and geiser
<wingo>then M-. does that i think
<wingo>there are some library procedures that can be used to build such a thing, but it doesn't exist right now in the repl in a nice way i don't think
<wilfredh>hm, OK. Would you be open to a patch?
<wingo>i think so, yes :)
<wilfredh>OK, I might tinker :)
<wingo>great :)
<wingo>if you have doubts, probably a good idea to mail guile-devel with an idea of how it should work from the user's POV, and how you see it working internally
<wingo>could be that you can find the right way to do it without that step tho; depends on how you like to work
<wilfredh>relatedly, I've noticed that some guile functions have good comments, but no docstring
<wilfredh>for example, provided? and and-map
<wilfredh>even though the comments are in the standard docstring formatting, with ARGUMENTS-IN-CAPS
<wilfredh>is it worth me writing a patch to convert these to docstring?
<wilfredh>and if so, should I send the patch to guile-devel or debbugs?
<paroneayea>I don't suppose there's any nice way to write comments in any sane way to a configuration file I'm writing / pretty-printing for users
<paroneayea>I guess there wouldn't
<paroneayea>maybe comment blocks
<paroneayea>ha
<paroneayea>oh man
<paroneayea>tried making a <komment> record type and using a custom printer
<paroneayea>(pretty-print) did not like that :)
<paroneayea>oh no wait
<paroneayea>it's fine
<paroneayea>I forgot to display to the port in the printer, oops :)
<wingo>sneek: later tell wilfredh such patches are welcome :) i think we should use texinfo as the format; there is a facility to turn texinfo in docstrings to ARGUMENTS-IN-CAPS etc
<sneek>Will do.
<wingo>sneek: later tell wilfredh but we haven't enabled it yet
<sneek>Okay.
<amz3`>why zip returns a list of lists instead of list of pairs?
<amz3`>does it make sens to replace (zip a b) with (map cons a b)
<paroneayea>amz3`: I think because zip can take more than 2 lists
<paroneayea>scheme@(guile-user)> (zip '(a b c d e f g) '(z x y w) '(1 2 3 4))
<paroneayea>$4 = ((a z 1) (b x 2) (c y 3) (d w 4))
<amz3`>hmm right
<wingo> https://docs.racket-lang.org/math/array_nonstrict.html <- interesting
<wingo>lloda: you might like that
<amz3`>I just benchmark srfi-41 against custom made streams, my implementation does the thing is 7s while the srfi-41 does it in 43
<amz3`> http://hastebin.com/qisirulaye.scheme
<amz3`>my implementation is almost 7x faster
<amz3`>huhu
<wingo>:)
<paroneayea>davexunit: for your entertainment http://pyyaml.org/wiki/BugsInTheYAMLSpecification
<quigonjinn>amz3`: what version of guile are you using?
<amz3`>quigonjinn: 2.1.3
<amz3`>with core i7
<amz3`>quigonjinn: why?
<quigonjinn>amz3`: i just run the same benchmark and it took 227s with srfi-41 and 13 with your code. But i'm using guile 2.0.12
<amz3`>quigonjinn: 2.1.3 is faster
<quigonjinn>amz3`: guessed so. My cpu is competent and it seems a great difference
<amz3`>that's why I'm using 2.1.3 in the first place
<quigonjinn>i should try it out
<paroneayea>I'm overthinking all the things today.
<wingo> https://github.com/wingo/fibers/blob/master/fibers.texi
<paroneayea>wingo: ooooh
<wingo>channels not implemented yet :P
<wingo>i want to implement some kind of atomic-op facility in guile to be able to do that
<paroneayea>wingo: it's possible I'll rewrite 8sync on top of fibers, as in, drop most of 8sync's scheduling stuff, and instead focusing on "useful networking subsystems"
<paroneayea>eg the actor model, etc
<paroneayea>I'm still thinking about it and need to play with fibers more
<amz3`>cool!
<paroneayea>too bad I'm so caught up in Pubstrate! TPAC is in two weeks and everything needs to work by then omigod aaaaaa
<wingo>neat
<wingo>yeah
<wingo>i have three talks in the next two weeks, things are nuts these days
<wingo>lovely holiday in august but what a back-to-hack!
<paroneayea>cwebber@oolong:~/devel/pubstrate$ ./pre-inst-env pubstrate-web configure /tmp/pubstrate-test/config.scm
<paroneayea>A file already exists at this filename. Please remove it!
<paroneayea>debating if I should do that
<paroneayea>or just clobber it and tell the user
<paroneayea>unimportant thing, but my brain is kind of anxiety'ing about all the things :)
<amz3`>take nap?
<paroneayea>nap might be a good idea
<paroneayea>the config file writing works nicely though
<paroneayea>at least that's good!