<str1ngs>hello daviid, I'm just in the process of updating an improving nomad's guix declaration. I'm updating g-golf at the same time to 84e894eb7945c3bcdf7f8d5135c1be3efa524c92. Is that commit okay with you regards to guix. ***catonano_ is now known as catonano
<dsmith>daviid: Hey hey. Well, I had another iteration on that re-export macro. <dsmith>daviid: Now does some error messages for no modules and non-list-like module names. <dsmith>daviid: Pretty sure I'm done now. <lisbeths>I am looking to informally discuss a bit about the guild project and learn more about it. Is it true that guile is now the official extension language of the gnu project? <jackhill>That said, I don't know more about what an official extension language means to GNU. Guile is available in lots of places, but may not be universal. ***wxie1 is now known as wxie
***ftknox_ is now known as ftknox
***ftknox_ is now known as ftknox
<lloda>is there a way to actively check for C-c ? <mwette>lloda: In C, one can set up a signal handler for SIGINT and run the repl with setjmp (or maybe setcontext these days). The sigint handler will longjump to the start of the repl. I'm not sure how Guile deals with this. <RhodiumToad>longjmping out of a signal handler is a dangerous practice; if you jump out of a non-signal-safe function, any subsequent call to a non-signal-safe function can crash the process <RhodiumToad>guile's own signal handling works by setting a flag in the real sigint handler and then checking it later, at a safe place <RhodiumToad>you can install your own handler and have it set a flag you can check yourself <str1ngs>davexunit: hello, I'm not sure if you got my message regards to coroutine.scm in guile-2d? <davexunit>str1ngs: hi, guile-2d hasn't been maintained in years. <davexunit>I currently maintain a library called chickadee that has a coroutine implementation that is similar. <str1ngs>davexunit: understandable, It looks like emacsy snarfed coroutine.scm and I'm having a prompt issue that I can't figure out. <str1ngs>ideally I will change this to something else, but since emacsy is a library I need to time to do the correctly. <davexunit>what's the backtrace look like? I can make an educated guess <str1ngs>one sec I'll give you a backtrace. manly it's something contextual but I can't figure out what. ie if I do something from a REPL. <str1ngs>let me link the emacsy emacsy-message might help <davexunit>str1ngs: there's not much in this trace. abort to unknown prompt means that something tried aborting to a prompt tag that it wasn't called with. <davexunit>if you have a prompt tag 'foo, the program needs to be within a (call-with-prompt 'foo ...) form in order for (abort-to-prompt 'foo) to work. <str1ngs>davexunit great, that might explain the contextual issue then. I appreciate the feedback. <dsmith-work>wingo: Do you think it could be possible with our current macros to implement something like macroexpand-1. That is, just one level of macro expansion. For debugging/education mainly. <str1ngs>davexunit: I apoligize for the simple issue. I was not aware this was a guile primitive and assumed it was emacsy specific. <davexunit>for a much more sophisticated system, see guile-fibers. <str1ngs>I had considered fibers eventually since I'm use to goroutines myself. <dustyweb>davexunit: too bad we didn't get to do our IRL hackathon <dustyweb>. o O (maybe that's not a questino for a public channel in a year like 2020!) <catonano>dsmith-work: about macroexpand-1: very interesting question ! <catonano>dsmith-work, dsmith: there was a discussion, some time ago, about support for progressive expansion of macros for debugging/education, on the Guix mailing list <dustyweb>oh davexunit just saw your vector renderer <dsmith-work>catonano: I *think* guile had one a long time ago, like maybe in the 1.4 days. <catonano>dsmith-work: yes it had one, its removal is mentioned on the NEWS file, you can find it with a grep search <catonano>dsmith-work: there's a thread in the guile ml (not guix, guile) titled "macroexpand-1" it's of may 21st 2018, I opened it <catonano>dsmith-work: and then there's another thread in the guix ml titled "my latest blog post", it's of june 7th 2018. It's a bit unfortunate but it expands on macroexpand-1 for debugging/educational purposes <dsmith-work>I'm mostly interested in "what does this expand into", without going all the way down to tree-il or whatever. <catonano>dsmith-work: that's exactly what I was looking for, at the time <catonano>th eanswer is that that would be a different artefact, the current expansion can't be reused for debugging/education. And a different artefatc isn't currently available because nobody went and made it, as fo rmany other things <wingo>dsmith-work: i am not sure. would you expand the outermost form only? <wingo>then no variables are lexically bound? <wingo>that would be possible to build, i think <dsmith-work>wingo: As a fallback, merely quoting the template expression is pretty good. <dsmith-work>wingo: With a complicated (long) macro, that is possibly recursive, it would be great to see what happened. <hendursaga>Are there any helper functions for Guile similar to, say, Python's os.path.join? Built-in? <civodul>hendursaga: you can try (string-join '("a" "b" "c") "/") <civodul>it's just string manipulation but might suit your needs <hendursaga>civodul: OK but a cross-platform file delimiter, say? <str1ngs>you can replaces "/" with file-name-separator-string for more windows support <str1ngs>have not tried that way on windows but should word <civodul>hendursaga: you can use file-name-separator-string instead of "/" <civodul>but IIUC "/" works everywhere nowadays, even on Windows <dsmith>At the file open() level anyway.