IRC channel logs

2015-08-07.log

back to list of logs

<wleslie>amz3: the papers I read at the time included "magic sets and other strange ways to implement logic programs" (Bancilhon et al), "Using active connection graphs for reasoning with recursive rules" by McKay and Shapiro, "IRIS API and Users Guide"
<wleslie>amz3: of course anything about implementing prolog is good too
<wleslie>amz3: and really, prolog is just a pattern-matching functional language at heart, writing a top-down interpreter is just recognising this fact
<wleslie>I remember having a much better set of papers too, but I can never remember the name of the researcher
<dmiles_afk>do some datalogs implmetn singlevalued predicates or predciatres with defaults?
<dmiles_afk>actualy i am looking for a robust one for swi-porlog
<dmiles_afk>oh datalog lenering env
<dmiles_afk>(hah it just came in announce email today)
<wleslie>most (bottom-up) datalogs have some concept of stratafication that allows you to do that
<wleslie>eg once a relation is fully realised, I can ask about its negation
<nalaginrut>morning guilers~
***michel_mno_afk is now known as michel_mno
<dmiles_afk>((pfc_default(P)/(pfc_literal(P),compound(P),different_literal(P,_,Q,Test))) => ((~Q/(Test), ~neg(P)) => P)).
<dmiles_afk>(wrong channel)
<amz3>héllo :)
<amz3>dmiles_afk: where are you discussing datalog, I'd like to join if it's possible
<dmiles_afk>well we talk in ##prolog sometimes
<dmiles_afk>this evening though its been quiet
<dmiles_afk>i am excited aobut Stis's guile-log
<amz3>wleslie: thx I will have a log at it. I'm wondering whether I can make guile-log work as datampg engine
<amz3>yes indeed
<amz3>I still have some thing to get done before the implementation of anykind of datalog
<amz3>thx dmiles_afk I lurk around to see if I can learn something
<dmiles_afk>i have serveral impls of datalog like code that makes up various versions of getting to one day have relational programming
<dmiles_afk>right now i am calling it BOXLOG and not datalog
<dmiles_afk>but funny back where i used to work in 1999 we clled it datalog
<dmiles_afk>amz3: what impl you have to complete first?
<dmiles_afk>or i mean get done first?
<dmiles_afk>datampg engine is visualtion huh?
<dmiles_afk>well i see there is much to go into making it even visualization that has much to do with transformation/normalization
<dmiles_afk>to where the visualization sort of has to take the back seat
<amz3>I doing a clone of datomic in guile
<dmiles_afk>(or at least the least challenge)
<amz3>(without storing multiple version of a given entity)
<amz3>using wiredtiger
<amz3> http://wiredtiger.com
<dmiles_afk>WiredTiger smart idea here
<dmiles_afk>at least we can hope
<dmiles_afk>i am hoping guile-log will make lets say a pointer out to WiredTiger feel homogenwnized to the prolog
<dmiles_afk>a way to turn whatever store of facts into what prolog can mess with
<amz3>I'd like facts to come directly from the database instead of loading the database fully in memory
<amz3>well this is an optimisation kind of
<dmiles_afk>from wha ti been learning about datalog i think sometimes its a study of where to do the join
<amz3>but for my usecase, developping application, it's required to be able to keep the database easily in sync with "facts"
<dmiles_afk>i mean the attraction seems to be that there is a promise somehow that joins are not naive.. but i havent seen proof yet
<dmiles_afk>(i just ambeing optimistic towards that)
<dmiles_afk>right .. you defiantly will get that it think.. also doesnt wildtiger have a store that lets you be singletonish?
<dmiles_afk>(talking about the one version of a given entity)
<amz3>I think I don't understand everything
<amz3>in my version of datomic, there is all the time a single version of a fact. I don't keep old facts right now
<amz3>for starting, I like to keep things simple
<amz3>having old versions of a facts, is indeed intersting
<amz3>even for everyday applications
<dmiles_afk>ok i see now.. the clone of datomic.. nice
<dmiles_afk>Datomic's data model is based upon a universal primitive relation, of datoms, rather than an arbitrary set of named relations. And the query model, while relational, is based upon Datalog, not SQL.
<amz3>you use datomic?
<dmiles_afk>i use the prolgo database and host serval applications in the saem memory pool (sort of what a person using datomic might be after)
<dmiles_afk>it a MUD so for example textual translation and planners for NPCs use the same relations
<dmiles_afk>i write forward and backward chinging triggers to maintain the data inegraty
<dmiles_afk>that what ((pfc_default(P)/(pfc_literal(P),compound(P),different_literal(P,_,Q,Test))) => ((~Q/(Test), ~neg(P)) => P)). was .. a forward trigger that crafts a new forward trigger
<dmiles_afk>that ensures that P exists in the database as long as nothing conflicts with it
<dmiles_afk>my thing really is a clone of CYC
<dmiles_afk>but i see the important overlap of datomic.. for instance Cycorp would have thought it usefull if they wernt stuck designing their own noSQL
<dmiles_afk>(since they started 30 years ago)
<amz3>intersting
<amz3>taylanub: gnunet use something similar to the DHT of bittorren and kademlia. Which is a distributed key/value store
<amz3>this means that what you can do with gdbm you do with gnunet
<amz3>more or less
<lf94>The only thing with DHT is you need a set of "starter" nodes
<lf94>What happens when you get a malicious node?
<lf94>Or a node is compromised
<amz3>I don't know
<amz3>I think gnunet is supposed to deal with that kind of issues
<amz3>what the malicious node is doing?
***michel_mno is now known as michel_mno_afk
<davexunit>sneak preview of haunt site: http://haunt.dthompson.us/index.html
<davexunit>gotta get those download buttons aligned, slap a CC BY-SA license in the footer, and upload a release tarball.
<paroneayea>davexunit: :D
<paroneayea>\\o/
<daviid>davexunit: nice! I would personnlly left align the logo and center the dwnload button, but all this is very personnal taste and cosmetic prefs of course
<paroneayea>I just finished a refresher on C, am going into the extending postgresql with C chapters of the postgres book I have on hand
<paroneayea>once I finish that I will go through the FFI parts of the guile manual
<davexunit>daviid: I want to center the button, but I've so far failed at CSS ;)
<paroneayea>my *goal* is to have a rough guile-pg-ffi lib by the end of the weekend.
<davexunit>I'll try left-aligning the logo, though.
<paroneayea>probably, it will be by the end of next weekend
<paroneayea>but goals are good right?
<davexunit>paroneayea: how big is pg api?
<daviid>also, using epiphany, it starts with hude fonts, have to hit 2 C - [ and still does not reduce the below logo 'about' text
<paroneayea>davexunit: big, but you can keep it simple[
<davexunit>ah
<davexunit>bummer
<davexunit>hate large C apis
<paroneayea>davexunit: eg, if you just want to restrict yourself to connecting to a database and executing SQL statements where variables are escaped
<paroneayea>I think it can be kept to a very short number of bindings.
<paroneayea>that's where I'm starting with this
<davexunit>oh cool
<davexunit>sounds good
<davexunit>I gotta run, ttyl!
<paroneayea>later davexunit !
<daviid>davexunit: last thing, unlike most sites, i prefer the logo being the home, and yu'd have download source [or developers maybe] hopefullu documentation and all this small size menu below the logo, but again, i realize it's persos prefs...