Camelia, the Perl 6 bug

IRC log for #mojo, 2012-09-04

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

All times shown according to UTC.

Time Nick Message
00:08 mandreacchio joined #mojo
00:08 Antisoche joined #mojo
00:27 noganex_ joined #mojo
00:50 laouji joined #mojo
00:53 scott joined #mojo
00:55 noganex_ joined #mojo
00:57 Averna1 joined #mojo
01:00 tardisx joined #mojo
01:09 Averna joined #mojo
02:01 d4rkie joined #mojo
02:11 noganex_ joined #mojo
02:16 abra joined #mojo
02:38 alexeiras joined #mojo
02:45 davido joined #mojo
02:56 good_news_everyone joined #mojo
02:56 good_news_everyone [mojo] kraih pushed 1 new commit to master: http://git.io/gnqzjg
02:56 good_news_everyone [mojo/master] small optimizations - Sebastian Riedel
02:56 good_news_everyone left #mojo
03:29 mandreacchio joined #mojo
03:34 heytrav joined #mojo
03:35 nour shmm
03:35 nour i keep writing ->over( authenticated => 1 ) on my routes---is there a way to shortcut this instruction to a bridge or something
03:36 crab yes.
03:36 crab but the matching will work differently.
03:36 crab i.e. you can no longer have authenticated and unauthenticated handlers for the same route. you'll have just the one handler, but it won't be reached if the bridge denies access.
03:37 nour thats a shortcoming?
03:37 nour or a feature
03:37 purl a feature is see bug
03:37 crab it's just a fact.
03:38 crab bridges work in a certain way, and over() works in a different way. make of that what you will.
03:43 nour if i simply want a single sub-routine to be ran for each route what should i use
03:43 nour bridge or some other method
03:43 crab a bridge.
03:43 purl it has been said that a bridge is EVERYBODY PANIC! or complicated
03:44 crab you can always return 1 from it if you care about something other than access control.
03:44 nour but bridges have the disadvantage of not playing nicely with ->over
03:46 sri ->over is just some meta data attached to a bridge or route
03:48 sri the same way a pattern like /foo is just meta data attached to a bridge/route
03:51 nour where's my +o
03:52 sri i lost it :/
04:00 crab noour?
04:00 nour yo
04:38 mandreacchio joined #mojo
04:48 mandreacchio joined #mojo
04:54 dross thankfully I don't need a penis extension, I'm happy with what I have :3
04:54 dross (dark jab at +o_
05:11 mandreacchio joined #mojo
05:27 dross >.<
05:27 dross I should make some DSL cards for all the template languages I use
05:28 dross are there any available in the community for the templating toolkits for perl?
05:29 dross between, Django, RoR, :3 FreeMarker, Mojo, Catalyst and GWT, my brain is getting full
05:30 crab what is a DSL card?
05:42 fhelmber_ joined #mojo
05:43 dross domain specific language :|
05:44 dross I deal with quite a bit of different langauges, toolkits, networking, vmware, system administration
05:44 dross my brain is full of fuck :)
05:47 dross *full as fuck
05:49 dross crab: a DSL flash card :3
05:59 laouji joined #mojo
06:01 marcus full of fuck sounds better
06:02 * marcus slaps dross with his penis extension. # language
06:03 dross :3 the slap is noted
06:03 dross and today when I get up, I get another dose of havoc
06:03 dross >.<
06:05 marcus dross: the rapper?
06:10 mandreacchio joined #mojo
06:40 ghandi joined #mojo
06:59 Vandal joined #mojo
07:04 cosmincx joined #mojo
07:05 spleenjack joined #mojo
07:33 xaka joined #mojo
07:53 ghandmann joined #mojo
07:59 batman joined #mojo
08:22 azawawi joined #mojo
08:27 alexeiras joined #mojo
08:27 mandreacchio_ joined #mojo
08:29 pau4o joined #mojo
08:36 mandreacchio joined #mojo
08:51 azawawi joined #mojo
08:51 hipyhop joined #mojo
08:55 spleenjack joined #mojo
09:01 vifo joined #mojo
09:19 hipyhop joined #mojo
09:48 memowe \o/
10:27 mandreacchio joined #mojo
10:38 daxim joined #mojo
10:53 rem_lex| joined #mojo
11:05 vifo Hi folks!
11:08 marcus hi vifo!
11:09 azawawi left #mojo
11:20 vifo I am getting nuts with Plack/Mojo. I've setup Apache2 <Location /> to pass all request to a Mojo app. Still I'd like Apache2 to deliver static content, without calling the app. Any ideas how to do this? So far I have: http://pastebin.com/Nw6wM8eM
11:21 vifo But this is not working properly. The app gets called for every request.
11:24 hipyhop joined #mojo
11:36 Lucas1 joined #mojo
11:37 ghandi joined #mojo
11:53 asarch joined #mojo
11:53 bpmedley vifo: Why the Rewrites/
11:57 nour if i've got a controller which is all caps e.g. XHR what do i use when defining routes? controller => 'xhr' looks for a controller called Xhr
11:58 nour figured it out
11:58 nour controller => 'XHR'
11:59 crab vifo: configure caching instead
12:12 vifo crab: i'd like to understand, why this does not work in the first place :)
12:12 bpmedley vifo: http://pastebin.com/hqhwZpg5
12:12 vifo crab: caching is still an option, but why should I?
12:13 vifo bpmedley: thanks, this should do the job
12:16 vifo bpmedley: did try to "skip" the "/" location with rewrites, that's why. but this apparently does not work as expected
12:18 bpmedley vifo: gotcha
12:23 tadamo joined #mojo
12:24 tadamo joined #mojo
12:30 d4rkie joined #mojo
12:31 ryozi joined #mojo
12:44 smpb joined #mojo
12:52 mandreacchio_ joined #mojo
13:09 atrodo joined #mojo
13:11 hide joined #mojo
13:21 nicomen anyone know a plugin to implement an api key system?
13:32 bluescreen joined #mojo
13:34 CromeDome joined #mojo
13:44 whee joined #mojo
14:05 gryphon joined #mojo
14:14 batman anyway to make Mojo::DOM keep <td></td> instead of converting it to <td /> ?
14:18 hipyhop joined #mojo
14:19 nicomen batman: hairy but might work: try setting $Mojo::DOM::HTML::VOID{td} = 1
14:19 batman nicomen: it's a lexical variable.
14:20 batman just looking at it...
14:20 purl somebody said just looking at it was like staring at medusa
14:20 batman guess it's not possible
14:20 nicomen are you telling me it's not possible to override a lexical variable?
14:20 nicomen overload the whole module then ;D
14:21 nicomen would be interesting to be able to replace the xml/html parser at least
14:21 nicomen if you want something stricter/less strict/faster/slower
14:22 batman nicomen: it's not impossible. just hairy
14:22 nicomen sub::override perhaps?
14:23 batman crap. it's xml(0) i think
14:23 nicomen oh?
14:24 nicomen yeah that makes sense I guess
14:24 nicomen hah
14:27 jnap joined #mojo
14:29 * sri yawns
14:30 batman https://metacpan.org/source/SRI/Mojolic​ious-3.36/lib/Mojo/IOLoop/Delay.pm#L51 <-- why do you do !$self->{finished} ?
14:31 batman that means i can't re-use my $delay object when doing ->begin ->end...
14:32 batman you == sri i guess :)
14:33 sri try removing it and run tests
14:34 batman what about adding $self->{finished} = 0 inside wait() ?
14:34 * batman forks mojolicious and tries it out
14:35 batman ...after dinner that is :/
14:38 sri getting that code right took me like a week, i'm not touching it again
14:45 ZadYree All Hail the Hypno Toad!
14:50 braceta joined #mojo
14:55 gryphon joined #mojo
15:00 sri tempire: what looks better, with or without ->tap? http://hastebin.com/raw/jexujafahi
15:05 crab sri: i'm not tempire, but every single one of those looks better to me without tap
15:05 sri crab: i didn't ask you because i know you don't like ->tap :)
15:06 crab sri: i had actually come around to thinking that it was useful
15:06 crab but seeing it in action... *shudder*
15:08 sri you really think even in cases like the 5th and 6th one it looks better without?
15:08 crab let me look again
15:09 crab parse_body and MultiPart->new?
15:09 sri ye
15:09 sri or the one before that
15:09 purl i heard the one before that was not email-savvy
15:09 crab parse_body i think is ESPECIALLY good without tap.
15:09 sri the $self->skip_body one
15:09 crab yep. that one too.
15:10 sri :S
15:11 crab i'm really not trying to be a curmudgeon, but in the skip_body case it's a straightforward if that turns into a... thing that i have to spend several seconds trying to understand.
15:12 sri it's not much different from loop vs map then though
15:12 crab i agree. it's easy to be too clever with map when a simple loop would be simpler to read.
15:13 sri maybe you're just not used to looking at ->tap, it's not the argument i'm looking for, i'm more interested in opinions about aesthetics of ->tap alone
15:14 stephan48 mhmh readability wise i would say non tap...
15:14 stephan48 it looks cleaner/more readable to me
15:15 crab if "aesthetics" means "i can't understand wtf this thing does", line after line, i'm not too impressed.
15:16 stephan48 basically thats my point :) i can see on 1 look what it does even when i dont know tap... but yea feel free to ignore my noobish opinion :)
15:16 crab the scary part is that i _know_ what tap does.
15:17 stephan48 yea
15:17 sri marcus: maybe you've got an opinion?
15:18 stephan48 i just think i know i do know what it does but just cause i followed the discussion here in the last days, otherwhise i would have to lookup..
15:18 stephan48 i know that i do know*
15:19 sri without ->tap it's almost 60 lines of code more :o
15:20 stephan48 does it give a noticeable performance gain?
15:20 sri no noticeable difference
15:21 stephan48 so only a argument between aesthetics/more code?
15:21 sri aesthetics is all that matters here
15:25 sri i mean, code like this is not exactly obvious either https://github.com/kraih/mojo/b​lob/master/lib/Mojo/Util.pm#L54
15:29 sri or how we automatically generate methods https://github.com/kraih/mojo/blob​/master/lib/Mojo/UserAgent.pm#L32
15:30 labrown joined #mojo
15:34 jnap_ joined #mojo
15:35 Vandal joined #mojo
15:37 crab i'm sorry, i won't beat the horse any more, but i think that's a *seriously* wrong approach.
15:38 heytrav joined #mojo
15:39 edenc joined #mojo
15:39 crab code like that L54 _does_ something that is complicated. but those tap lines take simple things and make them look complicated. that's the kind of code that hides bugs.
15:39 alnewkirk joined #mojo
15:39 ruz joined #mojo
15:39 baton8 joined #mojo
15:42 bc547 joined #mojo
15:43 daxim joined #mojo
15:43 braceta joined #mojo
15:43 jmmills joined #mojo
15:43 rem_lex joined #mojo
15:43 rwstauner joined #mojo
15:43 jamesw joined #mojo
15:43 drift joined #mojo
15:43 Kwa joined #mojo
15:43 smpb` joined #mojo
15:43 avenj joined #mojo
15:43 noganex joined #mojo
15:43 spleenjack1 joined #mojo
15:43 gryphon joined #mojo
15:43 perlite joined #mojo
15:43 mattp joined #mojo
15:43 davido joined #mojo
15:43 augensalat joined #mojo
15:43 ghandi joined #mojo
15:44 tokuhirom joined #mojo
15:44 marcus joined #mojo
15:44 bobkare joined #mojo
15:44 zivester joined #mojo
15:44 batman joined #mojo
15:44 geira joined #mojo
15:44 alexeiras joined #mojo
15:44 kmx joined #mojo
15:44 bjoernfan joined #mojo
15:44 xxtjaxx_ joined #mojo
15:44 espen joined #mojo
15:44 human39 joined #mojo
15:44 nuba joined #mojo
15:45 zpmorgan joined #mojo
15:45 whee joined #mojo
15:45 abra joined #mojo
15:45 vervain joined #mojo
15:45 charsbar__ joined #mojo
15:46 atrodo joined #mojo
15:46 Lucas1 joined #mojo
15:47 Nom- joined #mojo
15:47 tadamo_ joined #mojo
15:47 omega joined #mojo
15:47 phips joined #mojo
15:47 Mikey joined #mojo
15:48 xaka joined #mojo
15:56 pau4o left #mojo
15:58 tolid_air joined #mojo
15:59 * dod is more worried by that line https://github.com/kraih/mojo/blob/maste​r/lib/Mojo/Transaction/WebSocket.pm#L187 . where is $_ set ?
16:00 dod this one is even more scary: https://github.com/kraih/mojo/blob/maste​r/lib/Mojo/Transaction/WebSocket.pm#L288 . calling this function will clobber $_ value ...
16:01 dod unless I missed something obvious ...
16:09 DaTa joined #mojo
16:21 crab clobbery clobbery
16:22 sri no it does not
16:22 sri https://github.com/kraih/mojo/bl​ob/master/lib/Mojo/Base.pm#L101
16:22 dod Uh ? $_ is not local'ised
16:23 dod In tap, that's fine, $_ is set up by 'for'
16:24 dod in _xor_mask, I'm more worried
16:24 sri you linked to resume...
16:25 crab hmm, why is it written "$_->$cb for $self"?
16:25 crab (serious question)
16:25 sri for localizes $_
16:25 bluescreen joined #mojo
16:25 crab oh, it's specifically BECAUSE of the $_... right, i get it.
16:26 sri dod: crab wrote the masking code
16:26 crab haha
16:26 sri ;p
16:27 dod ah, then he should be able to answer this question (which is linked to https://github.com/kraih/mojo/issues/378 )
16:28 sri you've not really asked a question
16:29 dod why is replacing $_ with a lexical breaking websocket tests ?
16:30 dod in _xor_mask I mean
16:31 sri maybe step back a bit, if you want us to change code that worked fine unchanged for like two years you better give us a good reason
16:32 dod okay, fair enough. Give me some time to whip up a test case that shows the error mentioned in bug #378
16:32 dod (or that will show my mistake, which is also possible :-p )
16:33 * dod going back home. Thanks anyway
16:34 bluescreen joined #mojo
16:42 mire_ joined #mojo
16:42 bluescreen joined #mojo
16:49 diegok I'm sure I've seen an example of an airbrake plugin but I can't found it now... Where should I hook to, for example, send an email using Mojo::Exception data each time my app throw an exception?
16:49 sri someone from nordaaker wrote it i believe
16:50 diegok sri: well, I'm not wanting to use airbrake at this time, just to email the exception...
16:52 diegok where should I hook for this?
16:55 diegok and let the normal flow to render_exception()
16:57 diegok reading: http://irclog.perlgeek.de/​mojo/2012-07-05#i_5786282
17:00 inokenty joined #mojo
17:01 diegok Indeed, there is a recipe of what I wanted: http://mojolicio.us/perldoc/Mo​jolicious/Guides/Routing#Hooks
17:01 diegok :)
17:03 sri haga
17:03 sri umm
17:03 sri haha
17:04 crab gaga!
17:11 good_news_everyone joined #mojo
17:11 good_news_everyone [mojo] kraih pushed 1 new commit to master: http://git.io/ocL46w
17:11 good_news_everyone [mojo/master] less tap - Sebastian Riedel
17:11 good_news_everyone left #mojo
17:16 sri crab: anyway, do you remember why you used $_ so heavily in xor_mask?
17:22 crab no.
17:23 crab iirc i was just writing one-liners on the command-line, i probably didn't think about it much
17:25 sri i see
17:35 sri if anyone feels like golfing, rewrite this function without $_ abuse and without making it much longer :) https://github.com/kraih/mojo/blob/maste​r/lib/Mojo/Transaction/WebSocket.pm#L286
17:50 vel joined #mojo
18:14 baton8_ joined #mojo
18:18 * tempire hates the diff/patch format
18:18 dross $_ abuse xD
18:19 tempire some of the examples in the diff look better with tap, others worse
18:20 dross I'm surprised someone hasn't written a commit script to fix $_ abuse :)
18:20 dross using a temp variable
18:23 tempire line 23-24 of Mojo::ByteStream, for example, is bad because of the many $ and the multiple uses of sub
18:24 tempire line 93 of Mojo::Content, however, is excellent
18:24 tempire I admit, I was a bit thrown by the use of $_
18:24 tempire (in tap)
18:24 tempire I would have expected the object to be in @_, to keep consistent with perl convention
18:25 sri it is also in @_
18:25 purl okay, sri.
18:25 * tempire wishes perl had lazy evaluation without use of sub
18:26 tempire I agree that tap/not tap is like map/for
18:26 sri that would suck too, see map/grep
18:26 sri or rather map/grep without block
18:27 tempire ah, that's true.  if you think of tap in terms of map/grep the $_ is sensible
18:27 sri my @foo = map $_->lalala, @bar;
18:29 tempire although the comparison to map isn't completely accurate.  The whole idea with a map is to copy without side effects.
18:29 tempire whereas tap is all about side effects.
18:31 sri yea, the Mojo::Content line is a good example
18:31 sri return $self->tap(sub { $_->{state} = 'finished' }) if $self->skip_body;
18:31 tempire I think I would favor tap in small subs where the there is a single concern.
18:31 sri what's the prettiest way to write that?
18:31 sri funny thing is, that use case is actually what i had in mind with ->mix :)
18:32 tempire but if it's used at the end of an imperative list of steps, it requires a brain shift.
18:32 sri return $self->mix(state => 'finished') if $self->skip_body;
18:32 tempire see now that's super pretty.
18:32 sri good point about brain shift
18:33 tempire I guess the question is whether Mojo::Base is going to evolve into its own object dsl
18:34 sri ideally it would be $self->_state('finished') if $self->skip_body;
18:34 sri *+return
18:34 sri but private attribute accessors are insanely expensive
18:35 tempire both tap and mix require you to internalize that function, not just understand it.  same with map and grep.  but it's well worth it.
18:35 tempire s/function/sub/
18:35 tempire s/sub/method/
18:36 sri crab: you still prefer the current version? https://github.com/kraih/mojo/blo​b/master/lib/Mojo/Content.pm#L97
18:36 sri (over the ->mix/->tap versions)
18:37 tempire I find 97-101 harder to read without mix/tap
18:37 sri i think my biggest problem with ->mix is that it gets harder to follow private data around
18:37 sri currently you can search for {state}
18:38 sri but there are a few exceptions already though like delete $self->{$_} for qw(...);
18:38 tempire hmm.  so it's more of a code convention issue.  I use hash slices a lot, so I would be searching for the name rather than {name}
18:39 sri yea, i'm actually using slices every now and then too
18:39 * tempire votes for mix
18:40 sri mix could also be understood, like that it's ok to change internal object state from the outside
18:40 sri *misunderstood
18:41 tempire I feel like people only do that when they can't find the correct method and resort to a Dumper
18:41 * sri nods
18:41 tempire so the problem exists regardless of mix
18:42 sri on the other hand ->new() already allows it
18:42 sri TOO MANY CHOICES!
18:42 purl too many choices is stressful
18:44 tempire I've just been invited to advertise on twitter
18:44 * tempire is grateful
18:46 nic joined #mojo
18:47 sri someone tell me what to think!
18:48 tempire ask siri
18:49 tempire mixmixmixmixmixmixmix
18:56 batman joined #mojo
19:01 sri ->mix was this patch btw. (for those wondering) http://hastebin.com/raw/pojedufoga
19:08 gryphon joined #mojo
19:13 sri tempire: what about cases like this? https://github.com/kraih/mojo/commit/db45​26674fa7d2ddb1174448474bae54805487e4#L3R8
19:25 sri here's also a patch with ->mix and ->tap used more selectively http://hastebin.com/raw/lokamiboqi
19:25 sri and shift-> instead of $_->
19:28 jzawodn joined #mojo
19:29 tempire you're referring to the move_to?
19:29 tempire I don't like that one; I think tap should only be used to modify the object you're returning
19:30 tempire otherwise it's like using a map without caring about the return value
19:30 sri nope, the ->new
19:30 tempire Oh, I have no problem with the new usage
19:31 tempire though I can see why crab might.
19:32 sri shift-> makes it look cleaner somehow
19:32 tempire agreed.
19:32 purl Just kidding!
19:32 tempire what side do we want to err on - accessible and readable, or concise and clean?
19:33 vervain Accessible, readable and clean ;-)
19:34 vervain Which may well end up naturally concise. FTW.
19:35 sri accessible is not something we should care about
19:35 davido joined #mojo
19:36 sri no way in hell event loop internals could ever be accessible ;p
19:36 tempire well then concise and clean it is.  tap is just as tough to read as SUPER::new...until you know it.
19:36 marcus hey?
19:36 sri yo mr white
19:41 marcus I feel like mix is a bit dirty.
19:41 marcus but it looks pretty.
19:42 marcus so I'm a bit torn.
19:42 marcus mix == Carmen Electra?
19:42 tempire marcus: I was confused by it a bit yesterday.  but today I'm sold.
19:43 sri yea, it is a bit dirty
19:43 marcus I don't think I'm confused by it, I just don't like the fiddeling with the private bits.
19:44 sri :o
19:47 sri it's also not like it will change the way we code much, it saves maybe 40 lines
19:49 sri i like the idea of ->tap much more, the concept is cleaner
19:49 sri but even there i'm not sure where it can be used in core
19:50 sri one thing is certain, ->tap and ->mix will always be slower than the alternatives
19:51 sri ->mix would be pretty much exclusive for core use, while for ->tap it's the oposite
19:51 sri i can see ->tap used more often for template oneliners
19:52 tempire I use Mojo::Base all the time.  I can say for sure I'll be using tap a lot.
19:52 sri like %= url_for->tap(sub { shift->path->trailing_slash(1) })->query(foo => 'bar')
19:52 fhelmber_ joined #mojo
19:52 sri well, closures sure are expensive
19:53 sri more expensive than instantiating an object
19:54 fhelmbe__ joined #mojo
19:55 sri well, you would need to use ->tap *a lot* for it to matter... but still
19:55 sri small things add up... as we've seen with accessors for private attributes
19:57 sri i think $self->{foo} = 'bar'; return $self; was 8 times faster than return $self->tap(sub { $_->{foo} = 'bar' })
19:57 marcus I'd tap that.
19:57 sri something like 500k/s vs 4000k/s on one of my laptop cores
19:59 xaka joined #mojo
19:59 sri sooo... tempire likes mix, marcus and me have a bad feeling about it, and i'm pretty sure crab doesn't like it :)
20:00 marcus I think you're right.
20:00 tempire 500k vs 4000k is a lot
20:00 sri we all kinda like ->tap, but nobody is sure yet where to use it in core
20:02 sri soooo, i guess we just leave ->tap alone until we all have gained more experience with it, and ->mix gets a nay for now
20:02 tempire so yammer has an event now.
20:03 tempire and riak as a conference
20:03 tempire when is mojocon?
20:03 sri redis has also a con now :o
20:03 nour ur a mojocon
20:03 nour mojocon is like cosplay anime convention
20:03 sri the key is that they all have companies backing them
20:04 tempire we have nordaaker
20:04 tempire marcus, throw a mojocon
20:04 sri nordaaker to the rescue? :)
20:05 nic If you think about mix as a hash util then it feels great
20:05 nic but as an object util it feels dirty
20:13 marcus sure
20:13 marcus if sri promises to come.
20:14 nour i want to cosplay as an array ref
20:14 nour is that possible ?
20:14 marcus we're probably taking over the rest of the floor our office is in by november.
20:14 marcus which means we have 900+ m2
20:15 marcus in downtown Oslo
20:17 marcus should fit most of the mojo crowd.
20:21 sri neat
20:26 marcus sri: does that mean you'll come to mojocon? :)
20:27 sri how could i not
20:33 sri Go is such a lovely language
20:33 sri http://www.golang-book.com/10#section1
20:34 sri this is how concurrency should be!
20:34 marcus I was looking at that today as well!
20:34 marcus It's pretty great
20:38 marcus channels looks neat too
20:39 * sri nods
20:41 * marcus is building webos for ubuntu in parallels
20:42 sri /o\
20:44 marcus it can't possibly be more shit than the thing ubuntu ships with by default.
20:46 sri anyone feel like uploading a release?
20:46 marcus I can do it, it's been a while.
20:46 sri nothing to announce, just bugfixes
20:46 marcus \o/
20:48 marcus running make disttest
20:50 sri hmm, every now and then i still get a test fail in websocket.t, i think it's something mountain lion or ipv6 specific
20:50 perlite joined #mojo
20:50 tempire I'll do the mojocon promotion
20:50 marcus tagged and bagged
20:50 sri \o/
20:50 sri marcus++
20:52 tempire maybe even some mojocon-themed mojocasts
20:52 marcus tempire++
20:52 marcus I'm ready for it!
20:53 marcus Maybe we could time it with the cosplay con that's held yearly close to @nordaaker offices :)
20:53 marcus http://www.desu.no/
20:53 tempire I'll dress up as a cloud
20:53 xaka sri: btw, i've been running it for a few days (ubuntu 12.04.1 lts) last week and everything was green
20:54 tempire or maybe the box
20:54 purl maybe the box is slow.
20:54 tempire marcus, you can be the raptor
20:54 marcus tempire: my brother is a cosplayer. He went as Fred Christ a couple of years back.
20:54 marcus tempire: don't even need a costume for that.
20:54 sri xaka: maybe it's gremlin in my laptop... nobody else seems to be seeing it :(
20:55 tempire http://ak.buy.com/PI/0/500/217027642.jpg
20:55 xaka sanctify it :)
21:13 hipyhop joined #mojo
21:16 tempire thinking about it, there's quite a bit of content that could be hosted at a mojocon
21:16 tempire a series on event loops
21:16 tempire basic web dev
21:16 tempire advanced web dev tricks
21:17 tempire tie-ins with mobile dev
21:17 marcus using redis
21:17 tempire yapc is kind of a free-for-all, but if mojocon was tailored and directed a bit, it could be of real value.
21:17 marcus and we could have a mojo core developer panel
21:17 marcus :)
21:21 hipyhop left #mojo
21:22 * tempire wonders how many mojolicious users there are
21:22 marcus at least 4
21:22 * tempire wonders how many companies use it as a primary tool
21:26 davido joined #mojo
21:27 sri the majority of our users seems to be in the us
21:28 sri judging my visitors of the site
21:28 sri next are russia, germany, japan, uk
21:29 sri 20k unique visitors in the last 28 days
21:29 sri 50k page views
21:31 sri average time on site is 5mins
21:31 sri that seems pretty high
21:33 sri windows, linux and mac are pretty even
21:34 marcus not bad.
21:35 sri 39% are new visitors
21:40 lukep joined #mojo
21:44 davido Not sure if it's too late, but I would vote FOR mix().  Convenient, and why not give a pretty common idiom its own name and call?
21:44 davido (I wasn't asked, but weighing in anyway. ;)
21:49 xaka russia go go!
21:49 davido_ joined #mojo
22:04 tempire davido_: you're always welcome to weigh in
22:05 sri indeed
22:05 davido_ Thanks. :)  I was wondering one thing: In Mojo::Util, there are a lot of simple sub wrappers that seem to only serve to give an imported sub a new name within the ::Util namespace.  Why not assign subrefs to typeglobs and avoid the additional call-stack layer?
22:06 davido_ Is it just a matter of beauty?  Or possibly so that in the future it would be easy to add pre-call or post-call code?
22:07 sri mostly historic reasons and for consistency
22:08 sri stuff like sha1 used to be optional and we had detection code
22:10 sri i guess we could remove base64, sha1 and md5 functions
22:10 davido_ Reasonable explanations.
22:11 sri they are all reused in Mojo::ByteStream, so i'm not in a hurry to do so :)
22:11 davido_ base64 is still useful isn't it?  ... is that where the capability for embedding base64 in templates is derived from?
22:11 sri they are all very useful
22:11 sri we use them all in core
22:12 sri just the layer of indirection could go away
22:13 davido_ https://github.com/daoswald/mojo/compare/mojoutil
22:13 sri hmac_md5 seems also mostly useless since we switched to hmac_sha1
22:13 sri davido_: i don't see a gain
22:14 sri just the loss of the function name in the stacktrace
22:14 davido_ That's a good enough reason to leave it alone. :)
22:15 sri i'm not entirely sure, but bade64 was also extremely picky about arguments
22:15 sri *base64
22:15 sri it segfaulted when you passed something wrong or so sometimes, that's why it does (shift, shift)
22:15 davido_ I was just looking at eliminating extra sub calls, but it was just pedantry, not any real gain.
22:18 davido_ I thought the '^\w.~-' reads better than '^0-9A-Za-z\-.~'.
22:18 davido_ though \w changes meaning depending on unicode_strings setting.
22:19 davido_ (which may be desirable anyway)
22:19 sri unicode_strings is lexical though
22:20 sri i like the removal of the closures for hash functions more
22:22 davido_ Anyway, just some thoughts during some spare time.
22:22 sri i don't like \w in this case because we have many different patterns coming from specs
22:22 sri Mojo::URL and Mojo::Parameters are full of them
22:23 sri maybe it's just me being awkward, but here i like being explicit :)
22:27 davido_ Is there anyone interested in working with me on a series of plugins under a Mojolicious::Plugin::Bootstrap::...... namespace?  Placing common Bootstrap idioms such as modals and alerts into helpers, for example.
22:27 sri i've seen people talk about stuff like that every now and then, don't remember who it was though
22:27 davido_ I will probably just get started on my own.... but if anyone has any common Bootstrap idioms they'd like to see added, I'd be open to working them in.
22:28 davido_ I'm using it in a current project, so I can justify the time.
22:34 davido__ joined #mojo
22:36 davido__ hmm... stackatto forked one of my throwaway apps that ended up being mildly popular.
22:40 tempire wellst.
22:40 tempire I've now heard it all.
22:41 perlite joined #mojo
22:41 tempire "Mojolicious doesn't have a REST plugin"
22:41 tempire time to pack it up and go home
22:41 good_news_everyone joined #mojo
22:41 good_news_everyone [mojo] kraih pushed 1 new commit to master: http://git.io/mJnTTQ
22:41 good_news_everyone [mojo/master] small optimizations - Sebastian Riedel
22:41 good_news_everyone left #mojo
22:42 sri haha!
22:43 davido joined #mojo
22:50 davido_ joined #mojo
22:57 gryphon joined #mojo
23:05 jzawodn joined #mojo

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