solnic changed the topic of #rom-rb to: Ruby Object Mapper | Mailing List: https://groups.google.com/forum/?fromgroups#!forum/rom-rb | Logs: http://irclog.whitequark.org/rom-rb
snusnu has quit [Quit: Leaving.]
snusnu has joined #rom-rb
bf4 has joined #rom-rb
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Ping timeout: 245 seconds]
bf4 has quit [Ping timeout: 272 seconds]
snusnu has quit [Quit: Leaving.]
irclogger__ has joined #rom-rb
warmwaffles has left #rom-rb [#rom-rb]
bf4 has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
irclogger__ has quit [Ping timeout: 240 seconds]
bf4 has quit [Ping timeout: 248 seconds]
dkubb has joined #rom-rb
kleech has joined #rom-rb
kleech has quit [Remote host closed the connection]
kleech has joined #rom-rb
kleech_ has joined #rom-rb
kleech has quit [Read error: Connection reset by peer]
kleech_ has quit [Read error: Connection reset by peer]
kleech has joined #rom-rb
skade has joined #rom-rb
mbj has joined #rom-rb
mbj has quit [Ping timeout: 272 seconds]
skade has quit [Quit: Computer has gone to sleep.]
mbj has joined #rom-rb
<mbj> dkubb: Just fixed unparser.
kleech has quit [Remote host closed the connection]
kleech has joined #rom-rb
kleech has quit [Ping timeout: 260 seconds]
skade has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
robertjpayne has joined #rom-rb
<robertjpayne> hey all
skade has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
skade has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
skade has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
skade has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
skade has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
snusnu has joined #rom-rb
snusnu has quit [Quit: Leaving.]
skade has joined #rom-rb
<mbj> robertjpayne: hi
skade has quit [Ping timeout: 248 seconds]
<robertjpayne> Hey mbj, sorry I had a question about rom-rb but I sorted it out :) Just up late playing around with it
<mbj> :D
<mbj> robertjpayne: nice
<robertjpayne> I want to create an ORM for FoundationDB hehe
<robertjpayne> buut not sure I know how to implement indexing on a app code level
<mbj> So you are working on an axiom adapter?
<robertjpayne> I was just toying around.. very minorly
<robertjpayne> FoundationDB needs a lot more than just an axiom adapter
<mbj> Heh, I know.
skade has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
skade has joined #rom-rb
breakingthings has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
snusnu has joined #rom-rb
<mbj> snusnu: hola
<snusnu> yo mbj
skade has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
<mbj> snusnu: My flight goes tomorrow.
<snusnu> mbj: too bad ;)
<mbj> snusnu: And I'm thinking about a generic "predicate" system.
<mbj> snusnu: One that is basically ducktrap but without transformations and "someone-tries-to-cheat-you-proof"
<mbj> snusnu: Meaning a predicate system for "known" object structures.
<mbj> snusnu: Could be used for axiom also.
<snusnu> mbj: for constraints/validations?
<mbj> snusnu: Yeah an composable structure that could be shared between axiom/vanguard/ducktrap.
<mbj> snusnu: It would use an AST as intermediat format.
<mbj> snusnu: And allowing to compile this AST into "tracking" evaluators (like ducktrap) and "non tracking".
<snusnu> mbj: sounds good, and totally not surprising :)
<mbj> snusnu: heh
<mbj> snusnu: We can easily compile this to PURO ;)
<mbj> *PORO
<mbj> PURC! (Pure ruby code)
<snusnu> :)
<snusnu> mbj: how would i go about programmatically building up a ducktrap?
<snusnu> i.e. what objects would i use if i were to add, say, something like this: fetch_key(:id) { primitive(Integer); dump_key(:id) }
<snusnu> i doubt that i would have to literally build those blocks on a ducktrap instance?
<mbj> snusnu: it has a very easy PORO interface.
<mbj> snusnu: Ducktrap::Node::Key::Fetch.new(:id, Ducktrap::Node::Block.new([ Ducktrap::Node::Nullary::Primitive.new(Integer), .... }
kleech has joined #rom-rb
<snusnu> mbj: cool thx!
<mbj> snusnu: Dont blame me if I dont know the exact class names anymore ;)
<snusnu> heh no worries
<mbj> snusnu: Its build on concord mostly.
<mbj> snusnu: If you see Nullary, Unary, Binary, Nary in the names:
<snusnu> and how would i "add" such nodes to an existing instance?
<mbj> snusnu: Its all about "does this ducktrap delegate to other ducktraps", not if there is additional information such as an hash key!
<snusnu> i don't get that
skade has joined #rom-rb
<mbj> snusnu: So Ducktrap::Node::Nullary::Primitive.new(Integer), why this is called "Nullary" ?
<mbj> snusnu: Because you can initialize an instance of this node WITHOUT giving it another ducktrap.
<mbj> snusnu: 0 arity in the ducktrap domain.
<mbj> snusnu: I used this strategy to deduplicate code heavily.
<mbj> snusnu: It will be "easier" once ducktrap is AST based internally.
<snusnu> i see, so, i'd start with inner nodes, and gradually stick them into larger ones, the topmost being sth like Node::HashTransform ?
<snusnu> dude everything will be easier with an AST, it is your hammer in a world full of nails(?)
<snusnu> :p
<snusnu> don't get that wrong tho, it's just funny that AST seems to fit with almost everything you do heh
<mbj> Heh!
<mbj> Yeah.
<mbj> The design of whitequark/ast is ingenious. Its a pure datastructure and its "uniform" for iteration/walking through this AST.
<mbj> Yeah, the topmpost is probably a Node::HashTransform!
<mbj> But the DSL will generate a LOT of one elemet block nodes.
<mbj> Could be easily optimized away.
<snusnu> and basically, every ducktrap that accepts many nested ducktraps, can be initialized with an array of ducktraps?
<mbj> No
<mbj> An unary ducktrap must exactly have ONE duckrap node instance.
<snusnu> i was referring to this: Ducktrap::Node::Block.new([ Ducktrap::Node::Nullary::Primitive.new(Integer), .... }
<mbj> ah
<mbj> yeah
<snusnu> yeah, i mean it must be a block trap
<mbj> Yeah
<mbj> The block trap is an Nary node.
<snusnu> so a block trap accepts an array of nested ones
<snusnu> right
<mbj> the semantics are execute all nodes in a chain and return the last inner #output in case of no failure.
<mbj> But stop early.
<snusnu> right
skade has quit [Read error: Connection reset by peer]
<mbj> There are other nary nodes: Mxor for example.
<snusnu> very similar to substation :)
<mbj> Multiple Xor.
<mbj> It will execute all nodes.
<snusnu> dunno if you pushed that to the repo already tho?
<mbj> And only returns success if ONE output is successful.
<snusnu> iirc i never saw it, but i could be wrong
<mbj> no, surry.
<mbj> Very handy if you have polymorphic data formats.
<snusnu> yeah
<mbj> I dont design such a crap in APIs. My APIs have explicit types everywhere.
<mbj> But I regularly see JSON APIs like: { 'key' => here_can_be_eighter_complex_child_A_B_or_C }
<mbj> And I'd still like to validate this and instantiate correct object based on that.
<mbj> s/see/have-to-deal-with/
skade has joined #rom-rb
kleech has quit [Remote host closed the connection]
kleech has joined #rom-rb
kleech has quit [Ping timeout: 272 seconds]
irclogger__ has joined #rom-rb
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
bf4 has joined #rom-rb
skade has quit [Read error: Connection reset by peer]
irclogger__ has quit [Remote host closed the connection]
irclogger__ has joined #rom-rb
skade has joined #rom-rb
snusnu has quit [Quit: Leaving.]
snusnu has joined #rom-rb
jgaskins has joined #rom-rb
jgaskins has quit [Client Quit]
jgaskins has joined #rom-rb
robertjpayne has quit [Remote host closed the connection]
skade has quit [Read error: Connection reset by peer]
skade has joined #rom-rb
skade has quit [Ping timeout: 272 seconds]
mbj has quit [Read error: Connection reset by peer]
gildo has joined #rom-rb
skade has joined #rom-rb
skade has quit [Ping timeout: 265 seconds]
skade has joined #rom-rb
skade has quit [Ping timeout: 245 seconds]
snusnu has quit [Quit: Leaving.]
snusnu has joined #rom-rb
kleech has joined #rom-rb
kleech has quit [Remote host closed the connection]
<dkubb> good morning
skade has joined #rom-rb
snusnu has quit [Quit: Leaving.]
snusnu has joined #rom-rb
dkubb has quit [Quit: Linkinus - http://linkinus.com]
snusnu has quit [Quit: Leaving.]
snusnu has joined #rom-rb
snusnu1 has joined #rom-rb
snusnu has quit [Ping timeout: 248 seconds]
Eiam has quit [Remote host closed the connection]
Eiam has joined #rom-rb
skade has quit [Quit: Computer has gone to sleep.]
Eiam has quit [Remote host closed the connection]
Eiam has joined #rom-rb
snusnu1 has quit [Quit: Leaving.]
snusnu1 has joined #rom-rb
franckverrot has quit [Remote host closed the connection]
kapowaz has quit [Remote host closed the connection]
snusnu1 has quit [Quit: Leaving.]
cbuxton_ has quit [Remote host closed the connection]
snusnu has joined #rom-rb
postmodern has joined #rom-rb
jgaskins has quit [Quit: Leaving]
kapowaz has joined #rom-rb
franckverrot has joined #rom-rb
snusnu has quit [Quit: Leaving.]
snusnu1 has joined #rom-rb
dkubb-ircloud has joined #rom-rb
breakingthings has quit []
bf4 has quit [Ping timeout: 240 seconds]
irclogger__ has quit [Ping timeout: 245 seconds]
gildo has quit [Ping timeout: 240 seconds]
gildo has joined #rom-rb