IRC channel logs

2020-05-30.log

back to list of logs

***sputny1 is now known as sputny
<mwette>sneek: later tell rilez I use texinfo comments above defines, see https://paste.debian.net/1149728/. To generate the docstring I use my draft scheme-texidoc mode for emacs.
<sneek>Will do.
***sneek_ is now known as sneek
<manumanumanu>wingo: so that's what all the CSE patches were about! :D Fun times! does "making case compile as it should" involve that whole binary search/hash table dispatch that ikarus (or was it vicare?) does? Because I have a macro that turns into a humongous case, which was so slow I had to implement the binary search part myself :D
<manumanumanu>and while we are at it, one _could_ extend the equal? -> eqv? -> eq? optimization to case, especially in guile since so few things are eqv?-only...
<manumanumanu>is there any way to get the absolute path of something? Something like (abspath "../banana/boat/song.ogg") -> "/home/bjoli/banana/boat/song.ogg"
<RhodiumToad>do you also want to resolve symlinks?
<manumanumanu>nope
<manumanumanu>meh. i haven't really given it any thought. This is a small utility working in a directory where there won't be any symlinks except by accident
<RhodiumToad>hmm, question seems moot anyway, there seems to be no realpath binding in the posix module
<manumanumanu>I have been looking around a little in the manual, and I can't find it
<manumanumanu>I could get it by changing dir to whatever path there is, then (getcwd) and then returning back
<catonano>manumanumanu: there's a "absolute-file.name" in gule-haunt and it does what you were thinking
<catonano>manumanumanu: https://paste.debian.net/1149785/
<RhodiumToad>it would be better if the posix module had a realpath binding
<manumanumanu>catonano: the problem is that it would keep the relative parts o the path: (absolute-file-name "../hej.hå") -> (string-append (getcwd) "/" "../hej.hå"). Anyway, I'll just go with my version.
<rgherdt>manumanumanu: (canonicalize-path path)
<rgherdt>unfortunately it seems not to be in the manual
<manumanumanu>thanks!
<manumanumanu>it is even in the default environment
<rgherdt>yep
<rgherdt>manumanumanu: beware that canonicalize-path returns an error if the path doesn't exist
<wingo>manumanumanu: regarding case, yes, i have been meaning to implement http://scheme2006.cs.uchicago.edu/07-clinger.pdf for a while, was waiting on match optimization first
<raingloom>sorry for the noob question, but how the hecc do i load a declarative module in Geiser? i can work with non-declarative ones just fine, but Guix's modules always error out because deps aren't imported.
<wingo>raingloom: that i don't know! it sounds like a good question tho :)
<wingo>i didn't know there were particular problems with declarative modules and geiser
<raingloom>wingo: well, maybe i'm missing something obvious. i'm pretty new to Geiser. What I tried is C-c C-a to load and enter the module, which doesn't actually load it, so i also imported it, but that still doesn't import its deps and its exports also don't become visible. and evaling the buffer just errors because of missing deps.
<wingo>that sounds unpleasant
<wingo>i break my guile too often to use geiser, sadly
<raingloom>nice :D
<wingo>probably that's a problem specific to me, i have fond memories of geiser otherwise
<raingloom>if (define-module) had one (or many) (use-modules) section within it, i could just eval that as a sexp, but since it uses a different syntax, i'd have to do some kind of transformation.
<raingloom>well, i guess i'll just suffer :D
<wingo>perhaps jao knows who can help here :)
<jao>i think geiser doesn't work with declarative modules. civodul was telling me the other day. aren't they a 3.x thing?
<wingo>i just don't know how they are different to geiser
<wingo>they are still modules, they still have variables, you can still module-ref into them
<wingo>but yeah, since 3.x
*wingo zzz