IRC channel logs

2017-02-17.log

back to list of logs

<spk121>stis: cool
<stis>unfourtunately code needs to be intrinsic and calling functions inside the program does not work
<stis>so all function references needs to be passed as function arguments
<stis>or inside a datastructuer passed in
<amz3>héllo
<janneke>hey amz3
<catonano_>amz3: hi !
<wingo>well! with 6 cores on a numa node i can now get 42K reqs/s.
<wingo>adding 3 cores from the other numa node nudges me up further, almost to 48K
<wingo>i had 3 cores for the wrk benchmark program
<wingo>AFAIU with 6 cores I should be getting around 300K reqs/s to beat haskell, which seems to be about the fastes thing out there.
<wingo>i am willing to take some penalties and shoot for 200K instead, something like that
<wingo>which I guess might be within reach with a native code backend. might need some gc work too. but adding cores seems to improve perf even in spite of NUMA (which BDW-GC doesn't really accomodate AFAIU) so at this point I think i will declare victory for now
<mthl>wingo: "i can now get 42K reqs/s" what are you speaking about?
<catonano>mthl: he' s talking about their fibers thing applied to network services. reqs/s stands for requests per second
<catonano>I suppose
<mthl>catonano: thanks for guessing it. :)
<catonano>they' re talking about... :-/
<wingo>ACTION pronouns are he/his fwiw
<wingo>they/their fine too of course
<catonano>wingo: thanks :-)
<lloda`>why are setters are called like (set-f! i ... o) for (set! (f i ...) o) instead of (f o i ...). It's easier to separate o from i the other way.
<lloda`>s/are//
<lloda`>I have the same problem with srfi-1 fold
<AlfredENeuman>it's a matter of taste. with singly linked lists, instead of doubly linked lists, you're always going to have an argument about which item deserves the beginning position in the list
<unknown_lamer>lloda`: https://www.gnu.org/software/guile/manual/html_node/SRFI_002d17.html#SRFI_002d17
<paroneayea>ok ok
<paroneayea>ACTION has been reading goops.scm in off-hours
<paroneayea>I'm now halfway through reading through the printout
<paroneayea>I think I understand enough to debug the arity issues once I can find time
<paroneayea>and maybe even add a faster cache for generic methods with many implementations based on a hashmap
<daviid>paroneayea: great!
<paroneayea>:)
<paroneayea>janneke: I think I found the cause of your bug.
<paroneayea>got a doctor's appointment but then I'll reply to debbugs after.
<paroneayea>I think the new goops.scm isn't set up to intelligently dispatch on methods that glob with (args . whatev-args)
<daviid>paroneayea: if you embark on trying to become a goops maintainer, I strongly recommend you read (study) the clos spec, at least the subset that goops implement
<paroneayea>daviid: I've been reading Art of the Metaobject Protocol
<paroneayea>not CLOS itself yet
<paroneayea>I'm not *trying* to become the goops maintainer, though maybe I will end up doing some of that!
<daviid>that book is all about clos anyway so good!
<paroneayea>anyway bbiab
<daviid>ok
<amz3>sirgazil: did you read this http://lists.gnu.org/archive/html/guile-user/2017-02/msg00013.html
<sirgazil>amz3: no, let me see...
<amz3>sirgazil: do you have xp with such framework?
<amz3>I mean that use the same principles
<sirgazil>amz3: Nope. I've only used Django for web applications, and haven't played with websockets.
<sirgazil>amz3: but I would like to write scheme instead of JavaScript, and I'd like to to write style sheets in scheem too.
<sirgazil>amz3: Do nuweb apps depend on JavaScript? I mean, what happens if you request the single-page app from a user agent without JavaScript support?
<amz3>sirgazil that's should be adressed, I have a proof of concept working in python
<amz3>I know I can render the correct sxml on first request, but forms won't work with javascript
<amz3>wait they might be solution
<amz3>sirgazil: are you familiar with reactjs and html diff+patch libraries
<sirgazil>nope :)
<amz3>basically in that design, all relies on the fact that the backend render the whole sxml of the page with bound callback to DOM events
<amz3>the javascript runtime does diff+patch the browser DOM with the sxml
<amz3>and I think I have an idea for the side effect free "design"
<sirgazil>amz3: I'd have to see an example application to understand the concepts and the benefits :)
<amz3>sirgazil: todo app will do?
<sirgazil>I don't know, maybe, do you have a repo?
<amz3>sirgazil: no
<sirgazil>:D
<amz3>^^
<amz3>it doesn't exist yet
<amz3>I promised my self to do a release of culturia before working on nuweb
<amz3>sneek: what is culturia
<sneek>Last time I checked culturia is a search engine for GNU system
<dsmith-work>Happy Friday, Guilers!!
<OrangeShark>happy friday
<amz3>ro/
<janneke>hey paroneayea...are you talking about Jan Wedekind's bug?
<janneke> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24454
<Walakea>how is guile designed to cooperate with C / C++ code?
<Walakea>should guile be managing smaller C(++) programs?
<amz3>I mostly write my code in scheme and inter-operate with C code using ffi bindings
<amz3>Walakea: I sometime directly call the program via pipe to get stdout
<amz3>I used to do that at least
<amz3>I hope not to resort to that kind of hacky stuff
<amz3>I replace that code with scheme code that is working better
<Walakea>amz3: C code?
<janneke>Walakea: Guile is nowadays most often used without C/C++ code
<amz3>basically yes, for instance I was using the html2text program via pipes, I replaced it with the following code: https://framagit.org/a-guile-mind/culturia.one/blob/master/src/html2text.scm
<janneke>although in its early years Guile was mostly positioned as an extension language
<Walakea>i still get that feeling from Guile official website
<amz3>well, big apps use Guile as an extension language
<amz3>there one app from david that use guile the "new" way
<Walakea>no offence, but does anyone other than GNU packages use Guile?
<amz3>dunno
<catonano_>amz3: how is this David's app called ?
<amz3>Walakea: I don't remember, it'd a kind of todo app written using guile clutter or guile gtk
<amz3>daviid: ^
<amz3>Walakea: kind of yes, people use it for private use
<amz3>Walakea: maybe more code is private than open
<Walakea>what advantages does Guile offer over other languages?
<amz3>Walakea: like no Global Interpreter Lock
<amz3>polyglot paradigms
<amz3>of programmation much more than python
<Walakea>i really like the absence of syntax
<Walakea>what do you mean by global interpreter lock?
<catonano_>amz3: ah I think I saw their site
<Walakea>also, how does guile compare to common lisp?
<amz3>Walakea: I don't think i qualify to explain what hte global intepreter lock is
<amz3>Walakea: I know only guile and python (and javascript)
<Walakea>amz3, i found a wikipedia page about that
<amz3>Walakea: about what?
<Walakea>GIL
<amz3>GIL?
<Walakea>global intepreter lock
<Walakea>it is the reason why Python doesnt run in parallel
<janneke>Walakea: scheme vs common lisp is something google has a lot of different opinions about ;-)
<Walakea>janneke: i already DDG'd alot of that, that is why i am asking here
<janneke>i don't know much about common lisp
<Walakea>because Guile seems to be extending Scheme and implementing its own object system, i wonder why you didnt use common lisp as the backbone
<janneke>ah...
<paroneayea>janneke: oops, yes :)
<paroneayea>janneke: I guess I got my jans mixed up :)
<janneke>paroneayea: :)
<janneke>Walakea: i'm not aware of any scheme on top of lisp implementations
<janneke>or lisp on top scheme, ftm...
<janneke>but it must have been tried and there possibly are such things
<dsmith-work>janneke: Ya. The very first Scheme was on top of some lisp.
<dsmith-work>maclisp ?
<janneke>dsmith-work: ah yes, that makes sense
<dsmith-work> https://en.wikipedia.org/wiki/Scheme_(programming_language)#Origins
<janneke>nice, thanks
<amz3>I will screencast my hacking, that sound like a fun idea
<OrangeShark>amz3: live streaming it?
<amz3>OrangeShark: no I can't do that
<OrangeShark>oh, just record it
<catonano_>amz3: it's a great idea !!
<catonano_>I believe videos are important for guile/guix !
<daviid>amz3: it's called GNU Foliot
<daviid> https://www.gnu.org/software/foliot/
<daviid>ACTION is waiting for goops bugs being fixed in 2.2, so he can release 0.9.7, fingers crossed!
<catonano_>daviid: right, foliot. I have seen the site beore
<daviid>I should send a patch for our website (I was hoping someone would do that, it's a bit embarassing to auto promote an app, imo)
<catonano_>daviid: what do you mean "a patch for our website" ?
<daviid>catonano_: our site (guile's website) is written in scheme
<daviid>catonano_: so to update it, you patch :)
<catonano_>daviid: ah I see. It's not embarassing to autopromote. You're being too modest
<catonano_>you're helping the community to keep track of tings !
<catonano_>also, how comes that Foliot is not in guix ?
<daviid>catonano_: I have no idea
<catonano_>daviid: :-)
<catonano_>daviid: ok, I get it. When I will have installed GuixSD I'll take a look at Foliot and maybe send a patch to include it in Guix
<daviid>catonano_: thanks
<catonano_>daviid: you're welcome :-)
<catonano_>These days I'm mumbling that the web has become something that it was not suupposed to be
<catonano_>nodes is a mess
<catonano_>nodejs is a mess
<daviid>catonano_: git://git.sv.gnu.org/guile/guile-web.git
<catonano_>and buuilding simple solutions require people thhat proessionally dedicate themselves to the web
<catonano_>at thhe beginning it was publising or the rest of us
<catonano_>even Hoplon, that I admire very much, is so great because off how smartly comes around the web shortcomings
<catonano_>so maybe having some native GUI app is not that bad
<catonano_>daviid: When I said I would have sent a patch, I was refferring to having Foliot as a package in Guix. Bui I inderstand that you want it mentioned in the web site too
<catonano_>and I agree
<catonano_>cloning it right now
<daviid>catonano_: I understood, I just pasted guile-web.git so you can look at the code, not as a invitation for you to patch for gnu foliot :)
<catonano_>daviid: look now it's not the right time, but I promise you I will look into this
<daviid>catonano_: no problem. what is hoplon?
<daviid>catonano_: i found it, never mind
<catonano_>yes, sorry
<daviid>cantstanya: you may be interested by git://dthompson.us/haunt.git
<daviid>catonano_: actually this link is better: https://haunt.dthompson.us/
<catonano_>daviid: I know Haunt. Recently I updated the package for Guix :-)
<daviid>catonano_: ah ok, sorry
<catonano_>admittedly I haven't tested it yet, though
<catonano_>I was planning to but then life got in the way
<catonano_>daviid: no prob ;-)