jemc changed the topic of #ponylang to: Welcome! Please check out our Code of Conduct => https://github.com/ponylang/ponyc/blob/master/CODE_OF_CONDUCT.md | Public IRC logs are available => http://irclog.whitequark.org/ponylang | Please consider participating in our mailing lists => https://pony.groups.io/g/pony
jemc has joined #ponylang
jemc has quit [Ping timeout: 240 seconds]
smoon has joined #ponylang
smoon has quit [Client Quit]
smoon has joined #ponylang
smoon has quit [Quit: smoon]
endformationage has quit [Quit: WeeChat 1.7]
pduncan has joined #ponylang
flutter39 has joined #ponylang
jemc has joined #ponylang
virtual_lark has joined #ponylang
flutter39 has quit [Ping timeout: 246 seconds]
graaff has joined #ponylang
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has quit [Client Quit]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
flutter93 has joined #ponylang
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has joined #ponylang
k0nsl has quit [Client Quit]
eugene_ has joined #ponylang
eugene_ has quit [Client Quit]
flutter93 has quit [Quit: -a- Connection Timed Out]
smoon has joined #ponylang
flutter18 has joined #ponylang
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
jemc has quit [Ping timeout: 246 seconds]
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has quit [Client Quit]
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has joined #ponylang
k0nsl has quit [Client Quit]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
smoon has quit [Quit: smoon]
bimawa has joined #ponylang
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has quit [Remote host closed the connection]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
nyarum has joined #ponylang
rurban has joined #ponylang
rurban has quit [Client Quit]
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
Matthias247 has joined #ponylang
nyarum has quit [Remote host closed the connection]
papey_la1 has quit [Quit: WeeChat 1.8]
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has joined #ponylang
nyarum has joined #ponylang
TheLemonMan has joined #ponylang
aav has joined #ponylang
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
flutter11 has joined #ponylang
flutter18 has quit [Ping timeout: 246 seconds]
aav has quit []
aav has joined #ponylang
flutter11 has quit [Ping timeout: 255 seconds]
_andre has joined #ponylang
flutter32 has joined #ponylang
flutter77 has joined #ponylang
<SeanTAllen> ping me when you are back online fluttershy_
flutter32 has quit [Ping timeout: 260 seconds]
flutter77 has quit [Ping timeout: 255 seconds]
flutter17 has joined #ponylang
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
nyarum has quit [Ping timeout: 272 seconds]
jemc has joined #ponylang
jemc has quit [Client Quit]
jemc has joined #ponylang
obadz has quit [Ping timeout: 268 seconds]
obadz has joined #ponylang
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
flutter17 has quit [Ping timeout: 260 seconds]
flutter19 has joined #ponylang
flutter19 has quit [Quit: -a- Connection Timed Out]
flutter59 has joined #ponylang
TheLemonMan has quit [Quit: "It's now safe to turn off your computer."]
flutter59 has quit [Ping timeout: 240 seconds]
flutter55 has joined #ponylang
aav has quit []
nyarum has joined #ponylang
flutter55 has quit [Ping timeout: 268 seconds]
flutter47 has joined #ponylang
jemc has quit [Ping timeout: 240 seconds]
flutter47 has quit [Quit: -a- Connection Timed Out]
flutter9 has joined #ponylang
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
aedigix has quit [Remote host closed the connection]
aedigix has joined #ponylang
jemc has joined #ponylang
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
nyarum has quit [Ping timeout: 268 seconds]
jmiven has quit [Quit: co'o]
jmiven has joined #ponylang
jemc has quit [Ping timeout: 240 seconds]
flutter9 has quit [Ping timeout: 240 seconds]
flutter22 has joined #ponylang
Matthias247 has quit [Read error: Connection reset by peer]
shelajev has joined #ponylang
endformationage has joined #ponylang
flutter93 has joined #ponylang
flutter22 has quit [Ping timeout: 240 seconds]
jemc has joined #ponylang
virtual_lark has quit [Remote host closed the connection]
fluttershy_ has joined #ponylang
<fluttershy_> SeanTAllen: sorry for the delay.
<fluttershy_> SeanTAllen: any comments on the code ?
graaff has quit [Quit: Leaving]
fluttershy_ has quit [Quit: Page closed]
<SeanTAllen> im not sure what part im supposed to be focusing on
shelajev has quit [Remote host closed the connection]
shelajev has joined #ponylang
shelajev has quit [Ping timeout: 246 seconds]
mindB has joined #ponylang
shelajev has joined #ponylang
shelajev has quit [Client Quit]
fluttershy_ has joined #ponylang
<fluttershy_> SeanTAllen: XD that bad huh ?
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has joined #ponylang
k0nsl has quit [Client Quit]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has quit [Client Quit]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
_whitelogger has joined #ponylang
fluttershy_ has quit [Quit: Page closed]
flutter57 has joined #ponylang
flutter93 has quit [Ping timeout: 245 seconds]
<SeanTAllen> XD?
<SeanTAllen> so are there many ColProductCalculators fluttershy_?
aedigix has quit [Remote host closed the connection]
aedigix has joined #ponylang
bodie_ has quit [Ping timeout: 240 seconds]
nyarum has joined #ponylang
bodie_ has joined #ponylang
jemc has quit [Ping timeout: 260 seconds]
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has joined #ponylang
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
<obadz> what (high-level) strategy would one employ to implement an in-memory key value store in Pony?
<obadz> would the ownership of the tree be shared across many actors?
<obadz> how would one best benefit from parallelization in this context? (i.e. running multiple concurrent queries / updates)
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has joined #ponylang
<obadz> is some sort of multi-object atomic transaction achievable if said objects are 'looked after' by different actors?
k0nsl has quit [Excess Flood]
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
Matthias247 has joined #ponylang
<endformationage> obadz: I'm not an expert by any means, but you may find this presentation on LMDB to give you some ideas:
<obadz> will have a look, thanks endformationage
<endformationage> I read through this awhile ago, and from what I can remember, there may be some compatible ideas with its concurrent features that Pony's capabilities may be a good fit.
<endformationage> I think a Pony wrapper would be useful, FWIW. Perhaps with some niceties.
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
k0nsl has joined #ponylang
<obadz> endformationage: looks like the double-buffer approach de MVCC here should mean that only a single thread can write
<obadz> (though all the others can read on the "other" buffer)
<obadz> not that that's the end of the world..
<mindB> Hello everyone, I'm considering writing a project in (and learning) Pony. The thing holding me back is that nobody seems to have written an ORM or other way of interfacing with SQL. Is there a package out there that I'm missing?
<obadz> mindB: seems like the trivial nature with which one invokes C from Pony should make this easy?
<mindB> maybe so. will poke around a bit.
<mindB> Looks like lisael started one for pg here. Not ready for real use, yet though. https://github.com/lisael/pony-postgres
<SeanTAllen> @obadz a question: is there cross key access in your key/value store?
<SeanTAllen> mindB: there's a couple on github. including: https://github.com/pdtwonotes/tackroom
pduncan has quit [Ping timeout: 260 seconds]
k0nsl has quit [Quit: “If we don't believe in freedom of expression for people we despise, we don't believe in it at all — Noam Chomsky”]
fluttershy_ has joined #ponylang
k0nsl has joined #ponylang
k0nsl has joined #ponylang
k0nsl has quit [Changing host]
<fluttershy_> SeanTAllen: yes many ColProductCalculators
<fluttershy_> same number as the number of columns
<fluttershy_> SeanTAllen: so for every column I was thinking to create an actor, see here https://ibb.co/kUZH7a
<fluttershy_> should have been doing it also for the sum next (for every line ) but for now just going with the product and see if that's gonna scale.
<SeanTAllen> so you would want to do the iso trick from TCPConnection that we discussed
<fluttershy_> yes
<fluttershy_> because I pass the 2d array to the master actor (ProductDist) as iso and inside will do in place transpose, I don't want to create memory overhead. and then transpose back and return the matrix reference.
<fluttershy_> 2d array i mean matrix
<endformationage> obadz: True, a single writer. I'm not sure how or when multiple writers for a kv store would even work. If i've learned anything from Pony's teachings of the issues, it would cause the problems Pony strives to avoid.
<endformationage> SeanTAllen: I am curious as to what cross key access means?
<SeanTAllen> so normally in a key value store you only have access to single key at a time in terms or read or write
<SeanTAllen> in that case
<SeanTAllen> the way to implement in Pony (naively) would be an actor per key
<SeanTAllen> this works unless you are trying to do something fancy like "i want to update these two key atomically" which gets really tricky.
<endformationage> right
<SeanTAllen> I'm quite fond of "Beyond Distributed Transactions" which maps nicely onto Pony: http://queue.acm.org/detail.cfm?id=3025012
<endformationage> I guess I see that latter as being the more common (I'm seeing it from a graph database perspective). But again I'm not terribly versed.
<SeanTAllen> what is "the latter"?
fluttershy_ has quit [Quit: Page closed]
<endformationage> An atomic update of multiple keys
flutter57 has quit [Ping timeout: 240 seconds]
<SeanTAllen> i dont think a k/v store is a good tool if that is your use case
jemc has joined #ponylang
<endformationage> Well, I used a framework that mapped onto a KV Store (LMDB)
<endformationage> So it wasn't direct manipulation
<obadz> SeanTAllen: how do you index all the actors?
flutter63 has joined #ponylang
<endformationage> Actually, there are a number of graph DBs which use LMDB according to their site.
fluttershy_ has joined #ponylang
fluttershy_ has quit [Client Quit]
<SeanTAllen> obadz: well, thats an interesting question
<SeanTAllen> obadz: are your keys all strings?
<obadz> let's assume that's the case
<SeanTAllen> i think that depends on your constraints. your simplest would be to have an index actor that you send the key to and get back a tag of the actor for that key which you can then direct your request to
<SeanTAllen> performance there isn't going to be great as that index actor becomes a bottleneck
<SeanTAllen> could could divide that index of keys up across a number of index actors
<SeanTAllen> this is better for performance
<SeanTAllen> you also need to work out coordination of the creation of new keys and their actor and how that gets stored
<SeanTAllen> i assume you want to be guaranteed to read a key immediately after its created so there's some coordination there
<SeanTAllen> if you want to scale across machines, you'd need to store something other than a tag that would allow you to route to other machines to do queries and updates.
<obadz> yeah this sounds quite tricky & manual (even on a single host)
<SeanTAllen> its quite easy to do if your constraints allow
<SeanTAllen> but you'll end up with the same issue even outside of pony
<SeanTAllen> how do you maintain an index that isnt a bottleneck and where you can access all your keys concurrently? its not an easy problem once you make performance a concern. but it can certainly be done.
<SeanTAllen> obadz: so, what sort of constraints are you putting on yourself?
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
bimawa has quit [Read error: Connection reset by peer]
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
nyarum has quit [Remote host closed the connection]
nyarum has joined #ponylang
nyarum has quit [Remote host closed the connection]
flutter63 has quit [Ping timeout: 255 seconds]
flutter83 has joined #ponylang
nyarum has joined #ponylang
Matthias247 has quit [Read error: Connection reset by peer]