IRC channel logs

2015-05-20.log

back to list of logs

<paroneayea>ijp: o/
<paroneayea>ijp: I know the coding period hasn't started quite yet, but will you be pushing your ecmascript support stuff to https://github.com/ijp/guile or?
<linas>so ..ecmascript is being revived for guile!?
<linas>ArneBab: I believe that IBM has a patent for executing encrypted binaries without unencrypting them (under certain tight restrictions)
<linas>I had this explained to me by the IBM researcher who I think eventually filed the patent .. he wanted me to work on it.
<linas>Something about having an instruction: add, multiply, shift, branch, you did not know what instruction it was, because its encrypted, but you could still execute it.
<linas>I did not really get it.
<linas>but I guess that is the opposite of what you meant by your "privacy/turing complete" comment.
<mark_weaver>I don't see how a machine could possibly execute code efficiently without having access to the unencrypted code and data, at least not in the general case.
<mark_weaver>so the idea wasn't simply to decrypt the code inside the processor?
<turbofail>might have been some sort of homomorphic encryption thing
<mark_weaver>paroneayea, bipt: when I try to run 'guile-emacs' from the guix package, I get this error: "Cannot open load file: No such file or directory, emacs-lisp/byte-run"
<iyzsong>same here, 'emasc -Q' gave me more lucky
<mark_weaver>share/emacs/24.4.50/lisp/emacs-lisp/byte-run.el exists in the output of the guile-emacs package, but apparently that is not sufficient for it to successfully load it
<mark_weaver>iyzsong: ah, indeed!
<nalaginrut>linas: could it be something like ROP gadget, I mean the principle?
***michel_mno_afk is now known as michel_mno
<mbuf>are there any examples of websites built with guile?
<nalaginrut>linas: oh, I was wrong, it seems homomorphic encryption
<nalaginrut>mbuf: web-artanis.com is your friend ;-)
<nalaginrut>mbuf: or if you're looking real practical sites built with Guile, wingo's blog and my blog are built with tekuti, one of the blog system with pure Guile scheme
<nalaginrut>mbuf: wingolog.org and nalaginrut.com
<mbuf>nalaginrut, thanks
<nalaginrut>mbuf: np ;-)
<mbuf>nalaginrut, I am looking for a way to generate custom HTML, CSS and JavaScript from org files
<mbuf>nalaginrut, which are revisioned with git; just wondering if Tekuti can be customized for the same
<mbuf>the web sites are nice!
<nalaginrut>oh, you need static-page-generator
<mbuf>nalaginrut, yes
<nalaginrut>thanks ;-P
<nalaginrut>mbuf: I'm concentrating on dynamic page generator, I think someone wants to write a static one
<nalaginrut>mbuf: anyway, web-artanis.com is generated by static one from chicken scheme, since we don't have one so far
<nalaginrut>for now, I just use org-mode in my emacs
<mbuf>nalaginrut, let me play with GNU Artanis and see
<mbuf>nalaginrut, thanks!
<nalaginrut>mbuf: the latest Artanis has big progress now, if you're familiar with rails or other modern web framework, maybe you'll pick it up quickly
<nalaginrut>anyway, I'll release 0.1.0 when I done MVC, it's close
<nalaginrut>s/close/closer
<mbuf>nalaginrut, yes, I am familiar with Rails
<mbuf>nalaginrut, and I have been looking for something similar with Scheme/Lisp
<mbuf>nalaginrut, will give it a spin soon
<nalaginrut>mbuf: the new Artanis *maybe* similar to rails, but not same ;-P
<mbuf>nalaginrut, okay
<nalaginrut>anyway, there're lot of work to do in the future
<mbuf>nalaginrut, any document that you recommend to get started with Guile?
<nalaginrut>we still need a good package manager for Artanis then...
<nalaginrut>mbuf: oh, you may read the manual of Artanis, there're some suggestions
<mbuf>nalaginrut, okay; package manager as in?
<nalaginrut>mbuf: one may write plugins taking advantages of Artanis modules
<nalaginrut>but it's unlimited to Artanis, sometimes when you build a webapp, you need some prerequists
<mbuf>nalaginrut, okay
<nalaginrut>mbuf: there's no plan yet, I hope it's as good as npm
<mbuf>nalaginrut, I get the idea
<nalaginrut>the simple roadmap is MVC->strong server core->pkg manager
<nalaginrut>so many works...
<mbuf>nalaginrut, artanis might be a good to help me get started with guile
<nalaginrut>mbuf: wish you like it
<nalaginrut>;-D
<nalaginrut>mbuf: I would recommend this well formatted HTML5 version manual http://www.gnu.org/software/artanis/manual/manual.html
<mbuf>nalaginrut, does guile support Unicode characters?
<nalaginrut>it's not updated with the latest Artanis
<nalaginrut>mbuf: yes, since Guile supports it
<mbuf>nalaginrut, okay
<nalaginrut>but you have to call setlocale first, IMO
<mbuf>nalaginrut, I see
<mbuf>maybe use something similar to guix for managing modules for artanis
<mbuf>BRB
<nalaginrut>mbuf: yes, it's one of the ideas, but I still have no plan what kind of pkg manager do we need
<nalaginrut>so it's just an idea so far
<duud>nalaginrut: you are the artanis guy, right?
<nalaginrut>duud: ;-)
<duud>so
<nalaginrut>what can I help you ;-)
<duud>:)
<duud>web stuff
<nalaginrut>duud: have you tried it?
<duud>not yet but thinking about it
<duud>but now I need just to render a sortable database table in html
<duud>I think artanis is to heavy for this
<nalaginrut>duud: if you just need something like ORM, you can still use Artanis
<nalaginrut>and you don't have to run Artanis server
<duud>actually I cant on my webhoster
<nalaginrut>just use (artanis db) and (artanis fprm)
<duud>only cgi
<nalaginrut>duud: it's fine, you don't have to run Artanis server, just use the relational-mapping as a lib
<nalaginrut>duud: http://www.gnu.org/software/artanis/manual/manual.html#sec-9-3
<duud>is this stable?
<nalaginrut>duud: oh, good question, it's only for prototyping and personal usage now, it's still in Alpha
<duud>how is your feeling about it? :)
<nalaginrut>but the relational-mapping interface may not change in close future
<nalaginrut>duud: I still can't evaluate it now, since I'm working on 0.1 hardly before I use it in a Internet-of-Things project
<nalaginrut>It's better to evaluate when I use it in real project for a time
<nalaginrut>so before this happen, I would suggest folks play it for fun
<nalaginrut>duud: ^^
<duud>yea, I reading your manual :)
<nalaginrut>enjoy it, and please don't hesitate to ask, irc/github/mailing-list are all fine
<duud>yes, I'll use artanis, hopefully it won't explode :)
<duud>are there any new/undocumented features?
<nalaginrut>duud: well, so many new/undocumented in git repo
<nalaginrut>features
<nalaginrut>and the interfaces are unstable, so please don't use latest dev version for any project
<nalaginrut>duud: most of new features are based on old (documented) features, you may treat them as low-level things
<duud>nalaginrut: the semantics of the word/object table are somewhat strange. I mean in this example (my-table 'get table-name ...)
<nalaginrut>duud: maybe, I'm sorry, I'm not English native user ;-P
<nalaginrut>so there're bugs in grammar or semantics
<duud>nalaginrut: I don't have a better name for it either. But it is actually a procedure representing a connection I think.
<duud>???
<duud>nalaginrut: hmm also there is no relational mapping in this abstraction, but I could be totally wrong, I'm reading it for the first time
<duud>nalaginrut: I mean some procedure/object representing a relation not just a table
<ArneBab>linas: executing encrypted code sounds horrible… like the stuff I don’t want my computer to be able to do.
<ArneBab>linas: or rather: it sounds like it requires something in my computer which I cannot control.
<duud>ArneBab: Yes that's bad and it's the only purpose of encrypted code
<duud>nalaginrut: 32bit guile compiled, hope it runs on my webhoster. I'll try it. I hope I can give you some feedback / share some ideas. So thanks for hacking on it ;)
<nalaginrut>sneek: later tell duud sorry I was leaving for a meeting. And yes, it's not mapping a table but a connection, I planed an abstract level to hold a table with a helper function, so maybe my-table is not a proper name ;-)
<sneek>Got it.
<nalaginrut>sneek: later tell duud and please make sure it's 2.0.11+
<sneek>Got it.
<nalaginrut>sneek: later tell duud FPRM is working-in-progress, so yes, there's no relations mechanism between tables yet, I'm trying to find good way to design, but slowly ;-P
<sneek>Got it.
<mbuf>are there any performance benchmarks for guile?
<taylanub>mbuf: no recent ones AFAIK
<taylanub>well there were some benchmarks putting 2.0 against 2.2, but not among other Scheme implementations.
<taylanub>also performance and especially benchmarks seem to be often overrated and not nearly a precise enough estimation of whether the language/implementation will suit your needs...
<mbuf>taylanub, sure
<lloda>Guile includes a benchmark suite
<lloda>look in benchmark-suite/ in the repo
<lloda>if you mean charts &c I don't know of current ones
<linas>nalaginrut, yes it was homomorphic encryption. Judging by the dates in wikipedia, I was told about it before anyone published anyting on it.
<linas>thanks for reminding me of this
<mario-goulart>linas: nalaginrut is not here.
<wingo>> ,optimize (lambda (f x) (let lp ((x x)) (let ((x* (f x))) (if (eq? x x*) x* (lp x*)))))
<wingo>$1 = (lambda (f x)
<wingo> (let ((x* (f x))) (if (eq? x x*) x* (f x*))))
<wingo>fffffffffffffffff
<wingo>terrible
<wingo>only in master tho
<wingo>pretty broken that peval has to think about assigned lexicals :P
<ArneBab>linas: this sounds much less horrible that I had thought: http://en.wikipedia.org/wiki/Homomorphic_encryption
<ArneBab>it would provide software as a service without exposing the data to the service provider
<ArneBab>spending CPU cycles on an operation which you know is correct but whose result you’ll never see.
<wingo>whew, fixed this bug. takes a while to page peval back in...
<dsmith-work>Morning Greetings, Guilers
*dsmith-work orders a larger page cache for wingo
<dsmith-work>sneek: graphs?
<dsmith-work>sneek: bechmarks?
<dsmith-work>sneek: benchmarks?
<sneek>Someone once said benchmarks is http://ossau.homelinux.net/~neil/
<ArneBab>wingo: did you see the info from bipt about problems with too few roots for importing the guile-emacs elisp files in master?
<ArneBab><bipt> civodul, it's due to the use of GC_add_roots with ELF images that have mutable constant data http://article.gmane.org/gmane.lisp.guile.devel/17521
<ArneBab><bipt> another problem is that guile only allows you to load a fixed number of compiled programs, so it's not practical to simply compile and execute each toplevel form as a file is loaded; guile-emacs has to 'eval' tree-il expressions to avoid hitting the limit
<ArneBab><bipt> if the limit didn't exist, startup would still be slow (maybe slower!) but overall performance would be better
<dsmith-work>sneek: later tell mbuf see http://ossau.homelinux.net/~neil/ for some Guile benchmarks over git commits.
<sneek>Okay.
<wingo>ArneBab: yeah, we probably need to import libgc to fix that
<wingo>dunno if bipt has started writing a better evaluator tho
<wingo>er
<wingo>i mean, using the better evaluator
<wingo>holy frig that was a terrible bug. /me rebases
<wingo>well, later this evening anyway
<ArneBab>wingo: ok - I just wanted to make sure that you’re in the loop :)
<ArneBab>(nice that you got the bug fixed!)
***michel_mno is now known as michel_mno_afk
<wingo>greets peeps
<wingo>dsmith-work: finally got around to fixing that master failure, tx for the headsup
<paroneayea>oh hey, I hadn't heard of http://en.wikipedia.org/wiki/Canonical_S-expressions
<mario-goulart>nalaginrut: hi. With regard to static pages: I don't know exactly how artanis work, but I could come with a hack in awful to generate static pages out of the resources table used by awful. Maybe artanis coud do something similar. It can be handy to, for example, make a static blog generator in artanis.
<davexunit>paroneayea: we use those in guix.
<mario-goulart>nalaginrut: the awful thing is this http://wiki.call-cc.org/egg/awful-static-pages
<paroneayea>davexunit: really!
<davexunit>yup.
<davexunit>didn't really know what they were about until you just posted about them ;)
<davexunit>but yeah, they are used for the crypto stuff
<paroneayea>is this another guix thing that I'm going to wish was in guile proper? ;)
<davexunit>dunno!
<paroneayea>not mentioned in the guile manual nor the guix manual
<davexunit>it's not a public interface
<davexunit>so it's not in the guix manual
<paroneayea>I see
<paroneayea>(guix pk-crypto)
<dsmith-work>wingo: Cool
<paroneayea>interesting
<paroneayea>I can do (sexp->canonical-sexp '(+ a b c))
<paroneayea>but not
<paroneayea>I can do (sexp->canonical-sexp '(+ 1 2 3))
<paroneayea>er
<paroneayea>but not (sexp->canonical-sexp '(+ 1 2 3))
<paroneayea>ERROR: unsupported sexp item type 1
<paroneayea>curious