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
tm-exa_ has joined #ponylang
tm-exa has quit [Ping timeout: 240 seconds]
aturley has joined #ponylang
Matthias247 has quit [Read error: Connection reset by peer]
SilverKey has joined #ponylang
aturley has quit [Ping timeout: 276 seconds]
SilverKey has quit [Client Quit]
tm-exa has joined #ponylang
tm-exa_ has quit [Ping timeout: 265 seconds]
amclain has quit [Quit: Leaving]
tm-exa_ has joined #ponylang
tm-exa has quit [Ping timeout: 260 seconds]
tm-exa has joined #ponylang
tm-exa_ has quit [Ping timeout: 244 seconds]
aturley has joined #ponylang
tm-exa has quit [Client Quit]
aturley has quit [Ping timeout: 240 seconds]
aturley has joined #ponylang
aturley has quit [Ping timeout: 240 seconds]
aturley has joined #ponylang
aturley has quit [Ping timeout: 276 seconds]
SilverKey has joined #ponylang
aturley has joined #ponylang
aturley has quit [Ping timeout: 240 seconds]
graaff has joined #ponylang
aturley has joined #ponylang
aturley has quit [Ping timeout: 246 seconds]
aturley has joined #ponylang
aturley has quit [Ping timeout: 276 seconds]
jemc has joined #ponylang
jemc has quit [Ping timeout: 252 seconds]
nyarumes has quit [Ping timeout: 244 seconds]
nyarum has joined #ponylang
SilverKey has quit [Quit: Halted.]
aturley has joined #ponylang
aturley has quit [Ping timeout: 244 seconds]
Matthias247 has joined #ponylang
<sylvanc> i love the description of the idris bash backend:
<sylvanc> "Barely functional. Super slow."
<doublec> haha, indeed
aturley has joined #ponylang
aturley has quit [Ping timeout: 276 seconds]
trapped has joined #ponylang
lispmeister has joined #ponylang
tm-exa has joined #ponylang
tm-exa has quit [Quit: Computer has gone to sleep]
<SeanTAllen> giddyup btw, is also a great name doublec. on the basis of names alone, this should happen
<darach> A giddyup would be useful for those that don't want to build their own cross compiling toolchain, which will be the case for most folk ... unless you're doing a port!
<SeanTAllen> hey now darach, lets not throw ponyup out as a name just yet.
<SeanTAllen> hey darach, do you know much about how C-FFI and memory work? is it the responsibility of the C code to free memory its given or does that responsibility still lie with the pony gc?
<darach> Pony can't know about the memory management rules of native code, so it's the responsibility of the human using FFI to understand the underlying memory management rules. If I allocate natively, I deallocate natively. if I allocate in pony, I deallocate ( eg: force an actor into a quiescent state so it gc's ) in pony... I've avoided any gotchas by keeping
<darach> things that simple.
aturley has joined #ponylang
<SeanTAllen> thanks darach, that is what i thought. wanted to make sure. i'm back to hunting "my gc bug".
<darach> Not sure this is good style though. I could probably have avoided writing a small shim in C, for example, but it seemed like the simplest thing so I went with it...
aturley has quit [Ping timeout: 276 seconds]
<darach> At some point I'll do a pure pony implementation of HDR Histogram, likely more similar to Coda Hale's Go implementation rather than the C implementation used above ( which tracks the java original more closely ). Would be interesting to compare native pony impl to the C wrapped impl. A bit meta though measuring measurement tools :P
TwoNotes has joined #ponylang
aturley has joined #ponylang
aturley has quit [Ping timeout: 250 seconds]
<TwoNotes> I was looking at net/http and it is not set up for streaming at all. It treats a 'response' as a single containable lump of data.
<TwoNotes> There is client code that can *receive* chunked transfer mode, but no server code to send it.
<sylvanc> net/http needs a complete rewrite
<TwoNotes> I was looking at how to add streaming to the existing structure, but it might be simpler to create a parallel structure that JUST does streaming HTTP transfers.
<TwoNotes> By nature, they are more asynchronous
<TwoNotes> Streaming mode or something like it is also necessary to support WebSockets
<sylvanc> the existing structure probably isn't worth saving
<TwoNotes> WebSockets = bi-direction message streaming over a TCP connection, initiated by an HTTP transfer on the same link
<sylvanc> a nice streaming approach would be useful for everyone, i think
<sylvanc> yeah, websocket support would be great
<TwoNotes> I used WebSeocts on a previous project (in erlang) and it was really cool. Your server and a JavaScript program in the browser throw messages at each other, all async
<doublec> file uploads/downloads are another case for streaming unless you want to limit file sizes to memory
<doublec> SeanTAllen: bad realloc usage is one of the first things I look at when checking a C codebase for issues - it's so common
trapped has quit [Ping timeout: 276 seconds]
<TwoNotes> Having a pluggable "request handler" is a good basis for all these things built on top of HTTP, and I did see there is some of that present
<doublec> The last time I ran coverity on the pony codebase the results were pretty minor
<SeanTAllen> TwoNotes to echo sylvanc, net/http should be replaced rather than worked with. It was a proof of concept and a teaching tool.
aturley has joined #ponylang
<TwoNotes> There is a full-featured lightweight HTTP package in Erlang that could be a basis, https://github.com/ninenines/cowboy
<TwoNotes> At least, architecturally, with all concepts translated into Pony-ways
aturley has quit [Ping timeout: 260 seconds]
trapped has joined #ponylang
<SeanTAllen> i prefer yaws amongst the erlang http servers but to each their own. any better http server would be a good thing.
jemc has joined #ponylang
Praetonus has joined #ponylang
jeremyheiler has quit [Read error: Connection reset by peer]
<doublec> I wonder if the akka http servers, which are actor based, are a useful inspiration
jeremyheiler has joined #ponylang
<doublec> that akka-stream/http url is out of date: http://doc.akka.io/docs/akka/2.4.3/scala/http/introduction.html#philosophy
<TwoNotes> As long as it is full-featured, with streaming and WebSocket support...
<doublec> TwoNotes: this actor based scala one is one is http://sockoweb.org/features.html
<doublec> Probably better to design a pony one from scratch rather than port
Matthias247 has quit [Read error: Connection reset by peer]
<TwoNotes> The "routing DSL" used by some of those projects gets a bit complicated.
SilverKey has joined #ponylang
SilverKey has quit [Quit: Halted.]
SilverKey has joined #ponylang
aturley has joined #ponylang
lispmeister has quit [Quit: My Mac has gone to sleep. ZZZzzz…]
trapped has quit [Read error: Connection reset by peer]
aturley has quit [Ping timeout: 246 seconds]
emancu has quit []
jemc has quit [Ping timeout: 250 seconds]
unbalancedparen has joined #ponylang
aturley has joined #ponylang
aturley has quit [Ping timeout: 260 seconds]
ashp has left #ponylang [#ponylang]
graaff has quit [Quit: Leaving]
SilverKey has quit [Quit: Halted.]
SilverKey has joined #ponylang
<TwoNotes> doublec, I do like the Akka philosophy of being a 'toolkit' rather than an 'application server'
aturley has joined #ponylang
trapped has joined #ponylang
aturley has quit [Ping timeout: 240 seconds]
pulpfiction has quit [Disconnected by services]
Matthias247 has joined #ponylang
aturley has joined #ponylang
aturley has quit [Ping timeout: 260 seconds]
tm-exa has joined #ponylang
aturley has joined #ponylang
aturley has quit [Ping timeout: 240 seconds]
TwoNotes has quit [Quit: Leaving.]
SirWillem has joined #ponylang
<SirWillem> Hey Everybody! I want to introduce myself. I am a future Maryland Phd Student studying PL. I am working on a simulator at IBM for their PowerPC architecture. I had tried using Go and could not get the performance among other issues. I am very excited by Pony and have been reading it non-stop since I found it Thursday. I had also been working on the Go llvm compiler attempting to add a functional feature to Go, but the
<SirWillem> compiler still needed to be compiled by gcc and took forever. I am very excited for the LLVM and this new language.
<SeanTAllen> Welcome SirWillem, if you need any help. Let us know and we'll see what we can do. Plenty of rough edges still. In addition to IRC, the user mailing list can be good for getting answers and the dev mailing list if you are interested in working on Pony itself. https://pony.groups.io/g/user and https://pony.groups.io/g/dev respectively
<SirWillem> Thanks I'll add them both. I have studied concurrency in both an OS, realtime OS and hardware level. My first project is to develop a parallel quicksort. Has this been done yet?
<SeanTAllen> Not that I am aware of
<SirWillem> Cool, also I just noticed that you didn't have fedora in your READme, does that mean that it is not yet supported? I have llvm installed from the distro.
<SeanTAllen> it should probably work
<SeanTAllen> that would just mean that no one has reported and problem and solution with the basic linux installation instructions
SilverKey has quit [Quit: Halted.]
aturley has joined #ponylang
tm-exa has quit [Quit: Computer has gone to sleep]
aturley has quit [Ping timeout: 244 seconds]
prettyvanilla has quit [Quit: Konversation terminated!]
prettyvanilla has joined #ponylang
SilverKey has joined #ponylang
Praetonus has quit [Quit: Leaving]
emancu has joined #ponylang
trapped has quit [Read error: Connection reset by peer]
SilverKey has quit [Quit: Halted.]
SirWillem has quit [Ping timeout: 252 seconds]
aturley has joined #ponylang
SilverKey has joined #ponylang
aturley has quit [Ping timeout: 265 seconds]
Matthias247 has quit [Read error: Connection reset by peer]
<mcguire> SirWillem, if you're still here, I've got a sequential quicksort at https://github.com/tmmcguire/rust-toys/blob/master/pony/anagrams/lib2.pony