IRC channel logs

2016-03-19.log

back to list of logs

<jmarciano>are there bindings for GNU social in Guile?
<ozzloy>what do y'all use for unit-testing?
<cojy>srfi-64 is alright
<janneke>i'm using a modified guile/test-suite/lib.scm
<ozzloy>janneke, what's your modifications?
<ozzloy>i want to be writing code, and when i hit save, the relevant tests run. is there something like that?
<janneke>ozzloy: that would be nice
<ozzloy>i've been looking into it
<ozzloy>it looks like people have written inotify wrappers
<ozzloy>and possibly this is useful https://www.gnu.org/software/guile-gnome/docs/glib/html/IO-Channels.html
<janneke>my mods: gnu-style error messages and not exit upon exception
<ozzloy>what's "gnu-style error messages"?
<janneke>when tests fail, say FILE:LINE:MESSAGE
<ozzloy>ah
<ozzloy>that's good
<ozzloy>(it doesn't already?!)
<janneke>submitted a patch to guile-devel but that's not gotten in (yet)
<janneke>oh! maybe it did get in? :-)
<ozzloy>woo
<amz3>héllo guilers!
<rain1>hello
<ozzloy>mroing
<rain1>is the GNU artanis developer here?
<amz3>rain1: no but feel free to ask ;)
<taylan>isn't it nalaginrut? they're often here. last three days ago it seems.
<rain1>thanks, I will tyr to ping them
<amz3>don't hold you breath since he not usually here on week ends
<amz3>what's up everyone?
<janneke>amz3: libreplanet?
<amz3>indeed
<jmarciano>is it common to use extension .gle for guile?
<jmarciano>for example package mcron searches for *.gle files. Shall I name guile files, .gle?
<amz3>I've never seen .gle extension
<mthl>me too.
<jmarciano>well, do you use mcron?
<jmarciano>4.1 Invoking mcron... and files ending .guile or .gle will be assumed to contain scheme code...
<jmarciano>mcron is guile preferred cron... so it uses .gle files
<mthl>I use mcron
<mthl>but even mcron guile source files are using .scm
<jmarciano>ah yes... on my side, .gle
<jmarciano>ok so everyone uses scm, I see
<mthl>I was speaking of the source code of mcron not of the files recognized by mcron.
<mthl>IIRC mcron doesn't allow .scm files for configuration
<mthl>which should be fixed IMO ;)
<amz3>no, but really, this book is awesome https://www.gitbook.com/book/drboolean/mostly-adequate-guide/details
<amz3>'mostly adquate guide to functional programming'
<amz3>I will try to translate to guile
<janneke> /join #Libreplanet
<amz3>I'd like to create a browser frontend for Guile REPL, can someone point me in the correct direction
<janneke>amz3: send user input using json over websockets to guile web server?
<amz3>ok right, it requires websocket
<janneke>just curious, are you creating an interactive tutorial, like haskell?
<amz3>i don't know the interactive tutorial of haskell, but yes...
<amz3>I started a tutorial here http://amirouche.github.io/learn-scheme-guile/
<amz3>I will try to extend it with macro stuff and stuff from mostly-adequate-guide
<amz3>I will focus on the writing for now
<amz3>forget the browser REPL stuff
<amz3>erf the editing of my tutorial is very poor
<janneke> https://www.haskell.org/
<amz3>?
<amz3>got it
<janneke>;-)
<janneke>amz, have you seen http://pleac.sourceforge.net/pleac_guile/index.html
<amz3>nice
<amz3>b
<amz3>oops! sorry!
<jmarciano>is there a way, in Guile, to comment out the rest of the file as whole? Like in Perl it is like __DATA__ and everthing below becomes just data, not considered expressions. Would be handy...
<janneke>jmarciano: there are block comments...
<linas>mark_weaver don't know if you had a chance to think about it, but ...
<linas>... but, if there was a way to use guile hygenic macros, and apply and given macro over and over and over again...
<linas>you'd have a langage feature that would really make people sit up and notice... pull a fast one on those racket people.
<linas>and if you could *also* get it to run fast (using boolean-SAT, the way that the ASP solvers do) then that would REALLY make people sit up and take notice!
<amz3> what do you mean by 'use hygenic macros' ?
<linas>Again .. I'm thinking "a macro is like a rule", a la https://en.wikipedia.org/wiki/Inference_engine or https://en.wikipedia.org/wiki/Semantic_reasoner
<linas>amz3 -- a few days ago, mark_weaver and I had a conversation, where I think we came to a common understanding:
<linas>a guile macro is kind of like an inference rule, except a macro can be applied only once.
<linas>this realization is anchored on the looking at syntax-case and the other syntax stuff in scheme macros
<linas>e.g. https://docs.racket-lang.org/reference/stx-patterns.html
<linas>and noticing that they are very similar to the rules that rule-engines use
<linas>except macros can only be applied once .. and no evaluation is possible during macro application
<linas>Now, *if* one had syntax-case and define-syntax and some of the other syntax- stuff, *and* could mix it freely with evaluation ...
<linas>then you'd have a rule engine .. in scheme.
<linas>if you could also employ a boolean-SAT solver to solve the rules (and mix them with ordinary scheme evaluation)
<linas>then you'd have something truly awesome.
<amz3>indeed
<linas>The above explanation is why opencog is as fucked as it is: we were unwittingly, un-intentionally inventing the above, badly.
<linas>Now that I understand what was accidentally invented ... its clear that there are other paths. The above is one.
<amz3>so opencog is matching trees and rewriting them, is that correct?
<linas>amz3 I know you're interested in minikanren, but I think the above sketch is .. more practical, more usable.
<linas>amz3 yes
<amz3>by the way linas stis made a guile-syntax-parse which port racket macros to Guile
<amz3>'stis' is a person
<amz3>so maybe you can have an interesting discussion with him. I also wrote a kanren/prolog thing
<amz3>s/I/He/
<amz3>I will dig this idea of match tree with minikanren this sound fun
<amz3> https://gitlab.com/guile-syntax-parse/guile-syntax-parse
<amz3>too bad it did not made it to Guile proper
<amz3>I'm wondering why?
<linas>stis .. right .. I remember looking at that.
<linas>I had to beat on him, to get him to add more explanations and stuff.
<amz3>a misterious guy?
<amz3>I mean i keeps some mistery around his work?
<linas>Like a paragraph at the very begining, explaining what it is, and why anyone would care.
<amz3>yeah, the documentation is laking, he keeps experimenting+building without making his work manageable for others
<linas>yeah, mystery in programming is a very wide and braod path to having the world completely ignore you
<amz3>but this sound very familiar
<amz3>sneek: botsnack
<sneek>:)
<amz3>anyway we all have our bad sides, we should make sure to help each other to work with each other the best we can
<amz3>or this project is hopeless
<amz3>it seems to me a lot of people on the internet wait for the super hero coder to do the work instead of helping 'growing' those people themself
<linas>well, if you can figure out what stis is doing and explain it simply, and submit a patch to his README file ... that would be good
<linas>hmm grow a superhero in your own kitchen, using only ordinary tools
<linas>it can be done.
<linas>coffee ...
<amz3>AFAIK he is building a prolog with Guile compiler, BUT nobody answered his request for a new operator in Guile assembler
<amz3>which is a shame...
<amz3>s/shame/not cool/
<amz3>but I understand that everybody has its own 'business'
<amz3>it's jsut that it seems that all the effort is toward guix...
<amz3>you are right linas I should help
<amz3>I'll make efforts, like I advise to do :)
<linas>remi: prolog: I used ASP some years ago (the uni-potsdam potassco solver suite)
<linas>and although the syntax is more-or-less identicial to prolog, the performanc eprofile is completely different
<linas>for certain problems, its 1000x faster, or even more.
<linas>due to the use of SAT algorithms.
<linas>so prolog, in itself, has gotten "not interesting" due to this performance twist.
<amz3>there is SAT solver for pattern matching in opencog?
<stis>amz3: my syntax-parse port is a translation and copying of the racket code. It can't be in guile proper due to this because that intellectual property belongs to the racket syntax parse coder the lisence is ok for copying though.
<amz3>ah! you are here!
<amz3>x)
<stis>just arrived after looking at a movie with friends
<amz3>I was wondering what you meant last time, about porting guile-log parser framework to minikanren?
<stis>and yes tou are all right, everything is underwhelmingly underdocumented and not well streamlined.
<amz3>If I were you I would probably do the same, you can code a lot so you do that. Personnaly I don't have enough knowledge to code that much