***cky944 is now known as cky
<rain1>does guile have a library for making file system paths? <rain1>right now I just do: (string-append path file-name-separator-string file-name) <rain1>but if path ends in a / you get two folder//file.txt and it's annoying <Jookia>In a let statement, are the values bound to variable names evaluated multiple times or just once? <taylan>Jookia: FYI (let ((x y) (z t)) ...) = ((lambda (x z) ...) y t) <lloda`>can I get the path of the current file somehow? <janneke>lloda`: try (current-source-location) <janneke>lloda`: ah, there's also (current-filename) :-) <lloda`>yeah I should have tried ,a current ;p <paroneayea>wingo: I'm going to the emacs meetup thing with John Wiegley tonight, bringing a copy of guile-emacs with me <janneke>paroneayea: sounds great ... /me missed `the emacs meetup thing' <lloda`>would like something like diff --show-c-function (or what they have in git diff) for Scheme <alezost>can anyone tell me how is a named match-let supposed to work? <alezost>I understand a usual match-let: (match-let (((first rest ...) '(1 2 3))) (cons 0 rest)) => (0 2 3) <alezost>But I don't understand how to use a named match-let: (match-let loop (??) ??) <stis_>why dosn't someone make a parser framework ontop of minikanren? <stis_>alezost: named let signature is (_ loop ((pat expr var) ...) () . body) <alezost>stis_: thanks, I looked at the source, but could you give any example; I always got "source expression failed to match any pattern" <alezost>actually I think there is a bug in the source code of match-let, but I'm not competent enough to be absolutely sure <stis_>((@@ (ice-9 match) match-named-let) lp (((x . l) '(1 2 3) p)) () (pk x) (if (pair? l) (lp l))) <stis_>another possibility is ((@@ (ice-9 match) match-named-let) lp () (((x . l) '(1 2 3))) (pk x) (if (pair? l) (lp l))) <stis_>note the need to have an empty () not so beutiful <stis_>I would add another macro that get's rid of that one <stis_>then it would probably do what you expect <alezost>stis_: this is not fair!! I asked about "match-let"; "match-named-let" is not exported! <alezost>ACTION is very close to be sure that "match-let" form is bugged <stis_>yes an empty paranthesis is missing in the application of the named let. <stis_>I will poke foof to fix the bug upstream <nalaginrut>ACTION got lua function works all fine, and `print' primitive accepts argument as multi-var returned function <nalaginrut>wingo: btw, few years ago I've reported the inefficient problem of `format', although ludo had a patch to increase 30% performance, you have a better solution to make it better. But we ignored it at that time. And I feel we do need faster `format' to handle strings in some projects, especially Artanis ;-) <wingo>i probably suggested compiler integration ? <wingo>what kind of approach are you interested in? :) <nalaginrut>wingo: I'm not familiar with the implementation of `format', but once you've described a method to wrap all the string parsing context into a closure to save time, dunno, I don't remember the exact detail, something similar I think ;-P <nalaginrut>anyway, I think it's worth to make format faster and faster if we want to use it for web programming <wingo>using it for web programming is not a goal of mine, i think. but if it's a goal of yours that's cool :) <daviid>folks, please allow a [guile scheme] project autotool related problem quiz here, I'd like to see if 1 of you can help... <daviid>I have a problem running make distcheck, which raises an bug saying: texi2dvi: etex exited with bad status, quitting.\\n Makefile:389: recipe for target 'foliot.dvi' failed <daviid> in the doc folder of the project, I can run texi2dvi foliot.texi and it does not raises a bug: how can I debug this problem? <daviid>I'll have to leave in a few min, then I'll get back later... if anyone has an idea/answer, ping me, thanks!