IRC channel logs


back to list of logs

<nalaginrut>morning guilers~
<paroneayea>hi nalaginrut
***karswell` is now known as karswell
***michel_mno_afk is now known as michel_mno
<amz3>héllo :)
<amz3>rekado-: what do you think of a markdown parser that supports pollen syntax? would you use it?
<amz3>I sound useful to me, I'd like to know what other people think
<amz3>my blog use a pollen-like parser, it kind of useful but I don't use it much now that the blog is setup..
<amz3>I mean I don't create new "typesetting" procedure anymore
<davexunit>rekado-: I pushed a handful of haunt commits that change some stuff. notably, the 'blog' builder is a little more modular now.
<davexunit>still needs stuff like pagination and whatnot, but that can come later.
<davexunit>I almost have the initial version of haunt's website done. built with haunt of course.
<davexunit>I have a bug or two to squash with the new 'haunt serve --watch' auto-rebuild feature, and then I will release. :)
<amz3>pagination is not a strong requirement I think
<davexunit>it's easy to do, but best to just release early.
<davexunit>(like I should have done with Sly)
<amz3>yes since it can be useful
<amz3>I don't have pagination on my blog, i find it misleading
<amz3>I just have a single list of (and 'title 'keywords 'publication-date)
<amz3>there is no intro
<davexunit>nice and simple :)
<paroneayea>probably will start on a postgres ffi library this weekend
<amz3>I very happy to have my graphdb in an almost usable state
<amz3>hopefully I won't use sql anymore
<amz3>ALTER table is really not friendly
<amz3>at least now I won't have to use it.
<amz3>I will mock a static version of the p2p app does, which is basically a single user federation node like #indiewebcamp does
<amz3>it's not web scale, but what is ;)
<paroneayea>"web scale" is an inane term anywaay
<paroneayea>since even a static html file is technically web scale
<amz3>still I need to work on the quality of my software to be able to compete with any kind of startup scene
<amz3>by the way a few days ago, there is HN startup that does P2P social network with a web browser (but not HTTP)
<amz3>I wanted to try, but they only provide binaries...
<amz3>I'm not sure what is the point of being "secure" if you have to download blobs
<amz3>erf, just figured that using the a schema similar to datomic will greatly help my design. I wrote 500 sloc to throw it
<amz3>This also allow me to provide an interface to wiredtiger that simpler, more powerful but less complicated than graphdb
<amz3>I understand why datomic use datalog to do the querying
<amz3>datomic scheme use (Entity Value Attribute) pattern, you can think of the database as a giant list of (identifiers, attribute, value)
<amz3>building a simple version of that database in wiredtiger tiger is as simple as doing:
<amz3> (session-create session
<amz3> "table:atoms"
<amz3> "key_format=SSu,value_format=u,columns=(identifier,attribute,value)")
<amz3>this declares a table with three columns
<amz3>then the index can be declared with
<amz3> (session-create session "index:atoms:aiv" "columns=(attribute,identifier,value)")
<amz3>this won't work with list but it can work with strings and integers
<amz3>I mean it will not index list correctly
<amz3>then say you add a tuple '(1 "name" "amirouche")
<amz3>it will automatically index in "index:atoms:aiv" table index as ("name" 1 "amirouche")
<amz3>aiv index is not the most easy to understand. It allows for instance to retrieve every object of given type
<amz3>exemple <person> is stores in the database as (1 "person/name" "amirouche")
<amz3>then the attribute is useful
<amz3>the most common index is avi which stores for instance ("person/name" "amirouche" 1)
<davexunit>paroneayea: exciting re: postgres
<paroneayea>davexunit: :)
<paroneayea>davexunit: I've been spending the last few nights reading through a huge postgres tome
<paroneayea>trying to better understand it
<amz3>with that kind of index, it's possible do query like (query-person-name "amirouche")
<paroneayea>there's a "using the C library" section, so I'm just going to read that first
<amz3>with datalog the use of index is transparent. That the very crazy thing that datalog does. Too bad it's closed source
<amz3>you will change your mind ;)
<wleslie>I've written five datalog compilers as part of my work on pypy-effects, you can do it in a few hours
<wleslie>and there are free datalog systems available, such as iris and the one that comes with jchord
<amz3>what is pypy-effects?
<wleslie>it's a next gen compiler/optimiser, a replacement for part of pypy
<paroneayea>wleslie: oh, you work on pypy?
<paroneayea>great project!
<wleslie>yes, it's really cool
<amz3>no, it's not that easy, really? I look at it, it seems like the top-bottom method is the most performant, and don't understand the algorithm it just seem to be bottom-up algorithm
<wleslie>bottom-up is easier to write, but top-bottom is not complicated - composite rules just become function calls with memoisation
<amz3>so you say that datalog will make pypy faster?
<wleslie>datalog is the standard language for static analysis
<amz3>that the thing I don't understand composite rules, they seem to same as propagating rules from bottom-up
<amz3>seem to be the same
<wleslie>so in `f(X, Z) :- g(X, Y), h(Y, Z).` if you've got X, you evaluate g(X, Y) and then plug the values you get into h/2
<wleslie>it's your standard inner equijoin
<wleslie>because evaluation order doesn't matter, you can have a buffer between them, so you pull a few values of g(X, _) out before querying h/2
***michel_mno is now known as michel_mno_afk
<daviid>sneek: seen wingo
<sneek>I last saw wingo on Jun 24 at 08:05 pm UTC, saying: and how long prerelease will take, no idear.
<amz3>wleslie: which paper(s) did you use to learn and implement datalog
<daviid>wleslie: fi, journalctl is in /bin and part of the systemd debian package
<daviid>[had to leave last converse abrupt... so just completing now :)]