IRC channel logs


back to list of logs

***micro is now known as Guest75588
<zacts>hi guile hackers!
<davexunit>hi zacts
<davexunit>gotta love the guile/gnu haters:
<davexunit>"Coupled with the fact, that maybe 2-3? people are actively working on Guile (guess what platform they're focusing on), and that pretty much nobody is using Guile besides little toy projects, things are not looking good."
<fangism>what DO people dislike about guile? I wish it were more commonly used.
<zacts>davexunit: what is the current state of guilemacs?
<davexunit>fangism: besides the usual scheme complaints, people complain about the focus on GNU and not OS X/Windows, claim that no one uses it, etc.
<zacts>davexunit: those are logical fallacies
<davexunit>of course.
<fangism>not counting complaints about scheme, of course, but just guile as an implementation.
<zacts>davexunit: you should use logic symbols and math to prove them incorrect
<davexunit>that user just really frustrated me with his ignorance.
<fangism>guile works on OS X just fine, though there've been some issues in the past
<davexunit>(assuming that they are male, which is likely a safe assumption)
<zacts>davexunit: to be fair though, perhaps they are referring to guile 1.8
<zacts>as it is included as the default on many distros
<davexunit>they probably are.
<zacts>even so, lilypond, which afaik still uses 1.8, is a pretty serious application of guile
<zacts>if guilemacs takes off, that would be a serious implementation. and guile-wm will probably prove to be great
<davexunit>but to completely trash guile like that without knowing that is annoying.
<davexunit>zacts: re: guilemacs, things are mostly working.
<zacts>davexunit: I may focus more time on tinkering with guilemacs. my editor is cool, but guilemacs sounds really cool.
<davexunit>some issues, but things are nearly usable.
<zacts>davexunit: is guile faster than the elisp interpreter?
<zacts>and can it run evil-mode?
<davexunit>zacts: not yet.
<zacts>not yet for which? :-)
<davexunit>it's slower because of dynamic scoping stuff, apparently.
<zacts>ah ok
<davexunit>but that is an issue that can be resolved.
<davexunit>in the end elisp on guile will be faster.
<zacts>see I would be interested in re-writing sections of elisp code to use (scheme) instead
<davexunit>I think that's a bad political decision at this time. people are worried about fragmenting the community with a mix of elisp and scheme.
<davexunit>I think for now we should be super happy that we might see emacs 25 or so running on guile.
<zacts>I have no idea.. I would be glad to have a mix of (scheme) and elisp, but I guess I assumed the direction was to convert elisp into (scheme) eventually.
<zacts>I don't know how complete the elisp frontend to guile is..
<davexunit>complete enough to run pretty much every extension.
<davexunit>gnus is a notable exception, because it has sections of code written in the current elisp interpreter's bytecode.
<cluck>fangism: afaiu it's mostly a matter of bad marketing, guile can do most if not all the things the "hot" lisps (clojure/sbcl/racket) and other hip languages can but people think it can't or that it's dying and so refuse to even try it
<davexunit>^ yeah, that's a good summary.
<cluck>tl;dr as said, logical fallacies
<zacts>davexunit: do you use bash, or zsh?
<zacts>I wonder if you could script extensions in bash with guile
<davexunit>it's crazy to think that guile is dying, it was on the verge of maybe dying a number of years ago, but the couple years that I've been involved with guile have been a blast. a lot of awesome activity.
<davexunit>zacts: I use bash and fish. I should probably learn zsh but I haven't.
<zacts>what is fish?
<davexunit>the "friendly interactive shell"
<davexunit>I really like the autocompletion and autosuggestion stuff it has working out-of-the-box.
<zacts>oh cool, fish looks cool
<davexunit>packaged in guix :)
<zacts>davexunit: do you use fish as your main interactive shell, or when do you decide to use bash instead?
<cluck>zacts: you can, scsh (scheme shell) exists
<fangism>cluck: yeah too bad it comes down to marketing/publicity. guile deserves better.
<cluck>fangism: that can be dealt with in due time
<davexunit>zacts: I use bash when using remote machines, mostly. and scripting, of course.
<cluck>fangism: once upon a time linux was a toy project that would go nowhere and microkernels were the future
<davexunit>but here on my laptop I use fish.
<zacts>davexunit: do you also ever use fish for any scripting, I heard bash. like would you use fish to script personal projects?
<cluck>(and i admit this lovingly as a microkernel enthusiast that believes they are the future)
<davexunit>zacts: nah, I wouldn't use fish for that.
<cluck>davexunit: fish is just zsh for lazy people!
*cluck ducks
<davexunit>cluck: that is the impression I get, yes.
<zacts>cool this fish looks sweet
<zacts>I may start using it until I learn more of zsh
<zacts>and bash I'm still learning also
<zacts>I've literally been using POSIX sh features for both interactive and scripting for years
<cluck>fwiw bash also has awesome completion capabilities, the defaults (like emacs' and most gnu wares) just suck
<cantstanya>I want a scheme shell
<cantstanya>tired of zsh
<cluck>(usually one has to source a few files to turn on the bash bling)
<cantstanya>I'm just too dumb to know how such a thing should work interactively.
<zacts>could guile be used instead of scheme48 for an interactive scripting shell?
<davexunit>cluck: yeah I need to configure my bash more
<cluck>zacts: yes
<zacts>cluck: that would be a fun project
<cluck>zacts: in fact iirc someone here was working on having scsh running under guile
<zacts>oh interesting
<zacts>well, as much as I really really LOVE vim-bindings, I'm considering learning emacs again so I can edit guile / scheme.
<zacts>although I could use evil-mode, but it's slow
<cluck>davexunit: this might sound horrible but i mostly just run bash or eshell from emacs
<zacts>ctrl-a ctrl-e ctrl-n ctrl-p are better for navigating lispy code, than the vim equivalents.
<zacts>although 1/2 of those commands are equivalent in vim
<cluck>zacts: paredit
<zacts>also I need to really learn geiser
<zacts>I hate vim's implementation, hopefully with guilemacs / vix / neovim / my own editor, I can use/make something sane with the bindings I like.
<zacts>perhaps I'll transfer my editor over to guile instead of chicken.. I'm not sure..
<zacts>I'm trying out emacs again, we'll see how it goes..
<zacts>anyway, cluck what other plugins should I use for editing guile scheme?
<zacts>is there anything for rainbow parentheses?
<cluck>emacs IS your editor, you program it to your taste and needs and one day when you die your children will inherit your .emacs and love you for it
<cluck>zacts: as a rule of thumb if other editors can do it emacs can too (usually it might require installing some packages, tweaking some settings but often the extension has already been written by one or several people and in the rare cases that fails emacs is easily programmable to your needs [and then you share your stuff because that's what nice hackers do])
<zacts>ok, I now have emacs set up for guile.
<zacts>I just need to read the doc for geiser / paredit
<zacts>and get used to the bindings again
<zacts>cluck: darn, davexunit is gone, I had another question for him
<nalaginrut>morning guilers~
<zacts>well, evening for me
<zacts>look at my zsh prompt, (I made it similar to fish),
<zacts>there is a (scheme) inspired λ there
<nalaginrut>oh, zsh?
*nalaginrut is reading
<nalaginrut>guile-curl is cool, since I have to use https to fetch google links, it helped me a lot~
<nalaginrut>what's the correct usage of sxml->string
<nalaginrut>(sxml->string '(a "b")) ==> "b"
<nalaginrut>I thought it should convert the xml to a string, no?
<taylanub>nalaginrut: I think you just want sxml->xml
<taylanub>sxml->string looks like it's similar to the text() function of XPath and such
<nalaginrut>call-with-output-string and sxml->xml?
<taylanub>doesn't it just return a string?
<nalaginrut>no, it prints out
<taylanub>oh OK. then probably best to use c-w-o-s, yeah
<taylanub>ah, see docs, it takes an argument
<nalaginrut>so I thought sxml->string do the work, but seems no
<nalaginrut>I wrote sxml->xml-string myself, but I still don't understand sxml->string
<DerGuteMoritz>"Detag an sxml tree sxml into a string. Does not perform any formatting."
<DerGuteMoritz>quoth the fine manual
<DerGuteMoritz>"detag" is a bit of an odd choice of wording
<DerGuteMoritz>it extracts text nodes and concatenates them
<nalaginrut>but seems it extracts just one node
<DerGuteMoritz>naive implementation (string-concatenate (filter string? (flatten xml)))
<DerGuteMoritz>aha, then it might be broken :-)
<nalaginrut>ok, I don't have time to dig it now... ;-)
*nalaginrut is busy for committing...
<DerGuteMoritz>well in your example you only passed a single node
<DerGuteMoritz>might that be the reason? ;-)
<nalaginrut>(sxml->string '((c "d") (a "b")))
<nalaginrut>it output "b", anything missed? ;;P
<DerGuteMoritz>yeah looks broken
<DerGuteMoritz>no wait
<DerGuteMoritz>that's not a valid sxml tree you are passing
<DerGuteMoritz>try (sxml->string '(e (c "d") (a "b")))
<nalaginrut>yeah, it's correct (sxml->string '(*TOP* (c "d") (a "b")))
<nalaginrut>well, the doc is too shot
<taylanub>FYI that's a known XML thing, taking the "text value" of a node
<taylanub>having worked with XML/XSLT/XPath before, I don't find it very surprising what sxml->string does
<taylanub>but yeah it could be documented better for people not already familiar with XML concepts
<DerGuteMoritz>nalaginrut: it says that it accepts an sxml tree, no need to describe the shape of such a tree there
<nalaginrut>I didn't use sxml->string, just curious its usage
<nalaginrut>thanks all, I have to go
<nalaginrut>see you tomorrow
<taylanub>bye :)
<mario-goulart>We have a Grateful Dead (literally) here!
<taylanub>Wikipedia doesn't open at the moment so I can't read about them :(
<taylanub>ooh, yay for cached version
<taylanub>or rather .. Ixquick proxy .. that must mean it's only inaccessible for me
<mario-goulart>jerrytgarcia: tell us: do you play guitar?
<taylanub>mario-goulart: Wikipedia tells me he should be .. err, dead, literally :\\
*mario-goulart waits for Jimi Hendrix to join
<taylanub>ah, I had a *woosh* moment
*taylanub is too young to get these jokes :(
<ota>Indeed, I was about to mention some more late greats, but, just shows my age...
<ota>Being a rock star used to be such a hazardous business.
<taylanub>at least they Lived The Life™
<ota>Though I haven't seen any serious studies. The power of news and annecdote really distort the perceived statistics.
<ota>Living large as they (used to) say.
<dsmith-w`>You know you are living large when your pants don't fit anymore.
***dsmith-w` is now known as dsmith-work
<taylanub>dsmith-work: hi, seems sneek is down again (people on #guix were wondering)
<dsmith-work>taylanub: Yes I see. Not sure what's going on there. There were no errors in the logs to account for it.
<dsmith-work>Flakey network connectivity I think.
***karswell` is now known as karswell
<zacts>hi guile hackers
<paroneayea>hi zacts
<paroneayea>does system* do safe escaping of variables
<paroneayea>to prevent injection?
<paroneayea>kind of like python's subprocess?
<taylanub>paroneayea: it doesn't need to, because they're passed literally as the ARGV of the program to be executed. it doesn't use the shell
<paroneayea>taylanub: aha, great
<daviid>hello guilers!
<daviid>i'm facing a bug using threads|: it appears in a random way, while computing things using par-map, but it is systematic in the sense that I can never complete a full 'computation' of all results. the bug shows both when running guile (GNU Guile) [my box] and guile (GNU Guile) [lab's computers]
<daviid>here is the msg:
<daviid>ice-9/threads.scm:99:22: In procedure loop:
<daviid>ice-9/threads.scm:99:22: In procedure >: Wrong type argument in position 1: #f
<taylanub>daviid: all I can tell from that is that something's passing #f to '>' :)
<daviid>of course this is not enough info to help me, but i wonder what would be best to narrow, because it is a complex script calling clojure, octave and c code... like could i do something that it gives me hand in a debugger
<taylanub>ah ..
<daviid>taylanub: that something is par-map, i don't
<taylanub>daviid: ,backtrace #:full? #t
<daviid>taylanub: running a script in a terminal, it sinply 'crashes', how can i ask my script to enter a debugger mode?
<daviid>i think i read about how to and forgot :)
<taylanub>hrm, I don't really know. could you run it in a REPL, by using `load' maybe?
<daviid>i'm gone a try
<daviid>running in a repl, let's see, brb
<daviid>strange: i'm running 2 repl, 1 on my machine, guile, in a graphical emacs, and 1 on a lab's conputer, guile as a inferior mode in a emacs -nw _now_ the 'graphical' repl stops writting my (with-mutex ... (write ...)) where as the emacs -nw does
<daviid>now that i am trying to produce a full backtrace, i have 'warning broken pie' messages :) [i'm tempted to say 'instead' :) but let's wait till the end...