Camelia, the Perl 6 bug

IRC log for #mojo, 2011-11-11

| Channels | #mojo index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:08 stephen1 joined #mojo
00:13 andrefs joined #mojo
00:29 xaka sri: would it be possible to add some events like "tick", "cancel", etc. to timer and recurring? the calls could return "handler" object with such methods
00:43 sherman joined #mojo
00:44 sherman Hey all
00:44 xaka hi
00:44 purl hola, xaka.
00:45 xaka purl: ground yourself
00:45 purl xaka: excuse me?
00:45 sherman Could anyone help me figure out an issue I'm having  with request data?
00:46 xaka sherman: only if we know what the issue ;)
00:46 sherman I'm not sure how to access a file when sent via POST/PUT like so:
00:48 sherman curl -H 'Accept: text/html' -T 'file' http://mojo/file_op
00:49 sherman or curl -F file=@file http://mojo/file_op
00:56 xaka sherman: self->req->uploads => [Mojo::Upload, ...]
00:57 xaka sherman: http://mojolicio.us/perldoc/Mojo/Upload
00:58 sherman Thanks man, I'll have a read :)
00:59 xaka dunno what it's not a part of "params" because it's a bit difficult to get access to the file which you're expecting
00:59 xaka does anybody know why multipart uploads are not part of params?
01:02 sherman IDK, I'm trying to write a 'snoop' service that'll spit out the method/params/etc...
01:07 gshank joined #mojo
01:08 sherman xaka: We're writing some web services and the devs and testers are reading the spec differently. I want them to be able to see a nice representation of the expected request for each piece of functionality, and this will let them try their test requests and make sure they match what's expected
01:09 sherman xaka: but as you say, I'm finding it a little trickier than expected to access all the request data I need from each request type sometimes...
01:14 SmokeMachine joined #mojo
01:20 ispy_ joined #mojo
01:21 ispy_ Hi, does anyone know how I can do a string comparison with <%= title %> inside of a Mojolicious::Template page? I've set title to 'pagename' but would like to be able to use this variable in Perl expressions...
01:23 sherman do you want to display something conditionally?
01:24 sherman what do you want to compare, and what do you want to do as a result of the comparison?
01:27 ispy_ Well, here's what I want to do...
01:27 ispy_ in my default.html.ep, I'd like to get the value of title, and use it in a Perl expression.
01:27 ispy_ Not sure how... that's really what I'm trying to do.
01:28 ispy_ I set title 'pagename' in my templates... and snag the value for each template in default.html.ep as <%= title %>.  Well, in default.html.ep I'd like to display a few things, based on the value of <%= title %>, except I don't know how to snag it inside of a <% %> block...
01:29 sherman from within your template, you should be able to access the parameters as if it's a sub, so to get an array of the template's arguments, you would:
01:30 sherman <% my $title = shift; %>
01:31 sherman or <% my ($arg1, $arg2) = @_; %>
01:31 ispy_ so, 'layout' is an argument as well?
01:31 ispy_ I'm gonna give this a spin...
01:32 ispy_ Hey, thanks man...
01:32 ispy_ I've been curious about this one. :)
02:01 ispy__ joined #mojo
02:11 abra joined #mojo
02:18 lammel2 joined #mojo
02:27 ispy_ joined #mojo
02:42 xaka joined #mojo
02:52 sherman left #mojo
02:55 tempire TO THE MOJOLICIOUS!!!!
03:00 ispy__ joined #mojo
03:03 lammel2 t
03:03 lammel2 left #mojo
03:26 ispy_ joined #mojo
03:37 ispy__ joined #mojo
03:46 ispy_ joined #mojo
04:18 ispy__ joined #mojo
04:25 ispy_ joined #mojo
04:32 xaka joined #mojo
04:56 ispy__ joined #mojo
05:17 kmx joined #mojo
05:25 ispy_ joined #mojo
05:50 ispy__ joined #mojo
06:02 ispy_ joined #mojo
06:18 ispy__ joined #mojo
06:42 Vandal joined #mojo
06:53 Eugene joined #mojo
07:20 marcus tempire: LESS FUN!
07:20 purl less fun is when the other people in the dream don't listen
07:25 batman joined #mojo
07:25 sugar joined #mojo
07:30 Foxcool joined #mojo
07:30 bzero joined #mojo
07:36 crab too much fun is not recommended
07:37 marcus defun?
07:37 purl i guess defun is clearly the fun-removal operator.
07:38 trone_ joined #mojo
07:42 xoma joined #mojo
07:46 esskar joined #mojo
07:59 ispy_ joined #mojo
08:10 cosmincx joined #mojo
08:10 judofyr joined #mojo
08:14 f00li5h joined #mojo
08:28 sri xaka: there will be no new ioloop events in the near future
08:29 f00li5h joined #mojo
08:39 marcus dora dora dora the exploder!
08:44 tempire shnikies
08:44 tempire http://shapecatcher.com/
08:54 cosimo joined #mojo
08:54 ispy__ joined #mojo
09:03 berov joined #mojo
09:12 tholen_ joined #mojo
09:16 cosmincx joined #mojo
09:23 Eugene joined #mojo
09:25 ispy_ joined #mojo
09:27 judofyr sri: have you considered doing the reloading (in Morbo) when at a browser request?
09:28 judofyr sri: or at least bind the port to something that just waits until the app has reloaded?
09:41 spleenjack joined #mojo
09:43 ispy__ joined #mojo
09:43 lammel2 joined #mojo
09:44 sri judofyr: if you tell me how to do that portably
09:46 judofyr sri: can you make an app connect to an already bound port? just make it listen to a handler?
09:47 memowe joined #mojo
09:49 sri judofyr: you tell me
09:50 sri i've been fighting with crazy portability issues for far too long
09:50 sri especially on windows it's a nightmare
09:50 judofyr ah
09:50 sri quite sure at this point in time morbo is the best restarter perl has to offer
09:51 judofyr I don't doubt it
09:51 judofyr but it still annoys me to Cmd-R and get a "could not connect" in the browser
09:51 judofyr but I have no idea how to actually make it work :(
09:51 judofyr reloading is hard
09:52 sri making it work on one platform is easy, see hypnotoad
09:52 sri reloading portably… it's a miracle morbo actually works
10:07 ispy_ joined #mojo
10:08 chansen joined #mojo
10:08 sri does ruby have a reloader that works on windows?
10:08 * sri vaguely remembers that the good ones were unix only
10:11 judofyr sri: Camping's reloader works on Windows
10:12 judofyr but that's because it essentially does a Object.send :remove_const, App
10:12 judofyr and simply redirects all requests to the new APp
10:12 judofyr App*
10:13 judofyr I guess it's easier in Perl because of namespaces
10:13 judofyr if you do `load "app.rb"` in Ruby, it loads it into main
10:16 ispy_ joined #mojo
10:19 sri reloading inside the same process sucks, we've done that in 1.0, too much leaking… very bad experience
10:21 ispy__ joined #mojo
10:23 Vandal what are you talkin about?
10:23 Vandal morbo reloads automaticly
10:24 sri before morbo there was "daemon --reload"
10:25 Vandal or I don't understant something
10:26 judofyr sri: Camping only does reloading on a request (it doesn't monitor files; it checks them rather at every request)
10:26 judofyr sri: I've had problems trying to get the same thing to work with different processes nicely at Windows
10:27 judofyr everything is so much easier with fork :/
10:30 andrefs joined #mojo
10:33 sri yea, perl at least has a quirky fork emulation for windows
10:34 sri guess that's another + point for your talk :)
10:34 sri compared to other languages perl portability is rather good
10:39 crab i get "couldn't connect"s with morbo in unix too
10:39 crab though i wasn't aware there was any code to try to avoid that
10:39 sri there isn't
10:40 sri and i doubt it's possible portably
10:42 crab ah
10:42 sri after all we don't just handle plain old request/response cycles… but also long polling, websockets and other event loop stuff
10:42 crab i always just hit reload again and try not to think about it
10:44 ispy_ joined #mojo
10:44 sri if all you have to worry about is one request at a time you can just accept connections in the master and fork workers dynamically that take over the connection completely
11:00 crab oleber often wants strange things
11:19 Foxcool joined #mojo
11:23 tholen_ joined #mojo
11:24 ispy__ joined #mojo
11:27 random left #mojo
11:33 Foxcool joined #mojo
11:34 ispy_ joined #mojo
11:39 ispy__ joined #mojo
11:44 GitHub189 joined #mojo
11:44 GitHub189 [mojo] kraih pushed 1 new commit to master: http://git.io/v-0dCg
11:44 GitHub189 [mojo/master] better descriptions for object constructors with events - Sebastian Riedel
11:44 GitHub189 left #mojo
11:44 ispy_ joined #mojo
11:49 pl0p joined #mojo
11:51 GitHub75 joined #mojo
11:51 GitHub75 [mojo] kraih pushed 1 new commit to master: http://git.io/YRcUUw
11:51 GitHub75 [mojo/master] better description for on method - Sebastian Riedel
11:51 GitHub75 left #mojo
11:52 sri not sure if we should follow the jquery api
11:52 sri http://api.jquery.com/off/
11:52 marcus off('fuck')
11:53 sri $tx->res->content->off('read')->on(read => sub {...})
11:53 sri currently it's $tx->res->content->unsubscribe('read')->on(read => sub {...})
11:57 ispy__ joined #mojo
12:04 sri kinda like $tx->res->content->no('read')->on(read => sub {...})
12:06 marcus ->no('woman')->no('cry)
12:08 sri you're doing it all wrong!
12:10 ispy_ joined #mojo
12:11 Psyche^ joined #mojo
12:11 marcus down, not across?
12:11 purl i think down, not across is how you're supposed to slice your wrists.
12:12 MojoGuest260 joined #mojo
12:12 MojoGuest260 From: http://www.google.de/url?sa=t&amp;rct=j&amp;q​=websockt%20irc&amp;source=web&amp;cd=7&amp;v​ed=0CFgQFjAG&amp;url=http%3A%2F%2Fdev.xantus.​org%2F&amp;ei=LBG9Tvv1MI-dOvrV5dYB&amp;usg=AF​QjCNGw6nZv0wO42uzUnHhWcD0vcKNULg&amp;cad=rja (1 hits)
12:14 ispy__ joined #mojo
12:14 MojoGuest260 guess nobody tried to implement a backlog in this irc client? ;)
12:15 sri then again, jquery on/off is very different with its selectors
12:16 MojoGuest389 joined #mojo
12:16 MojoGuest389 From: http://news.ycombinator.com/item?id=1277067 (93 hits)
12:16 MojoGuest99 joined #mojo
12:19 ispy_ joined #mojo
12:19 GabrielVieira joined #mojo
12:28 GitHub185 joined #mojo
12:28 GitHub185 [mojo] kraih pushed 1 new commit to master: http://git.io/CrLYjg
12:28 GitHub185 [mojo/master] better streaming recipes - Sebastian Riedel
12:28 GitHub185 left #mojo
12:39 crab streaming recipes, yum
12:47 ispy__ joined #mojo
12:49 * marcus is in the market for som steaming recipes
12:50 judofyr I read screaming recipes
12:50 judofyr sounded kinda creepy
13:03 noganex_ joined #mojo
13:15 KayT3 joined #mojo
13:28 sri screaming recipe… MMMMMMMMMMMMMMMMM!!!1
13:29 crab that sounds more like a moan than a scream
13:32 MojoGuest48 joined #mojo
13:32 MojoGuest48 From: http://blog.kraih.com/perl-is-ready-for-html5 (23 hits)
13:33 SmokeMachine joined #mojo
13:33 sri https://developer.mozilla.org/en/HTML/HTML5#Techn​ologies_often_called_part_of_HTML5_that_aren%27t
13:33 sri hmm, all the good stuff is not html5
13:35 sri funny though that even oreilly calls their book "HTML5 Geolocation"
13:37 sri hmmmm
13:37 sri mozilla is wrong
13:38 sri http://www.w3.org/html/logo/ # w3c says css3 is part of html5
13:38 sri and some of the others too
13:39 sri actually, thos ebadges cover all
13:40 abra joined #mojo
13:42 MojoGuest48 left #mojo
13:43 andrefs joined #mojo
13:45 MojoGuest909 joined #mojo
13:45 MojoGuest909 From: http://www.reddit.com/r/html​5/comments/bt76k/irc_client/ (3 hits)
14:01 elb0w_ If I want to handle > 50k users with Mojo how many workers do you think I need?
14:02 elb0w_ Do the web interface first
14:02 elb0w_ er
14:02 batman have you thought about using cloudflare?
14:02 mattastrophe joined #mojo
14:03 elb0w_ interesting
14:03 elb0w_ is it expensive?
14:03 jnap joined #mojo
14:03 elb0w_ they scale your systems
14:03 elb0w_ ?
14:04 batman elb0w_: look here about "expensive" https://www.cloudflare.com/plans
14:04 batman they serve static content, so you don't have to
14:04 elb0w_ yeah I see
14:04 elb0w_ but oh
14:04 elb0w_ its all dynamic
14:04 elb0w_ Its a backend for a mobile app
14:04 batman don't you have _any_ images or javascript?
14:05 batman i think you should reconsider if -everything- is dynamic...
14:06 elb0w_ Its all json
14:07 batman ok
14:07 sri workers are for scaling cpu load
14:08 sri the limiting factor for massive concurency is always memory
14:09 elb0w_ ok cool
14:09 sri just don't do blocking stuff, or you're screwed no matter what
14:09 elb0w_ Just db requests really
14:10 sri DBI?
14:10 elb0w_ yeah
14:10 sri you're screwed then
14:10 elb0w_ Too slow?
14:10 sri every single DBI call blocks the whole process
14:10 elb0w_ oh nice
14:10 elb0w_ wtf do I do for datat then?
14:11 elb0w_ would redis play nicer?
14:11 sri only with a non blocking client
14:11 elb0w_ are there any?
14:11 batman sri: got any nonblocking examples with some sort of db backend?
14:12 elb0w_ yeah I would appreciate that
14:12 sri batman: define db
14:12 batman elb0w_: do you do a lot of reads or writes?
14:12 batman sri: any kind of sql/nosql backend :)
14:12 elb0w_ more reads than writes
14:12 batman sri: just to see an example.
14:12 ispy_ joined #mojo
14:12 sri i'll have some for mongodb soon(™)
14:12 batman ok.
14:12 judofyr sri: not postgresql? :(
14:13 batman elb0w_: you could set up memcached to retrieve data faster (if you have some sort of key you can look data up on...)
14:13 sri but DBI is your worrst enemy if you want to scale for massive concurrecy
14:13 sri judofyr: nope
14:13 sri judofyr: i would need a custom postgresql client
14:13 judofyr sri: ah, there's not a non-blocking client?
14:14 * crab looks guilty
14:14 sri i think the DBI adapter for postgresql does non-blocking, but you have to poll or so
14:14 elb0w_ sri: so pretty much im screwed atm?
14:14 sri elb0w_: scaling is hard
14:14 crab yes, DBD::Pg does crappy poll-based async (because DBI doesn't really support async, and can't reasonably be made to)
14:14 batman elb0w_: benchmark it or just put it out there to figure out the answer to that question :P
14:15 sri yea, to do non-blocking DBI you basically need an external process pool, like AnyEvent::DBI uses, but it sucks no matter what
14:15 elb0w_ well this sucks
14:15 crab (i actually have a non-blocking postgresql client module based on anyevent, but it's like sri's mongodb client.)
14:15 crab i figure nobody will use it because it can't be dbi-compatible, so i never finished it
14:16 sri you could also use a separate hypnotoad configured for 1 connection per worker and offload DBI calls to it
14:16 judofyr sri: is there anything like Fibers in Perl?
14:16 judofyr sri: or is everything callback-based?
14:17 sri there's a cpan module named Coro
14:17 sri but it doesn't help with DBI in any way
14:18 crab DBI is pretty complex, it's hard to make changes to it. i did consider trying to extend it somehow to make it possible to do sensible async, but gave up after talking to tim bunce a bit.
14:19 sri by choosing DBI you've basically chosen a one connection per process concurrency model
14:19 elb0w_ I needed it for the geoindexing
14:19 elb0w_ I was looking at mongo untill all this negative publicity
14:19 crab sri: do you think anyone would find an AnyEvent::Postgres useful?
14:19 sri crab: yes
14:20 batman elb0w_: but why not retrieve the data from backend, stuff it into memcache and retrieve it from memcache later on?
14:20 sri i was surprised by how simple the PostgreSQL wire protocol actually is
14:20 elb0w_ batman: yeah, im probably going to use redis
14:20 elb0w_ not memcache
14:21 sri since mojolicious has a non-blocking http client built in you can also use any database with a REST api
14:21 crab maybe i should finish ae::pg then.
14:22 sri one more thing, before choosing a database make sure you actually understand how that database scales
14:22 crab sri: would it be mean of me to tell oleber to use an http client to retrieve results from his json api?
14:22 elb0w_ sri: what would you use if you wanted to use mojo as a backend for a chatroom
14:22 sri 50k concurrent database connections might not actually be a good idea
14:22 elb0w_ I am torn now between redis/mongodb
14:22 sri elb0w_: redis
14:22 elb0w_ Is there a mojo plugin for redis you would use?
14:23 crab elb0w: i'd do it in-memory :-)
14:23 sri just e aware of the limitations of redis
14:23 elb0w_ I am a novice with redis. Only real limitation I know is there is no cluster interface yet
14:23 elb0w_ I have to write that myself
14:23 crab just elb0w grease, eh
14:24 ispy_ joined #mojo
14:24 sri high frequency message passing with database persistence is a really hard problem
14:26 sri anyway, make sure to actually test your platform, there is no silver bullet
14:26 elb0w_ Yea
14:27 sri maybe even a 2-tier approach with DBI is enough for your specific problem
14:28 elb0w_ When is your mongo client coming out lol
14:28 sri when i have time, it's still a spare spare time project
14:28 elb0w_ damn, going to have vc meetings in a couple months
14:29 elb0w_ can probably find a solution to this by then
14:29 batman sri: is it on github?
14:29 sri mongodb might not be the right solution anyway, depends on your use case
14:29 crab i'd actually consider doing it in-memory and write stuff to the db in big batches in te background
14:30 sri batman: nope
14:30 batman ok. so there's no way to contribute?
14:30 sri batman: nope
14:31 elb0w_ so if I block in one sub itll block the whole webserver for others the
14:31 elb0w_ then*
14:32 sri the worker process
14:32 elb0w_ ok
14:32 sri hypnotoad is very configurable
14:32 sri you could theoretically turn it into an apache, with one client connection per worker and a pool of 100+
14:33 sri but the memory cost goes up significantly
14:33 elb0w_ thats what im doing right now
14:33 elb0w_ could I use a semaphore and create a pool of connections per worker?
14:35 ispy__ joined #mojo
14:35 batman sri: shouldn't most of the memory be shared if you load the modules in the main process?
14:36 sri it's still a lot more than if you went non-blocking
14:36 batman ok
14:36 sri mb vs kb
14:36 elb0w_ Will a request get delegated to a worker thats blocked?
14:36 sri no, but there might be active ones in the same process already
14:37 elb0w_ Sorry I dont follow that, could you elaborate?
14:38 sri blocking in a non-blocking environment is bad, no matter how you twist it
14:38 sri most of the time it doesn't actually matter much, but if you want to seriously scale like up to 50k concurrent users it starts to matter
14:39 elb0w_ I guess if I get to 50k concurrent users
14:39 batman "50k concurrent users" ?
14:39 batman sound like A LOT
14:39 sri maybe at 50k users you should hire experts :)
14:39 elb0w_ yeah
14:40 elb0w_ ill sent you a blank check sri and a plane ticket to ny
14:40 batman sri: exactly
14:40 elb0w_ :P
14:40 * sri can be bought
14:40 * elb0w_ will not forget that
14:40 elb0w_ Showed the app to two pretty big names on wall st and they liked it
14:40 elb0w_ going to go find us some vc's to meet with
14:40 elb0w_ Be cool to get mojo some publicity
14:40 sri i just assumed you actually had to scale up to 50k users right now ;p
14:41 elb0w_ No I just dont want to go, oh shit
14:41 sri don't overthink prototypes
14:42 elb0w_ Yeah I mean for the start I just think ill use nginx to load balance and handle ssl and launch ec2 instances with workers
14:42 elb0w_ and use mysql replication with mysql proxy to load balance requests
14:42 abra joined #mojo
14:42 elb0w_ I really want to use something like redis or mongo though
14:42 batman elb0w_: i don't think mark zuckerberg thought he would have 500.000.000.000 users when he started writing facebook...
14:43 judofyr elb0w_: you simply can't design a system that will scale all the way up. just make sure that when you design it, it can scale up to 10x the users.
14:43 elb0w_ batman: yeah haha good point
14:43 judofyr and then deal with the problems as they come up
14:43 batman judofyr: exactly
14:43 judofyr it's really hard to predict where the bottlenecks would be in a prototype
14:44 judofyr beside, maybe the business idea will change too? why "waste" time creating something that might change in the future? :)
14:44 andrefs joined #mojo
14:50 Vandal how to set default value for template variable in case it won't be defined in action sub?
14:50 batman Vandal: lite app?
14:50 Vandal no
14:51 batman sub startup { ... $self->defaults(foo => 123); }
14:51 crab batman: mark zuckerberg has 500 billion users?
14:51 crab i didn't know facebook was on other planets too
14:51 batman where foo is the template variable
14:51 batman crab: s/000/ :D
14:52 batman Vandal: ^^ got it?
14:52 batman Vandal: defaults() will set defaults for stash()...
14:52 Vandal batman, yes, thank you
14:53 batman np
14:57 MojoGuest909 left #mojo
14:58 andrefs joined #mojo
15:02 metaperl joined #mojo
15:11 metaperl|2 joined #mojo
15:16 jfuller joined #mojo
15:18 jfuller I'm using Mojo::UserAgent to do some testing of a site. And, I have a situation where $response->json is not being built for a json response. The response is being served as application/json, and the body is valid json. Are there any other things it looks for?
15:22 judofyr jfuller: try $j = Mojo::JSON->new; $j->decode($tx->res->content) or die $j->error
15:22 judofyr and see what $j->error says
15:23 judofyr or is it ->res->body?
15:33 jfuller judofyr: Good call, apparently there was a blank line being server in the response that it choked on (its ->res->body btw)
15:42 judofyr sri: maybe Mojo::Message#json should raise an error when the JSON is invalid?
15:45 batman i hope that will never happen :(
15:45 batman would be a major api change...
15:48 judofyr it should at least be a way to get the error
15:49 sri judofyr: how?
15:50 judofyr sri: not sure… it just feels weird to get an undef and no easy way to add a "or die …" after it
15:50 sri i don't care about problems, just solutions
15:51 sri anyway, $message->json was never meant to be the end all answer to all things JSON
15:52 sri it was never meant to validate, just tell you if something smells like JSON or not
15:53 GitHub13 joined #mojo
15:53 GitHub13 [mojo] kraih pushed 1 new commit to master: http://git.io/lIH8cg
15:53 GitHub13 [mojo/master] added experimental charset method to Mojo::Content - Sebastian Riedel
15:53 GitHub13 left #mojo
15:55 andrefs joined #mojo
16:01 yko joined #mojo
16:20 vel joined #mojo
16:41 SmokeMachine joined #mojo
16:52 jfuller sri: I think it works fine as is, it just wasn't immediately apparent how to make my JSON smell like JSON ;-)
16:55 tholen_ joined #mojo
17:11 GitHub62 joined #mojo
17:11 GitHub62 [mojo] kraih pushed 1 new commit to master: http://git.io/XwnSLw
17:11 GitHub62 [mojo/master] many small documentation tweaks - Sebastian Riedel
17:11 GitHub62 left #mojo
17:35 sri hmm… new slogan for the Mojo layer… "a consistent stdlib for web development with Perl"
17:36 andrefs joined #mojo
17:48 batman joined #mojo
17:52 elb0w_ Youll turn off people who dont know what stdlib is
17:55 tty234 joined #mojo
18:15 Foxcool joined #mojo
18:27 grim_fandango joined #mojo
18:28 SmokeMachine_ joined #mojo
18:37 elb0w_ rofl
18:42 marcus joined #mojo
18:50 Patterner and people with NIH syndrome.
18:54 sri Mojo - DOES WEB STUFFS ASYNC YO!
18:54 sri tv taught me that's how most americans talk
18:56 trone joined #mojo
19:14 elb0w_ Apparently in cuba they think the american language sounds cool
19:23 mire_ joined #mojo
19:35 dotan_ joined #mojo
19:35 dotan_ left #mojo
19:45 sugar joined #mojo
19:46 marty Unless you are in the deep south, then it's - Mojo- AINT NO THANG IT CAINT DO, DANG!
19:46 * sri takes notes
19:47 tempire no
19:47 tempire Yo dawn I heard you like async
19:47 tempire That's how 'mericans talk
19:47 sri who's dawn?
19:47 purl somebody said dawn was rising over a fucked-up site
19:48 tempire a dog on transexual friday
19:48 tempire dawg, even
19:48 tempire apparently
19:48 purl That's a great theory.
19:53 GabrielVieira joined #mojo
19:56 Eugene joined #mojo
19:59 andrefs joined #mojo
20:16 MojoGuest631 joined #mojo
20:16 MojoGuest631 From: http://www.google.com.ua/url?sa=t&amp;rct=j&amp​;q=extjs%20websocket&amp;source=web&amp;cd=3&am​p;sqi=2&amp;ved=0CCkQFjAC&amp;url=http%3A%2F%2F​dev.xantus.org%2F&amp;ei=uYG9TuzbO83LswbXiL2PAw​&amp;usg=AFQjCNGw6nZv0wO42uzUnHhWcD0vcKNULg (1 hits)
20:16 MojoGuest631 xcxb
20:32 andrefs joined #mojo
20:33 jnap left #mojo
20:38 gabriel joined #mojo
20:46 MojoGuest529 joined #mojo
20:46 MojoGuest529 From: http://www.google.com/url?sa=t&amp;rct=j&am​p;q=&amp;esrc=s&amp;source=web&amp;cd=4&amp​;ved=0CDMQFjAD&amp;url=http%3A%2F%2Fdev.xan​tus.org%2F&amp;ei=p4m9Tq_UNY_t-gaz7pGHBQ&am​p;usg=AFQjCNGw6nZv0wO42uzUnHhWcD0vcKNULg (1 hits)
20:47 MojoGuest529 left #mojo
20:52 GabrielVieira joined #mojo
21:33 rdesfo joined #mojo
21:53 andrefs joined #mojo
22:00 diogo joined #mojo
22:05 rdesfo left #mojo
22:10 mercutioviz joined #mojo
22:32 metaperl joined #mojo
22:34 sri http://pastie.org/2849614 # wonder if a "write" event like this makes sense for debugging
22:34 sri you can already subscribe to "read" to get all raw incoming data
22:35 sri write would be emitted for every written chunk
22:40 diogo joined #mojo
22:44 sri http://pastie.org/2849649 # updated slightly
22:45 tempire seems a bit confusing
22:46 tempire I like the idea, though.
22:46 MojoGuest846 joined #mojo
22:46 MojoGuest846 left #mojo
22:48 sri tempire: what confuses you about it?
22:50 sri the name "write"?
22:51 sri could just as well be called "flush" or so
22:52 sri i love that events without subscribers cost almost nothing when they are emitted
23:17 tempire I'm not confused, I'm just remembering how $ua->ioloop->anything confused the !@#$ out of me when I first started looking at it.
23:19 tempire the name of the event "write" is perfectly fine
23:20 sri tempire: confusion about the api or just general event loops?
23:21 tempire both.  or either.  It's difficult to separate the two.
23:21 * tempire waves hands with no solutions
23:21 sri i'm not happy with the ioloop api either, maybe it could be improved
23:22 sri i've extracted most of the actual code into smaller modules, now it's mostly just a backcompat layer
23:33 tempire judofyr++
23:33 tempire http://d.pr/pCI2
23:35 tempire wrong colors, though.
23:35 tempire and no unicorns.
23:52 sri wonder if the Mojo::IOLoop synopsis should be removed
23:52 sri after all it's not a end-user api
23:57 tempire Does it hurt to leave it?
23:58 tempire Seems like it would only  help people trying to grok the whole machine

| Channels | #mojo index | Today | | Search | Google Search | Plain-Text | summary