Camelia, the Perl 6 bug

IRC log for #perl6, 2009-11-13

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs

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

All times shown according to UTC.

Time Nick Message
00:00 pmichaud btw, I think that the new perl.org is awesome.
00:00 chromatic Will do.
00:01 mst thank you.
00:01 mst chromatic++
00:01 mst chromatic++ # and a second one in advance for when we invoke that continuation
00:06 diakopter Maddingue: but what I'm saying is that /usr/bin/perl is perl5, always
00:06 Juerd Who did the new perl.org? I love it.
00:07 chromatic I think it was Leo L.
00:08 mst yep
00:08 mst ranguard++ # Leo Lapworth
00:08 Infinoid masak: ping
00:08 phenny Infinoid: 01 Nov 19:48Z <pmichaud> tell Infinoid  could you add the rakudo/ng branch commits to dalek?  url is http://github.com/feeds/rakudo/commits/rakudo/ng
00:08 phenny Infinoid: 01 Nov 19:49Z <pmichaud> tell Infinoid  I think it only needs reporting to #perl6
00:09 masak Infinoid: pong.
00:09 diakopter Infinoid: yay I broke dalek (again)
00:09 Infinoid diakopter: great, so when I break it (in a few minutes), I can blame it all on you. :)
00:09 Infinoid masak: Is there a new URL for november?  I finally pulled your dalek plugin into the dalek-plugins repo, but the plugin is getting a 404
00:10 masak Infinoid: hm.
00:10 masak Infinoid: it's still github.com/viklund/november
00:10 mst right. bounce.
00:10 mst left #perl6
00:11 Infinoid masak: ok, plugin had http://github.com/viklund/november-wiki.  I will update it
00:11 Infinoid (No, I hadn't planned to wait until november to apply the november patch, that's just how the randomness worked out.)
00:11 masak oops. sorry about that.
00:11 kidd joined #perl6
00:12 Infinoid masak: Should that go only to #perl6, or #parrot too?
00:13 diakopter masak: I think that's the wrong perspective ("widely different world views")... where the rubber meets the road, what are the substantive, tangible differences?
00:14 diakopter s/the wrong/an incorrect/
00:14 chromatic I can only think of one, and it's philosophical.
00:16 masak Infinoid: #perl6 is enough, but #november-wiki is more important to me.
00:16 chromatic Perl 5 adopted and spread Unix and Unix cultural inconsistencies to make the language more palatable to existing Unix users.
00:17 masak diakopter: I can assure you I felt some tangible differences earlier this week.
00:18 chromatic That might be a better way to phrase a similar idea though.  Perl 5 has syntax compatibility with Perls 1 through 4.  Perl 6 intends to provide the same Perlish nature with different syntax.
00:18 Infinoid masak: can do.  thanks
00:18 masak Infinoid: thank _you_.
00:18 masak chromatic: and different semantics.
00:18 masak it's not just a surface change.
00:19 chromatic Depends how deep you want to get into world views.
00:19 masak one of the things I was asked on #perl was "can I still do <simple hello-world one-liner>?"
00:19 masak I explained the syntactical differences, and got back a "so, no."
00:19 masak that neatly summarizes my stay there. :)
00:20 chromatic Baffling.
00:20 diakopter I'm reluctant to let #perl (magnet or freenode or oftc or efnet or wtf other network) define the Perl 5 community
00:21 masak oh, sure.
00:21 masak I don't think for a moment they're some sort of average Perl 5 community member.
00:21 chromatic Hence my concern for stage 2.
00:22 pmichaud they may not be average, but they're surely vocal/visible :)
00:22 masak yes, that's what distinguishes them.
00:23 chromatic Maybe.  Maybe we overestimate how vocal and visible most of us are to the wide world of Perl programmers.
00:23 masak also, they type much faster than people on #perl6, because, as s1n++ pointed out "they don't have to think". :)
00:23 pmichaud chromatic: ...you're advocating the DarkIRC?  ;-)
00:24 pmichaud "we don't know what people outside of our bubble think..."  :) :)
00:24 chromatic More like the Dark Mongers.
00:24 pmichaud there ya go -- I couldnt' come up with a good term for it
00:24 chromatic I would have called it DarkPM, but I don't know if you can grow a goatee.
00:24 PerlJam greetings again.
00:24 PerlJam what did I miss?
00:24 * diakopter had lunch today with TimToady and 6 sysadmins/programmers who use Perl daily/hourly/minutely, and most had barely heard of Perl 6
00:25 pmichaud I can probably grow a goatee.  I certainly had (a fake) one in a stage role at one time :)
00:26 dalek joined #perl6
00:27 masak pmichaud: now I'm really scared. :)
00:29 envi^home joined #perl6
00:29 pmichaud maybe we're not vocal/visible to the wide world of Perl programmers (likely not), but I think we are visible to people who are setting Perl's overall directions (both 5 and 6)
00:30 dalek joined #perl6
00:31 pmichaud (and yes, we are also the people setting those directions)
00:33 masak hence, we are visible to ourselves. *phew*. :)
00:33 * cognominal fail to understand the <MARKED(...)> rules
00:33 orafu joined #perl6
00:35 cognominal ho, I see a method in HLL-s0.pir.
00:36 krakan joined #perl6
00:39 * PerlJam tends to think that he is fairly invisible to the perl-at-large-community except in the few interactions on IRC and such
00:42 pmichaud cognominal: "MARKER"  sets a marker at the current position
00:42 pmichaud "MARKED"  asks if the current position has the requested marker set
00:44 cognominal thx, that is more or less what I gathered from a cursory (pun intended) reading of HLL-s0.pir
01:02 dukeleto diakopter: most perl-using sysadmins i meet don't konw about perl 6
01:03 dukeleto diakopter: or say something like "i heard about it 5 years ago and then never heard anything again"
01:06 masak in a way, that's good news.
01:11 frew_ joined #perl6
01:15 dukeleto masak: yes, it is.
01:15 masak pmichaud: ping.
01:16 dukeleto i had the pleasure of explaining to someone last night what is going on with NQP-rx. they looked a bit disturbed
01:16 dukeleto to someone that had not kept up with perl 6 in a few years
01:16 japhb What did you tell them?
01:16 dukeleto japhb: that we will have flying cars soon ;)
01:16 masak why did they look disturbed?
01:16 masak I mean, I thought everyone knew about Perl 6 and the flying cars.
01:17 dukeleto japhb: just explained the reasoning for NQP and how it recently got a bunch of new features
01:17 japhb ah
01:17 dukeleto masak: i think the disturbedness was from not realizing how much has changed
01:17 masak can someone help me see what I'm doing wrong here? note the indenting of the last M. http://gist.github.com/233491
01:17 dukeleto normal people seem to look at me like I have 3 eyes when I explain what NQP is to them for the first time
01:18 masak dukeleto: I think most people are in that situation. Perl 6 is a black box.
01:18 * japhb has been spending a lot of time keeping up with improvements to NQP-rx ... and pushing for even more.  ;-)
01:18 dukeleto even if they are perl people
01:18 dukeleto japhb: please, keep pushing. the more you do, the less I have to ;)
01:18 japhb heh
01:18 japhb http://wiki.github.com/per​l6/nqp-rx/plumage-requests , It's What's For Dinner.
01:19 dukeleto i just can't believe that i don't work on plumage for like a week, and now i am totally bewildered with all that is going on
01:19 japhb (Anything in the top section that has been marked done, but not moved to the bottom section -- is stuff I am still converting Plumage to use.)
01:19 japhb heh
01:19 japhb I am no longer sick.
01:19 dukeleto japhb: wow, i noticed! ;) japhb++
01:20 japhb (He says, crossing his fingers and knocking on wood)
01:20 dukeleto japhb: glad to have you back. now please clone yourself
01:20 Exodist joined #perl6
01:21 masak I think I want to make more people get disturbed in that sense.
01:21 masak not because I like seeing them disturbed, of course, but because that's often what's needed to get excited.
01:23 japhb "shake them up a bit"
01:25 dukeleto japhb: i totally agree
01:25 dukeleto japhb: which is why i enjoy disturbing people by explaining NQP to them ;)
01:25 japhb :-)
01:25 chromatic I like Rock, Paper, Scissors, Spock, Lizard MMD for that.
01:25 arnsholt Just because you guys are talking about it, what -is- the purpose of NQP?
01:25 arnsholt (I think I know, but now I'm not sure any more =)
01:26 dukeleto arnsholt: it is a very easy to parse, fast-to-run subset of Perl 6
01:26 japhb arnsholt, what dukeleto said ... and yet, powerful enough to write other languages in (cleanly)
01:26 nihiliad joined #perl6
01:26 dukeleto arnsholt: it is a bootstrap language for Rakudo to be written in, and it is used in Parrot core as well, for our parsing engine (Parrot Compiler Toolkit)
01:26 masak perl6: class M { has M @.ms is rw; method s($i=0) { $i ~ "[{ map { "{$_.s($i + 1)}" }, self.ms }]" } }; my $m = M.new; my $m2 = M.new; $m2.ms = M.new; $m.ms = M.new, $m2, M.new; say $m.s;
01:26 arnsholt Yeah. Essentially for bootstrapping Perl 6, no?
01:27 dukeleto arnsholt: but from what I learn, PCT is going to be replaced by NQP-rx
01:27 p6eval rakudo d04cce:  ( no output )
01:27 p6eval ..elf 29064: Parse error in: /tmp/RTUHO94kKK␤panic at line 1 column 45 (pos 45): Missing right brace␤WHERE:  @.ms is rw; method s($i=0) { $i ~ "[{ map { "{$_.s($i + 1)}␤WHERE:                              /\<-- HERE␤  STD_red/prelude.rb:99:in `panic'␤  STD_red/std.rb:255:in `_block_rest'␤
01:27 p6eval ..STD_red/std…
01:27 p6eval ..pugs: *** Missing required parameters: $_␤    at /tmp/XZcIo7EzaR line 1, column 61-78␤
01:27 arnsholt Cool
01:27 dukeleto arnsholt: yes.
01:27 PerlJam dukeleto: "is being replaced by"  :)
01:27 arnsholt There's a Not Quite Perl used for bootstrapping Perl 5 too, no?
01:27 dukeleto PerlJam: is there a parrot branch that uses nqp-rx yet? not to my knowledge
01:28 dukeleto arnsholt: yeah, it is called XS ::ducks::
01:28 japhb dukeleto: nqp-rx is in Parrot core.
01:28 japhb (as of today)
01:28 arnsholt dukeleto: Nice one ^^
01:28 dukeleto japhb: damn! i go and do work for my $job for ONE DAY and you guys sneak it in behind my back
01:28 japhb arnsholt, NQP is also used to implement Plumage
01:28 japhb heh
01:29 dukeleto NQP is probably going to be the new language to write HLL's in
01:29 dukeleto that is what I am going to do, anyway
01:29 japhb s/probably/
01:29 dukeleto japhb: it won't be *necessary* but it will definitely be sufficient :)
01:30 japhb quite
01:30 dukeleto some people still write HLL's in PIR or even C++ (winxed). it takes all kinds to make the world go round
01:30 masak phenny: tell pmichaud that I don't understand why I get 0[1[] 2[3[]] 4[]] here and not 0[1[] 1[2[]] 1[]]. http://gist.github.com/233491 -- is it a lexicals bug? binding bug?
01:30 phenny masak: I'll pass that on when pmichaud is around.
01:36 meppl joined #perl6
01:47 * s1n has a goatee, wonders where the "good s1n" is...
01:47 s1n sorry, was in the scroll back
01:47 masak s1n: :)
01:48 masak s1n: we'll let you know if we find the "good s1n" :P
01:51 s1n heh, i'll kill him if i find him first >:)
01:51 masak oops.
01:53 Wolfman2000 joined #perl6
01:57 Wolfman2000 evening
01:58 dalek book: af7253e | chromatic++ | src/classes-and-objects.pod:
01:58 dalek book: Edited classes and objects chapter:
01:58 dalek book:     * modest prose editing
01:58 dalek book:     * some formatting cleanup
01:58 dalek book:     * added a few suggestions for further improvement
01:58 dalek book: review: http://github.com/perl6/book/commit/af​7253e1ddafeb4659999b944c2dd1808e92924a
02:04 ihrd1 joined #perl6
02:09 alester joined #perl6
02:10 dalek book: 424541e | masak++ | src/classes-and-objects.pod:
02:10 dalek book: [OO] added back a lost full stop
02:10 dalek book: review: http://github.com/perl6/book/commit/42​4541ee9511a118ad9b245be2de76599c985ec6
02:13 eternaleye joined #perl6
02:15 eternaleye joined #perl6
02:27 oZ] joined #perl6
02:42 tideflat joined #perl6
02:42 tideflat std: say $@
02:42 p6eval std 29064: [31m===[0mSORRY![31m===[0m␤Obsolete use of $@ variable as eval error; in Perl 6 please use $! instead at /tmp/OVR5tdz1hV line 1:␤------> [32msay $@[33m⏏[31m<EOL>[0m␤FAILED 00:01 102m␤
02:43 oZ] left #perl6
02:43 tideflat std: say 'Hi perl 6'
02:43 masak jnthn: oh! oh! did you see my bug from earlier?
02:43 p6eval std 29064: ok 00:01 100m␤
02:43 jnthn masak: oh noes...which one?
02:43 masak hi, tideflat!
02:43 tideflat HIi
02:43 masak jnthn: hold on, I'll get it.
02:43 * jnthn grabs something to drink while he reads it....
02:43 tideflat HI
02:44 masak o/
02:44 Wolfman2000 masak: evening
02:44 masak jnthn: http://gist.github.com/233491
02:44 masak Wolfman2000: howdy.
02:44 jnthn masak: looking
02:44 gfx joined #perl6
02:45 jnthn oh noes...it has the word "lexicals" in it
02:45 masak Wolfman2000: I meant to start work on a Web.pm-based pastebin yesterday, but a monumental discussion about the future of the Perl 5 and Perl 6 communities kinda got in my way.
02:45 * masak grins at jnthn
02:45 masak either lexicals or binding.
02:45 Wolfman2000 masak: I got hung up on my pastebin work due to problems with databases and catalyst myself.
02:45 masak that's my guess.
02:46 Wolfman2000 I'm right now trying to take care of that
02:46 masak Wolfman2000: great.
02:48 sjohnson does catalyst come with a few "use"able modules for basic html stuff?
02:48 jnthn masak: Ouch, my brain.
02:48 masak sorry about that.
02:48 jnthn masak: It's fine, I'll look tomorrow.
02:48 masak goodie. I've phenny'd pmichaud about it, too.
02:48 jnthn masak: Can you add expected output to that gist?
02:49 masak I can.
02:49 jnthn Thanks, that'd help.
02:49 masak if it makes it easier to think about: before I golfed it, the code was doing indentation.
02:49 masak and it did it wrong.
02:50 jnthn ah, ok
02:50 masak the problem only shows up when the recursion is between methods, not subs.
02:52 jnthn That's curious too.
02:52 jnthn OK, I'm going to sleep...I've left the tab open in my browser, so it'll confront me in the morning. :-)
02:52 masak good :)
02:53 masak then either I'll be here before you, or my problem will confront you. :)
02:53 masak win-win :)
02:53 jnthn For you. :-P
02:54 jnthn Well, I'm doing a Rakudo day tomorrow anyways. :-)
02:54 masak \o/
02:54 jnthn They always go on until a ridiculous hour anyway, so even if I sleep until midday, it should still be productive. :-)
02:54 masak that's a good reason for me to wake up early. :)
02:54 jnthn lol
02:54 masak 'night
02:54 jnthn No, not really. I'll probably start late and finish really late.
02:54 jnthn night!
02:54 jnthn o/
03:09 seanstickle joined #perl6
03:15 seanstickle left #perl6
03:29 PerlJam does "{*} #= foo" work in NQP, and/or are they some special rules to using it?
03:30 Wolfman2000 phenny: tell masak New update on my Pastebin woes. Apparently the query I need to pull off works when there is no data inside the database. Once data is in, it breaks. Does this make sense to you?
03:30 phenny Wolfman2000: I'll pass that on when masak is around.
03:35 Tene Wolfman2000: explain "breaks"
03:36 Wolfman2000 Tene: no data in the database, the query runs fine because it sees no data. data in the database, it can't seem to construct and inflate the resulting object properly without some sort of issue in the way.
03:37 PerlJam huh ... I must've had a tab character or something between C<#=> and my identifier because it works now and all I've done is manipulate the whitespace around between the regex, C<{*}>, C<#=>, and the identifier
03:37 PerlJam Wolfman2000: show the code.
03:38 Wolfman2000 http://scsys.co.uk:8001/36146 <-- test file, but that should keep you happy.
03:41 PerlJam Wolfman2000: perhaps I'm missing something, but your query seems incomplete.
03:41 Wolfman2000 PerlJam: what do you think is missing?
03:41 PerlJam Wolfman2000: don't you need to say something like "select * from blah where ..."  ?
03:42 Wolfman2000 PerlJam: ...right, you aren't used to DBIC
03:42 PerlJam indeed I am not
03:42 Wolfman2000 nevermind then.
03:45 hercynium joined #perl6
03:46 envi^office joined #perl6
03:46 PerlJam Wolfman2000: Assuming that the query is built for you based on the criteria you've specified, is there a way to output the SQL rather than execute the query?
03:47 Wolfman2000 PerlJam: ...not that I know of.
03:47 Wolfman2000 I'll try messing with this some more in a few minutes. Need a break.
03:59 diakopter chromatic: lol@ Dark Mongers
04:06 meppel joined #perl6
04:09 kangas joined #perl6
04:23 seanstickle joined #perl6
04:24 nihiliad joined #perl6
04:27 Chillance joined #perl6
04:37 seanstickle left #perl6
04:41 carlin That was one interesting (and lengthy!) backlog
04:44 gfx joined #perl6
04:44 diakopter Every time you turn the page, another folio magically appears
05:34 dukeleto 'ello
05:34 diakopter 'i
05:36 justatheory joined #perl6
05:37 diakopter ... in theory
05:41 pointme joined #perl6
05:41 zaslon joined #perl6
05:41 mubot joined #perl6
05:51 xomas_ joined #perl6
05:58 am0c joined #perl6
05:59 ihrd1 left #perl6
06:06 quietfanatic joined #perl6
06:11 agentzh joined #perl6
06:14 quietfanatic events are like routines that are invoked backwards :|
06:14 quietfanatic like comefroms instead of gotos
06:24 Wolfman2000 off to bed...perhaps there is hope yet for my Perl 6 Pastebin.
06:28 pnate2 joined #perl6
06:54 sthiruva_ joined #perl6
07:03 pugs_svn r29065 | lwall++ | [perl6.org] a first whack at "reframing"
07:10 mathw joined #perl6
07:13 ronny_ joined #perl6
07:19 moritz_ good morning
07:25 mathw Morning
07:32 Su-Shee joined #perl6
07:43 simcop2387 joined #perl6
07:44 mathw Okay, now I'm confused
07:44 mathw I can't find the action method for infix:sym<~~> in NG
07:46 moritz_ I don't think there's necessarily an action method for every infix operator
07:48 moritz_ if there's no, it'll probably dispatch to infix:<~~>
07:48 moritz_ (though ~~ does need one, since it's partially syntactic)
07:48 moritz_ src/core/operators.pm
07:48 moritz_ 1:our multi infix:<~~>($topic, $matcher) {
08:00 sasykes joined #perl6
08:11 mathw ahah
08:11 mathw thanks
08:12 * mathw needs a map of the source tree :)
08:13 mathw aaawwww
08:13 mathw first attempt at 'when' support exploded in a highly unpleasant fashion
08:14 mathw but then, I'm not entirely sure what I'm doing so I guess I shouldn't be all that surprised :)
08:16 moritz_ did you do the exceptions part?
08:18 iblechbot joined #perl6
08:22 mathw moritz_: No I've been thinking about it and have realised that when is of course more complicated than I thought
08:23 mathw and looking at how trunk rakudo does it is not particularly enlightening
08:23 mathw I think I'm going to have to wait for someone with knowledge to do it, and then learn from that for future things
08:39 scottp joined #perl6
08:56 mariuz joined #perl6
08:59 _eMaX_ joined #perl6
09:05 NorwayGeek joined #perl6
09:34 payload joined #perl6
09:37 payload1 joined #perl6
09:39 payload joined #perl6
09:41 NorwayGeek_ joined #perl6
09:46 hicx174 joined #perl6
09:48 payload1 joined #perl6
09:58 payload joined #perl6
10:18 mberends joined #perl6
10:20 rgrau joined #perl6
10:20 mberends 22:38 <masak> guys, I just had an hour-long privmsg discussion with mst++. http://irclog.perlgeek.de/​perl6/2009-11-12#i_1723011
10:21 mberends this begin one of the most important 12 hours of backlogs in recent months
10:21 mberends *begins
10:23 mberends mst++ and masak++ for very constructive input regarding the relationship between Per 5 and Perl 6
10:23 moritz_ indeed
10:23 mberends and (all other participants)++
10:24 * mberends wishes he had been present as well
10:24 * moritz_ was mostly present, but decided to (mostly) back out in order not to make it any more complicated
10:25 mberends moritz_: understandable, you can get up on your soapbox another time
10:26 mberends pugs: say ('perl6' gt 'perl');
10:26 p6eval pugs: 1␤
10:26 mberends pugs is not entirely innocent ;)
10:27 mberends I'm going to stop describing Perl 6 as the next version of Perl
10:29 mberends I also think, seeing the problems mentioned, that we should seriously consider renaming Perl 6 to something else, for example Camelia
10:30 payload joined #perl6
10:32 Su-Shee in my everyday lingo I usally say "rakudo perl"
10:32 Juerd mberends: Is it not true then?
10:33 mberends Su-Shee: Rakudo is only one *implementation*, remember the others too.
10:33 Juerd Really, if Perl 6 isn't supposed to supersede Perl 5 (eventually), then the name with a version number makes even less sense.
10:33 mberends Juerd: +1
10:33 Su-Shee mberends: I know, but interestingly, it sneaked into my wording. somehow, it feels natural. there's perl and there's rakudo perl.
10:34 Su-Shee mberends: like british english and us english.
10:34 mberends haha
10:36 Juerd I wish I could convince myself to just say "Rakudo" when I mean Perl 6.
10:36 huf it's not good enough of a name
10:37 huf it's fine for a compiler, but not for the language
10:37 huf it's too damn long for one
10:37 Juerd Well, it's not the name of the language. But people will use it as if it is, anyway. :)
10:38 Juerd No, "Visual Basic" and "ECMA Script" are too long.
10:38 Juerd Rakudo isn't
10:39 Su-Shee why don't we leave it to the natural evolution of language what "it" eventually will be dubbed? :)
10:39 huf Juerd: it's 3 syllables. that's an eternity. you need something with at most 2, preferably 1 ;)
10:40 huf or is that 'u' silent?
10:40 Juerd Su-Shee: Because there is no such evolution just yet, but the current naming is causing confusion.
10:42 carlin Call it Klingon; we have phasers, blorsts, borgs and nqp-rx is alien technology ... so it fits
10:42 Su-Shee huf: no, slightly muted in japanese. the u isn't spoken very clear.
10:43 Su-Shee carlin: and eigenstates.
10:43 Juerd carlin: Well it wouldn't help to pick *another* already-existing name.
10:44 carlin Google did ;-)
10:44 Juerd Did it help?
10:44 moritz_ notreally
10:45 Su-Shee now that I think of it .. before I already usally said "pugs perl".
10:45 Su-Shee moritz_: if you speak german, what do you call it?
10:45 moritz_ "Perl Sechs"
10:45 Su-Shee hm. ok.
10:46 moritz_ or just "Perl", depending on context :-)
10:46 moritz_ it's perl, after all
10:47 * Woodi opt Perl part stays...
10:48 Woodi maybe it will be good to do Perl5 allow to parse STD ?
10:50 moritz_ phenny: tell masak over the weekend I might find the time to write something about the relation between Perl 5 and Perl 6. Do you think it's a good idea to step forward with this, or rather wait a bit more?
10:50 phenny moritz_: I'll pass that on when masak is around.
10:53 * moritz_ already has a conjectural title: "A bright future for Perl 5 and Perl 6"
10:53 Juerd It would be the nth writing about Perl 5<->6
10:53 huf call it perl6i, that way it's not larger than perl5 ;)
10:53 Juerd And someone googling will find all the different ones, that were written over time.
10:55 moritz_ is that an argument for or against anything?
10:56 Juerd Argument for amending historic posts, mostly
10:56 Juerd Which is practically impossible.
10:56 moritz_ well, I can only ammend what I have access to
10:56 Juerd And it's silly all over the place.
10:56 moritz_ and hope that I get a decent google ranking
10:56 Juerd But then, so is the whole issue.
10:56 moritz_ silly, but important
10:57 Juerd Important? Do you think that it's even possible to convince the average programmer that 6 !> 5?
10:57 moritz_ I think it's important to reduce the bad blood between the 5 and 6 communities
10:57 Juerd The values of numbers are too much set in stone to ever change how people will see it.
10:58 Juerd I don't think bad blood that is still there, can be reduced by clarifying the relation. Which is not meant to discourage you - by all means, please do try.
11:00 moritz_ lunch, bbiaw
11:02 kidd joined #perl6
11:06 gfx joined #perl6
11:08 kidd joined #perl6
11:11 envi^home joined #perl6
11:20 kidd joined #perl6
11:30 rfordinal joined #perl6
11:31 payload1 joined #perl6
11:33 payload1 joined #perl6
11:33 rfordinal left #perl6
11:39 zamolxes joined #perl6
11:54 jnthn Morning
11:55 moritz_ o jnthn
11:55 jnthn lol...beat masak!
12:02 mberends_ joined #perl6
12:04 SmokeMachine joined #perl6
12:17 IllvilJa joined #perl6
12:42 kaare joined #perl6
12:53 * moritz_ loves rakudo ng: spectest takes <10 seconds!
12:56 jnthn moritz_: That's only 'cus there's so few tests that pass! :-P
12:57 * jnthn is working hard on getting us some more.
12:57 * moritz_ is curious to see the difference when he comes back on Sunday
12:57 jnthn Ah, you have a nice weekend break now?
12:57 jnthn :-)
12:57 moritz_ t/spec/S03-operators/equality.t is a LHF, only one failing test
12:58 moritz_ jnthn: not yet, but will soon
12:58 jnthn :)
12:58 jnthn Ah yes, that is LHF. Thanks.
12:59 jnthn oh erm
12:59 jnthn ouch.
12:59 jnthn :-/
13:00 jnthn So apparently my $foo; is meant to default to Object.
13:00 jnthn Which stringifies to Object().
13:00 moritz_ maybe that test is wrong.
13:00 jnthn Dunno.
13:00 payload joined #perl6
13:00 moritz_ perl6: say '' eq undef
13:01 p6eval elf 29065: Use of uninitialized value in string eq at (eval 125) line 3.␤1␤
13:01 p6eval ..rakudo d04cce: Use of uninitialized value␤1␤
13:01 p6eval ..pugs: 1␤
13:01 jnthn rakudo: my $x; say $x eq ''
13:01 p6eval rakudo d04cce: Use of uninitialized value␤1␤
13:01 jnthn rakudo: my Object $x; say $x eq ''
13:01 p6eval rakudo d04cce: 0␤
13:02 jnthn :-/
13:03 moritz_ I think the test is wrong.
13:04 moritz_ at least I don't see how it could work
13:04 jnthn Well, me either, but it's still a tad...surprising...
13:05 jnthn rakudo: my Object $x; $x ~= "monkey"; say $x;
13:05 p6eval rakudo d04cce: monkey␤
13:05 jnthn oh, that still does the Right Thing.
13:05 jnthn oh, but not in ng
13:05 jnthn > my Object $x; $x ~= "monkey"; say $x;
13:05 jnthn Object()monkey
13:06 rfordinal joined #perl6
13:06 colomon what, my $foo is equivalent to my Object $foo?
13:06 moritz_ yes
13:06 moritz_ otherwise my $x = 1|2; would autothread
13:07 colomon moritz_: that's an argument that just zooms over my head.
13:08 colomon And why does test 8 pass while test 6 fails?
13:09 moritz_ no idea.
13:09 jnthn Yeah, I wondered that one too...
13:10 * moritz_ think that's a good question for Tene
13:10 moritz_ erm, TimToady
13:10 moritz_ tab fail :-)
13:11 * jnthn is happy to live in a less populated area of the alphabet :-)
13:11 colomon I think I always thought "my $x" was equivalent to "my Any $x"...
13:12 jnthn It can't be
13:12 jnthn Junction !~~ Any
13:12 masak joined #perl6
13:12 jnthn lolitsmasak!
13:13 masak jnthn: I suspected you'd get here first :P
13:13 phenny masak: 03:30Z <Wolfman2000> tell masak New update on my Pastebin woes. Apparently the query I need to pull off works when there is no data inside the database. Once data is in, it breaks. Does this make sense to you?
13:13 phenny masak: 10:50Z <moritz_> tell masak over the weekend I might find the time to write something about the relation between Perl 5 and Perl 6. Do you think it's a good idea to step forward with this, or rather wait a bit more?
13:13 fridim_ joined #perl6
13:14 moritz_ woah, masak shows up and phenny fills 1/3 of my irssi window :-)
13:15 masak moritz_: I'm leaning towards waiting a bit more, but to motivate that I feel like I should explain what mst and I have in store, and he advised me to deliver, not make promises, so... you put me in a bit of a spot with that question. :)
13:16 moritz_ masak: no, it's fine if you tell me to wait based on feelings or trust :-)
13:16 moritz_ masak: I suspected something like that, which is why I asked
13:16 moritz_ (which I usually don't before blogging :-)
13:17 masak moritz_: I look forward to whatever you have to write about it. please feel free to write it, and then maybe show it here before publishing, or something.
13:17 moritz_ so I'll focus on the book instead, which also needs work :-)
13:17 masak or that.
13:17 moritz_ I'll see what the weekend brings.
13:17 masak jnthn: did you fix my bug yet?
13:17 * masak backlogs
13:17 jnthn masak: no.
13:18 jnthn masak: I didn't comprehend your bug yet. :-)
13:18 masak oh.
13:18 masak but it was right there, in your browser when you woke up! :P
13:18 jnthn ENEEDMORECOFFEE
13:18 jnthn Yeah, it was! :_)
13:18 szabgab joined #perl6
13:18 jnthn I looked at it, and then ran to the coffee machine. :-)
13:18 masak lol
13:18 * moritz_ also found it a bit hard to follow :-)
13:19 masak I think by golfing it I actually made it harder to follow. :/
13:19 masak when it was about indentation, it was immediate that it was wrong.
13:21 moritz_ or if you gave them names (<a b c d e>) and print that along with the number
13:22 masak the structure looks like this: Ma[Mb, Mc[Md], Me]
13:23 masak now, Mb and Me should be printed with the same indentation/number.
13:23 jnthn masak: ugh
13:23 masak but they aren't.
13:23 jnthn masak: Yes, I see the bug now.
13:23 FCO joined #perl6
13:23 * masak submits rakudobug
13:23 jnthn I agree it's wrong.
13:26 takadonet morning all
13:27 lithos joined #perl6
13:27 masak takadonet: \o
13:31 takadonet how are you doing masak?
13:31 masak takadonet: my waking hours are a mess. I have one work day left before vacation starts. my secret project occupies all my attention.
13:32 masak did I say secret project? I meant, um, an entirely boring project. not worth talking about, really.
13:32 takadonet ...
13:32 masak takadonet: how are you doing?
13:32 takadonet hehe
13:33 NorwayGeek joined #perl6
13:34 takadonet masak: Busy as hell at work. Leaves no time for perl6 . Getting ready some biological data to be submitted to genbank. Just cannot wait to go back to writing some Perl 5 and Perl 6
13:36 jnthn masak: Oooh...you has a secret project?
13:36 masak jnthn: no. and I've already told you about it, but you must have forgotten. :)
13:36 jnthn I think you've told me that you have a secret project. :-)
13:37 jnthn I don't think I know any more than that. ;-)
13:37 masak only one week left before I get to unveil it.
13:37 masak the tension is killing me. :)
13:38 * jnthn thinks it's going to be something strange and loopy
13:38 masak oh yes.
13:38 jnthn Dunno why. Just a feeling I've got
13:38 jnthn ;-)
13:38 * moritz_ has a vague idea what it might be, and could be totally wrong
13:38 takadonet suddenly I want to know what it is
13:42 jnthn .oO( collection of 100 obfuscated Perl 6 programs that all print the Austrian National Anthem )
13:42 moritz_ rakudo: say $*IN.lines
13:42 p6eval rakudo d04cce: Land der Berge, Land am Strome,Land der Äcker, Land der Dome,Land der Hämmer, zukunftsreich!Heimat bist du großer Söhne,Volk, begnadet für das Schöne,vielgerühmtes Österreich,vielgerühmtes Österreich!Heiß umfehdet, wild umstrittenliegst dem Erdteil du inmitten,einem starken Herzen
13:42 p6eval ..gleich.…
13:43 masak 1 down, 99 to go.
13:43 moritz_ that doesn't really count as obfuscated though, does it? :-)
13:43 masak no, true.
13:43 masak rakudo: say $*IN.lines>>.flip
13:43 p6eval rakudo d04cce: ,emortS ma dnaL ,egreB red dnaL,emoD red dnaL ,rekcÄ red dnaL!hcierstfnukuz ,remmäH red dnaL,enhöS reßorg ud tsib tamieH,enöhcS sad rüf tedangeb ,kloV,hcierretsÖ setmhüregleiv!hcierretsÖ setmhüregleivnettirtsmu dliw ,tedhefmu ßieH,nettimni ud lietdrE med tsgeil.hcielg nezreH nekrats
13:43 p6eval ..menie…
13:44 moritz_ .oO( if you .flip Austrian it looks just like flipped German :-)
13:44 jnthn moritz_: Strange that.
13:44 jnthn :-)
13:44 jnthn I guess it's just 'cus I'm British, but Austrian and German look terribly alike to me even in their non-flipped forms.
13:45 moritz_ it's about as close as American and British English
13:46 moritz_ except that there are less spelling differences (color vs. colour), but more words used differently
13:46 lithos they say, Austrians and Germans are not divided but by their common language ;)
13:46 jnthn :-)
13:47 jnthn Words used differently? That sounds like the path to amusement, depending on the differences. :-)
13:47 moritz_ don't forget the Alps :-)
13:50 jnthn phenny: tell pmichaud oh noes, I think we may have a general parsing issue with %item_assignment precedence level. Both ternary and default_value use <EXPR('i=')>, and both have parsing issues.
13:50 phenny jnthn: I'll pass that on when pmichaud is around.
13:51 moritz_ jnthn: nah, it's mostly boring differences. In .de "Schorle" means a mixture of $thing and water, and in .at $thing and lemonade
13:52 jnthn Aww.
13:53 jnthn Not like "pants" in AE/BE then. :-)
13:53 lithos there are significant differences in spoken language, though, which sometimes lead to amusement
13:53 arnsholt jnthn: Try asking about Swiss German O=)
13:53 moritz_ lithos: but I found the differences between spoken Austrian and Bavarian smaller than Bavarian and northern German dialects
13:54 jnthn arnsholt: I'm under the impression that is much more different. :-)
13:54 moritz_ it is, and it's sometimes amusing to listen to them :-)
13:54 arnsholt Yeah. From what I've been told Swiss German is weeeeeeird =D
13:55 lithos moritz_, that's true
13:55 oZ] joined #perl6
14:03 ihrd joined #perl6
14:04 ihrd left #perl6
14:05 PerlJam / <foo>? / making an array in the match object still trips me up every time.  For some reason that's a lesson that's hard for me to learn.
14:06 masak PerlJam: I used to get tripped up by that as well.
14:06 masak I've since come to grips with the fact that it's more consistent, for at least two reasons.
14:06 PerlJam I understand and agree with the consistency.  But it still trips me up :)
14:06 masak nod.
14:07 masak it will keep doing that for a while after you understand the reason. :)
14:07 masak TimToady++ # 'spunky little sister'
14:08 * moritz_ had to look up 'spunky'
14:08 masak I think it fits.
14:08 moritz_ the closest word I knew was 'spooky' - not quite the same :-)
14:10 * jnthn had to look it up too
14:10 jnthn Cool word
14:10 PerlJam why do I keep seeing tweets that say "I need to write a cranky editorial about the absurdity of Perl 6 having "missed the boat." "   ?  Is there some meme here that I'm missing?
14:11 moritz_ PerlJam: no, it's just something that spam bots picking up what one of us (Juerd? not sure) wrote once
14:11 moritz_ or was it alester? not sure
14:11 PerlJam I thought I saw chromatic say it  :)
14:12 masak it was alester.
14:12 masak I like that bots pick that up. it's a fun tweet.
14:12 Juerd ?
14:12 PerlJam well, I wish someone would write that cranky editorial and have the bots pick up the link to it.
14:13 Juerd Is there a bot that tweets irc snippets?!
14:13 masak PerlJam: alested did write that cranky editorial long ago.
14:13 PerlJam Having the bots pickup the link to it is the important part :)
14:13 masak Juerd: no, but some Twitter spambots mimick real tweets, and (I think) each other.
14:13 Juerd Ah
14:14 masak http://perlbuzz.com/2009/08/perl​-6-has-not-missed-the-boat.html
14:15 Juerd "There is no boat." I like that explanation.
14:15 Juerd It's very concise
14:16 masak I think the warm, fuzzy feeling I get is that, ostensibly, even *spambots* are concerned about the way Perl 6 is perceived. :P
14:16 masak that's when you know your language is taking off. :)
14:17 carlin No, you know your langauge is taking off when someone writes a twitter spambot in it
14:18 masak carlin: maybe someone did, and what we're seeing is the tweeting of self-aware Perl 6 spambots.
14:20 masak it's only natural that bots written in Perl 6 will have the spark, at least a little: http://www.girlgeniusonline.​com/comic.php?date=20091009
14:20 colomon "spunky little sister"!    \o/
14:22 jnthn Rakudo ng has when and default blocks back again.
14:23 jnthn To some degree anyway.
14:24 masak \o/
14:24 * jnthn glances around for pmichaud
14:24 masak jnthn: in a week, where will the branch be, you think? ready for merge?
14:25 jnthn masak: It's hard to be sure at the momnet. It really depends how quickly we can bring back the setting, and then triage all the fails.
14:26 jnthn Or, all those we decide are merge-blocking, anyway.
14:26 masak right.
14:26 * PerlJam puts on his optimist hat
14:26 jnthn I've just been trying to get Any-num.pm back in, for example.
14:26 PerlJam It'll be ready in a week.
14:26 masak it does sound promising.
14:26 jnthn In doing so, it's pointed out quite a few things that I've been able to fix.
14:27 jnthn But also turned up what I think is an OPP bug. :-/
14:27 carlin Yay
14:27 jnthn I've no idea how hard that will be to deal with.
14:27 * carlin has built rakud oon vista
14:27 jnthn We also can't parse numbers yet...
14:27 colomon Does ng's new PARROT_REVISION have nqp-rx as part of parrot?
14:28 jnthn I think so.
14:28 jnthn oh, wait, maybe not...
14:28 colomon 42461 is the parrot
14:28 colomon I'm just trying to figure out how to build ng this morning.  :)
14:29 moritz_ it has
14:30 moritz_ rm -rf parrot_install; perl Configure --gen-parrot # profit!
14:30 colomon and no messing around with the nqx-rx build too?
14:31 moritz_ no
14:31 PerlJam pmichaud++
14:35 colomon \o/
14:36 masak re-reading the mst privmsg discussion, I see that he has a concept in his mind called 'the new wave of CPAN'. could someone tell me more about that?
14:37 PerlJam you'll probably have to ask mst about the stuff that's in his head :)
14:37 colomon If I remember correctly, my impression was that he was talking about things like Catalyst and Moose.
14:38 colomon CPAN projects that are the product of active development communities rather than just isolated hackers.
14:38 PerlJam colomon: If I had to guess, I'd say it has something to do with Moose and the Mooseification of CPAN.
14:39 masak is it somehow related to "Enlightened Perl" and "Modern Perl"?
14:39 PerlJam (I don't see how Catalyst would come into play really other than it's an example)
14:39 colomon an example, exactly.
14:40 Su-Shee masak: modern perl is the chromatic stuff; enlightened perl is the organization to which mst is related afaik.
14:40 masak Su-Shee: so it's possible that "Enlightened Perl" is related to "the new wave of CPAN"?
14:41 * PerlJam posits that speculation is less useful than asking mst directly
14:41 colomon But then, I admit I'm trying to read mst's mind, and I can't begin to understand why someone would choose perl 5 over a properly functional perl 6, so I may not be the right person to understand him.
14:41 colomon s/functional/working/
14:41 oZ] Probably going to fight the 'maturity' and 'speed' monsters for a while after 'functional' occurs.
14:41 Su-Shee let me phrase is that way: the contemporary perl 5 seems to evolve perfectly fine with moose and family and moving towards p6 without breaking old stuff and with all the flexibility CPAN has to offer. so, think along the lines "why p6 instead?"
14:42 Su-Shee masak I mean.
14:42 masak Su-Shee: yes. believe me, I understand that train of thought. :) been talking to mst lately.
14:43 Su-Shee masak: enlightened perl is mostly an organization to enhance the visibility of perl itself and to lobby more/better for it.
14:44 masak colomon: mst has a lot invested in Perl 5. I understand why he sticks to it. it's way more effective for -him- than Perl 6 even promises to be for the general programmer.
14:44 masak Su-Shee: oh, ok. I thought it was a series of pro tips, like 'Modern Perl'.
14:45 masak I did know it was an organization, though.
14:45 astrojp joined #perl6
14:45 Su-Shee well I have to admit, that the evolution around moose, poe and mojo/catalyst etc had immensely impact on my willingness to stick with perl. otherwise, I would have abandoned it long ago.
14:45 PerlJam masak: aye; founded my mst even
14:45 masak Tene: now that the 'spunky little sister' meme is loose, having that t-shirt would *really* be timely. :)
14:46 masak Su-Shee: nod. they constitute a revival of sorts.
14:46 PerlJam Su-Shee: why do Moose, POE, and Catalyst matter to you exactly?
14:46 * colomon still longs for a dark-colored Rakudo t-shirt...
14:46 Su-Shee masak: a very impressive one.
14:47 Su-Shee PerlJam: because it shows me the power of perl in a very impressive way at a time when I was ready to believe that python/ruby are the better choice, because supporting more "modern concepts".
14:48 Su-Shee PerlJam: after taking a look into those projects, I was amazed _how_ immensely powerful perl really is.
14:48 masak I feel the same.
14:48 PerlJam Su-Shee: had python or ruby had equivalent projects, would you have gone with one of them?
14:49 Su-Shee PerlJam: no. which is entirely personal and really only a gutt-thing: they ain't sexy. I plainly don't "like" python and I hate the fanboydom around ruby.
14:49 Su-Shee PerlJam: perl "somehow" speaks to me. ;)
14:49 masak as impressed as I am by Perl 6, Rakudo and the Perl 6 community, I can't help being similarly, or sometimes more, impressed by perl, CPAN and the Perl 5 community.
14:49 arnsholt Su-Shee: That's one of the reasons I like Perl as well. The power of the language, paired with the ludicrous inventiveness (and insanity) of the community
14:50 Su-Shee exactly.
14:50 arnsholt Which makes Perl 5, a relatively old programming language, support pretty much any buzzword people have come up with
14:50 PerlJam Su-Shee: You sum up well how many perl programmers think, I think.
14:50 PerlJam Su-Shee: Perl fits my brain.
14:51 * moritz_ wishes everybody a good weekend and disappears
14:51 Su-Shee HOP came to the right time as well.
14:51 PerlJam moritz_: you too!
14:51 arnsholt That's also why I'm so excited about Perl 6. You lot are completely insane, which means the language is going to be mega-awesome =D
14:51 * takadonet wishes he had a perl 6 debugger
14:51 Su-Shee and consider this:
14:52 Su-Shee "go" is suddenly all the hype and they don't have "real" classes - and so doesn't javascript (which does some very hash-y things) - so suddenly perl doesn't look so bad anymore at all.. ;)
14:52 oZ] The Go hype will pass quickly.
14:53 masak moritz_: lolhavetheappropriateamountoffun!
14:53 arnsholt PerlJam: Me too! Perl fits my brain as well. Programming in Python for example gives me this horrid mental itch
14:53 Su-Shee if the programming evolution swaps back to less OO, it's going to be interesting - especially with all the functional programming languages books suddenly popping up all over.
14:53 arnsholt Su-Shee: IIRC, JS actually has OO. It's just not the OO you're used to from Java. It's prototype-based instead, which is quite cool
14:54 colomon agree that programming in perl fits my brain -- which is a large part of the reason I feel that perl 6 is perl -- it fits in the same way, only better.
14:54 masak arnsholt: you recall correctly.
14:54 pmichaud good morning, #perl6
14:54 phenny pmichaud: 01:30Z <masak> tell pmichaud that I don't understand why I get 0[1[] 2[3[]] 4[]] here and not 0[1[] 1[2[]] 1[]]. http://gist.github.com/233491 -- is it a lexicals bug? binding bug?
14:54 phenny pmichaud: 13:50Z <jnthn> tell pmichaud oh noes, I think we may have a general parsing issue with %item_assignment precedence level. Both ternary and default_value use <EXPR('i=')>, and both have parsing issues.
14:54 Su-Shee arnsholt: that's essentially what I meant.
14:54 masak pmichaud: morning!
14:55 jnthn morning pmichaud  :-)
14:55 pmichaud I'll start by fixing ternary.  :)
14:55 PerlJam good morning pm
14:55 pmichaud it's an easy fix.
14:55 jnthn pmichaud: Is it the same issue as with default_value?
14:55 pmichaud I'm not sure what the issue with default value might be.
14:55 pmichaud that one is a little trickier to imagine.  do we have a short example?
14:55 jnthn pmichaud: It feels like precedence.
14:56 arnsholt colomon: Indeed. My particular fave, being a linguist with a penchant for formalisms, is the grammar stuff
14:56 Su-Shee mine is the "compactness" of writing code.
14:56 jnthn sub foo($x = 1) { } # fine
14:56 jnthn sub foo($a, $b = 1) { } # fine too
14:56 jnthn sub foo($a = 1, $b = 2) { } # confused
14:56 arnsholt Reading the spec made me think along the lines of, "Why hasn't anyone thought of this before?!"
14:56 jnthn pmichaud: I think it's not stopping at the comma.
14:56 PerlJam arnsholt: too busy holding on to the past to see into the future :)
14:57 pmichaud jnthn: looking
14:57 jnthn pmichaud: since
14:57 jnthn > sub foo($a = 1, $b) { } # confused
14:57 jnthn Symbol '$b' not predeclared in &foo
14:57 jnthn I think that is the really incriminating one. :-)
14:57 pmichaud easiest is to look at the parse tree
14:57 arnsholt Ain't that the truth. And just like regexes in Perl 5, it's very excellent that the syntax is integrated in the language
14:57 colomon arnsholt: and proper classes and operator overloading and metaoperators... it's like a dream come true for me.
14:58 jnthn Sorry, that last one isn't confused, it gives the error I showed...
14:58 PerlJam what does <EXPR('i=')>  mean exactly?
14:58 orafu joined #perl6
14:58 pmichaud parse down to the 'i=' precedence level
14:58 pmichaud which (as defined above) should be item precedence
14:58 jnthn pmichaud: Yes, parse tree shows that it's swallowed up the "1, $b"
14:59 pmichaud so whenever the operator precedence parser encounters a token with a precedence of i= or below, it should stop.
14:59 arnsholt Reading the spec on metaoperators was fun as well. Insane stuff
14:59 jnthn where it = default_value
14:59 arnsholt In my mind, if I have to pick one thing that makes Perl awesome, it's the influence from functional programming
15:00 arnsholt It makes so much sense, even if it makes some people curl up and cry =)
15:00 masak man, "no ICU lib loaded" sucks. :(
15:00 Woodi lastly i wonder what is plan for propper parallel programming in p6... threads, continuations ?
15:00 pmichaud we _really_ need a FAQ
15:01 masak another one?
15:01 pmichaud do we have one now?
15:01 masak Woodi: continuations aren't an example of parallel programming. but I agree those are important questions.
15:01 Woodi not saw that question freqently...
15:01 masak pmichaud: feels like we have hundreds at this point. :/
15:01 masak splintered and scattered all over the place.
15:01 masak in various stages of info rot.
15:02 pmichaud masak: we need one that is actually kept up to date.  on perl6.org
15:02 PerlJam masak: then perhaps pm should have said, "we really need _a_ FAQ"  :)
15:02 masak nod.
15:02 pmichaud I'm seeing a lot of the same questions asked over and over lately
15:02 pmichaud threads, continuations, will p5 replace p6, how will p5 use cpan, ...
15:02 pmichaud er, how will p6 use cpan
15:02 masak by my experience, the Perl (6) community is bad at doing official/singleton things.
15:03 masak by design, most of the time.
15:03 pmichaud masak: ...except for perl6.org :)
15:03 pmichaud we have a few examples where it's worked out
15:03 pmichaud and the test suite is another :)
15:03 pmichaud and the spec
15:03 masak pmichaud: yes, but there are still various other web resources where people end up instead of that one.
15:04 masak pmichaud: the test suite and the spec are internal documents, not PR-related.
15:04 pmichaud masak: sure, because the intertubes haven't really gotten around to making perl6.org the common path
15:04 pmichaud I guess I should say interwebs
15:04 Woodi pmichaud: i hang here month or so and can write somewhere answers, but first someone who KNOW answer me...
15:04 masak I still see twitterers promoting rakudo.org as _the_ information hub for Perl 6 news.
15:04 jnthn Thet internet is a series of tubes.
15:05 carlin http://gist.github.com/233875 # Spectest results on Vista if anyone's interested
15:05 colomon carlin: woah.  that's a lot of failures.
15:06 s1n about the endless Go discussion: i thought jnthn might find this interesting: http://golang.org/doc/go_lang_faq.html#overloading
15:06 jnthn Woodi: The answer is that we don't know the full answer to that question yet. Perl 6 provides a bunch of places for declarative parallelism (junctions, hyper-operators, etc). async blocks for spawning threads seem to be commonly recognized as likely. STM has been posited, but may or may not be the way to go. Part of the problem is that we just don't have an implementation where we can actually experiment with this stuff yet.
15:07 kaare joined #perl6
15:07 colomon s1n: aha!  the one faq-answer explanation for why I will not be using Go.  :)
15:07 jnthn s1n: thanks, looking
15:07 masak jnthn: doesn't Pugs do STM?
15:08 kaare_ joined #perl6
15:08 Su-Shee all those question will pop up as long until there were a handful of articles when r* was released.
15:08 Woodi jnthn: thank you. let hope adding threads (later) will not end like in p5...
15:08 jnthn masak: I think it may well have done, but Haskell provides STM also, so it was based off that.
15:08 masak jnthn: yes, of course.
15:09 masak jnthn: what I meant was that there is/was an implementation where we can actually experiment with this stuff.
15:09 jnthn masak: Yes, but sadly it's not so up to date at the moment with other aspects of current Perl 6.
15:10 jnthn Plus if we want to tweak it in response to "oh, coudln't this way work better", I don't think we have anybody around capable of doing that.
15:10 masak I'm not so sure it's _that_ difficult. :)
15:10 masak I've been delving into the Pugs internals at times.
15:10 masak sure, they're really scary, but not supernaturally so.
15:11 Woodi i read STM is not so superb... what about Actor model (http://en.wikipedia.org/wiki/Actor_model), seems Go channels comes from there...
15:11 masak I think if someone wanted to pick up Pugs development again, even some non-audreyt person, it would be quite possible.
15:11 jnthn Woodi: Yes, I've heard varying opinions on STM.
15:11 masak Woodi: write a proposal, and we'll try it!
15:12 jnthn masak: I expect so, it's just that someone who wants to coming along and doing it. :-)
15:13 Woodi masak: i am more in questions and answers (PR) then specs. but working on it...
15:13 s1n what i find most interesting about Go: google had engineers working full time on it, it's an incredibly basic language, and yet it still took 2 years
15:13 masak jnthn: don't look at me! I'm... busy. :)
15:14 jnthn s1n: Well, it's not untrue that it simplifies things to not do either of those. :-)
15:14 rfordinal joined #perl6
15:15 s1n jnthn: it just strikes me as funny given how much people bitch about perl6's dev time
15:15 jnthn s1n: Well, yes. :-)
15:15 jnthn masak: My hope is that we'll be able to start experimenting with threads things in Rakudo in the not too distant future.
15:16 arnsholt Someone mentioned C++0x a little while ago as well
15:16 arnsholt And they're just working on a spec!
15:16 s1n arnsholt: it was me :)
15:16 arnsholt s1n: Oh, right
15:17 s1n arnsholt: they're spec has taken ~11 years
15:17 s1n well, it's not a spec
15:17 s1n just a change to c++98
15:17 arnsholt Oh?
15:17 s1n c++ was already approved by iso, so they're just making some changes
15:17 Psyche^ joined #perl6
15:19 PerlJam and, of course, the existence of C++ means that C is obsolete, right?
15:19 PerlJam ;-)
15:19 s1n heh
15:19 s1n ironically, they made it a different language with a different name, maybe there's a lesson there
15:20 PerlJam We have a different name.  "Perl 6" ne "Perl 5"   :-)
15:21 PerlJam but also note how everyone seems to want to keep "C" in there for C, C++, C#, C++0x, etc.
15:22 s1n there's a B and a D too :)
15:23 iblechbot joined #perl6
15:23 PerlJam yeah, but no one uses those.
15:24 pmichaud jnthn: confirmed a bug in the operator precedence parser... looking to fix
15:26 jnthn pmichaud++
15:29 KyleHa joined #perl6
15:29 PerlJam someone refresh my memory on how foo {*} #= bar  works.  As soon as "foo" is parsed, a method named for the rule within which foo appears is fired with 2 args  $/, and "bar"  yes?
15:30 [particle] correct
15:30 [particle] in old nqp. std doesn't use #= anymore, and i don't know if nqp-rx uses it
15:31 jnthn Yes, it's still available.
15:31 jnthn We use it in maybe one or two places in Rakudo's grammar in ng.
15:31 jnthn (Where we want to pop into the action method at somewhere other than at the end of the rule.)
15:31 [particle] that makes sense, because otherwise it wouldn't be drop-in replacement
15:32 jnthn Yes, there's that angle too. :-)
15:33 jnthn I'm *so* happy we don't have to put {*} into every token/rule now though.
15:35 PerlJam jnthn: what do you mean?
15:35 PerlJam {*} was required for the method to execute?
15:36 jnthn PerlJam: Correct.
15:36 PerlJam huh, I don't remember that at all.
15:36 jnthn PerlJam: See grammar.pg in master.
15:36 jnthn And all of the {*} :-)
15:37 mberends joined #perl6
15:38 * mberends returns from the dentist, having had a Good Idea
15:38 * jnthn waits for mberends to drill it into us
15:38 mberends ok :)
15:38 jnthn oh gah, my punitis is playing up again... :-/
15:39 * jnthn listens attentively
15:40 masak jnthn: puns about drills are boring. :P
15:40 mberends it's almost written here a few minutes ago. To not annoy the Perl 5 community, we take a meme from the C language family and rename 'Perl 6' to 'Perl++'
15:40 * masak feels very reluctant to rename Perl 6
15:41 mberends the karma bots will have to learn pre-increment, but that's doable
15:41 masak in the worst scenario, it'll be another PR disaster.
15:41 mberends ok, I had to get that off my mind, must travel UK->NL now
15:41 * mberends waves
15:42 masak mberends: o/
15:42 KyleHa Thanks for the idea, mberends++
15:42 masak we'll think++ about it.
15:43 PerlJam I don't remember where I read it or what, but there was some company that had a bad reputation and they did a study on how much they'd have to spend to fix it.   The study concluded that  they could spend their entire marketing/advertizing budget on it for the next 100 years before it would make a dent in public perception.
15:44 PerlJam Their solution was to change names.  (which worked)
15:44 PerlJam As long as perl 6 isn't irrevocably damaged, we shouldn't change the name IMHO
15:45 diakopter or break it up into a bunch of littler pieces with more functionally descriptive names.
15:45 * diakopter sort-of backlogged today; sigh.
15:46 masak PerlJam: I've been brought up-to-speed this week on how large the damage is. it's massive, but I don't think it's irrevocable.
15:46 masak diakopter: you mean like, PGE, PCT, nqp, Rakudo...?
15:46 diakopter yah
15:46 masak diakopter: that's good for people who care.
15:46 masak outsiders don't, generally, care.
15:46 jnthn That doesn't solve the problem that the language still needs a name.
15:47 PerlJam jnthn: it's the PGET+PCT+NQP+Rakudo language!  :)
15:47 pmichaud I've been wondering if perhaps part of the solution is to focus less on "Perl 6" and more on another name, like "Rakudo"
15:47 masak diakopter: I remember the first 2-3 times I saw diagrams with flows describing PAST->POST->PIR. all I thought was 'tech the tech tech'.
15:48 masak diakopter: you only start caring about such abstractions as they become useful to you.
15:48 PerlJam pmichaud: be careful not to use up all the good names too quick.
15:48 PerlJam we'd also need to be careful not to transfer the bad vibes  too
15:48 pmichaud actually
15:49 Su-Shee PerlJam: you mean for all the other 3458604396 perls coming up next week? :)
15:49 pmichaud perhaps what we could lightly suggest is that Perl 5 get an additional "tag name" (more)
15:49 PerlJam (unless that's the goal, shift all the bad vibes to a new name and then abandon the name)
15:49 pmichaud there's already Vanilla Perl, Strawberry Perl, etc.
15:49 PerlJam Perl 6 == Ueber Perl
15:49 pmichaud in the case of Perl 6, we refused to have an official Perl 6 -- so we have Rakudo, Pugs, Elf, etc.
15:49 * Su-Shee already says rakudo perl in every day talks about perl 6.
15:49 PerlJam Perl 6 == Super Perl  (comes with a cape and theme music)
15:50 pmichaud maybe (and I do mean *maybe*)  perl 5 could start doing distributions as well
15:51 PerlJam perl is already chopped up for linux dists, we might as well exert a little control over that process by doing the chopping ourselves
15:51 Woodi Perl 6 is like ISO standard.. Rakudo is like GCC..
15:51 PerlJam (at least that's how I'd pitch it to p5p)
15:51 pmichaud perhaps the conversations could shift away from "Perl 5 versus Perl 6" to things like  "Rakudo Perl versus Strawberry Perl" ?
15:51 pmichaud which more explicitly recognizes that different distributions would be more suitable to different applications
15:52 diakopter re: 'That doesn't solve the problem that the language still needs a name.' - okay.  how about CORE, since that's what the setting calls itself
15:52 pmichaud but they're all under this nice umbrella we know as "perl"?
15:52 pmichaud er, "Perl"
15:52 Su-Shee difficult. strawberry is specifically windows perl.
15:52 Woodi maybe just write p6 compatible compiler using p5 codebase ? name is not main problem...
15:52 diakopter COAR
15:52 gbacon joined #perl6
15:52 nihiliad joined #perl6
15:52 PerlJam Woodi: you're giving a technical solution to something that's a social problem.
15:53 Woodi btw. name can be "Way of Flaying Mug"
15:53 pmichaud Su-Shee: yes, Strawberry is specifically windows perl, but that's kind of my point.
15:53 PerlJam Su-Shee: seems like that fits right in to me.
15:53 pmichaud if I wanted to run Perl on Windows, I'd recommend "Strawberry Perl"
15:53 Su-Shee ah, now I got it.
15:53 PerlJam Hmm.
15:53 pmichaud if I want to run Perl on unix, then...
15:54 Su-Shee pmichaud: you run perl.
15:54 pmichaud Su-Shee: right.  But if I want to run Perl 6 on unix, then ...
15:54 pmichaud ... I run Rakudo.
15:54 Woodi PerlJam: yea, becouse name Greeky tragic problem...
15:54 Su-Shee pmichaud: _I_ run rakudo perl. and before I ran pugs perl.
15:54 pmichaud right
15:54 diakopter Flaying?  Flying?
15:55 pmichaud my point is that perhaps a help to this is for perl 5 to find a way to make the same distinction between "language" and "distribution" that we've been doing for Perl 6
15:55 Woodi PerlJam: bad p6 name will make p6 dead, good name will make p5 unhappy...
15:55 TimToady the name of Perl 6 is still Perl 6, and I don't see that changing
15:55 pmichaud it's already worked well for Strawberry Perl, so we're not completely off-the-wall
15:55 diakopter pmichaud: I think that's valid, if you combine it with my point about the cross-dependency/interop
15:55 * KyleHa considers the set of problems that can be solved with only a name change.
15:56 pmichaud TimToady: I think we take that as axiomatic, fwiw
15:56 pmichaud TimToady: at least I do :)
15:57 lithos joined #perl6
15:57 * masak too
15:57 masak though I've never been as unsure about it as I am now. :/
15:59 pmichaud anyway, if Perl 5 can come up with other names, then to some extent we can eliminate the 6 > 5 issue.
15:59 pmichaud or at least let that not be the focus of a discussion.
15:59 oZ] New Perl / Perl Classic?
15:59 pmichaud I've been specifically trying to avoid the "Classic" label.
16:00 PerlJam oZ]: gack! no!
16:00 oZ] ;)
16:00 diakopter Perl vLast
16:00 diakopter (kidding)
16:01 diakopter viPerl
16:02 Woodi so: 1. Perl6 is new language; 2. p5 and p6 languages are uncompatible ?
16:03 pmichaud Woodi: I'm not drawing #2 as a conclusion, no.
16:03 alester joined #perl6
16:04 Woodi pmichaud: i prefer not 2. but facts tell other thing... and now we can talk about PR...
16:04 PerlJam the real question might be are p5 and p6 culturally compatible
16:04 KyleHa WorkInFactPerl & WorkInProgressPerl
16:05 oZ] They're both ridiculously TMTOWTDI.
16:05 PerlJam KyleHa: those are fine for Perl 5, but what about Perl 6?
16:05 jsut|work it seems to me like the p6/parrot community is having significant impact on p5
16:05 PerlJam :)
16:05 arnsholt PerlJam: Hopefully they will be, once the community of Perl 6 users becomes more "mainstream"
16:06 gbacon joined #perl6
16:07 PerlJam arnsholt: I think it's safe to say that many people in the Perl 6 community are ardent Perl 5 users.  that's a good start.
16:08 PerlJam The problem is that there's a significant portion of the Perl 5 community that thinks we've all had our kool-aid spiked.
16:08 PerlJam :)
16:08 arnsholt Heh
16:08 TimToady yes, well, there's more than one flavor of kool-aid...
16:09 gbacon joined #perl6
16:09 diakopter tmtofoka
16:09 pmichaud omg debugging is soooo much easier in nqp(-rx)  !
16:09 ejs joined #perl6
16:10 jnthn :-)
16:10 jnthn pmichaud: I've just ripped out some of the num-ops cheats. :-)
16:10 pmichaud found the bug, testing
16:10 pmichaud (testing fix)
16:10 jnthn pmichaud: yay :-)
16:10 pmichaud looks like it was a copy-pasto
16:10 jnthn d'oh
16:10 PerlJam does that mean that nqp has the same opp problem?
16:11 pmichaud PerlJam: not any more it doesn't   (the bug is in the EXPR code that both nqp and rakudo-ng use)
16:11 pmichaud so yes, nqp had the same problem, but no longer does.
16:11 * Woodi realy prefer p5 gain new functionalities... up to point it can be compatible with p6 spec...
16:11 pmichaud PerlJam: did you add tests for the statement modifiers in nqp?
16:11 PerlJam I did.
16:12 pmichaud where?
16:12 pmichaud 02-if.t, etc?
16:12 PerlJam tests 5 & 6 in 02-if.t and 04-unless.t IIRC
16:12 pmichaud okay
16:12 pmichaud wfm
16:12 pugs_svn r29066 | masak++ | [perl6.org] changed border colors to better contrast with their fill colors
16:13 ab5tract joined #perl6
16:13 PerlJam though, I'm trying to use {*} #= key  and it's not working at all as I would like.
16:14 PerlJam (the key doesn't seem to get set)
16:14 pmichaud use of {*} #= ought to be rare.
16:14 TimToady I ate the last one for supper last night.  :P
16:15 PerlJam maybe I just have old-nqp-think in my head
16:15 TimToady {*} is a code smell that suggests decomposition
16:18 masak wow; last year {*} was all the rage. now it's already a code smell. :)
16:18 masak things oxidize far too rapidly in this business...
16:19 pmichaud masak: no, they're just over-reacting.  :)
16:19 pmichaud besides, {*} is definitely a place for reducing agents
16:19 TimToady they should only be used with cation though
16:20 * masak groans
16:20 masak I sense a runaway chain reaction of chemistry jokes...
16:20 masak swimming &
16:21 pmichaud .oO(swimming .... in heavy water?)
16:21 TimToady I think deuterium should be renamed to something less insulting to hydrogen.
16:25 dalek nqp-rx: 9555dc3 | pmichaud++ | src/cheats/ (2 files):
16:25 dalek nqp-rx: Move <ternary> subrule into HLL::Grammar.
16:25 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/9​555dc3be27cacd037bddd6c32e26109fb119959
16:25 dalek nqp-rx: b6a6b03 | pmichaud++ | src/cheats/hll-grammar.pir:
16:25 dalek nqp-rx: Fix bug in preclim handling of EXPR() subrule.
16:25 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/b​6a6b03036b395f3d9e0550cb19261d6c394b7e1
16:25 dalek nqp-rx: cf48f55 | pmichaud++ | src/Regex/Cursor.pir:
16:25 dalek nqp-rx: Allow Grammar.parse() to take the name of a subrule as well as a rule.
16:25 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/c​f48f5558016341ada63ea5e1dde2b2ec9fea21b
16:25 dalek nqp-rx: 130a2bb | pmichaud++ | src/Regex/Cursor.pir:
16:25 dalek nqp-rx: Change rule argument in Cursor.parse to be a named argument.
16:25 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/1​30a2bb2112285bfc346628e504df83f45746c73
16:25 dalek nqp-rx: 344775f | pmichaud++ | src/stage0/ (4 files):
16:25 dalek nqp-rx: Update bootstrap versions.
16:25 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/3​44775f4249642c4707adf2125da182fda3b543a
16:25 justatheory joined #perl6
16:25 diakopter , in theory I mean
16:26 justatheory wow, some lag
16:28 jnthn pmichaud: Heh. One line deletion fixes the bug? :-)
16:28 pmichaud jnthn: it does.
16:28 jnthn pmichaud++
16:28 pmichaud at least, it appears to do so.
16:28 pmichaud we'll know shortly -- I'm updating parrot's copy of nqp now
16:28 * jnthn builds a latest nqp-rx
16:28 jnthn oh, or I can wait for that.
16:29 jnthn pmichaud: I've just been re-organizing value parsing a bit to look more STD-ish.
16:29 pmichaud jnthn: okay, good.
16:29 jnthn pmichaud: I'm at the point now where I can the number parsing (for non-integers) can go in.
16:30 pmichaud jnthn: I was thinking about that last night, and how I'd like to organize it.  I'm thinking I'll have a string_to_num function to do it.
16:30 jnthn pmichaud: Sounds fine to me.
16:30 pmichaud actually, more accurate will be string_to_rat
16:30 jnthn pmichaud: I'm wondering if we can parse Rat.pm yet. Maybe we can...
16:30 pmichaud that would likely be high on the list, yes.
16:31 jnthn I can do that now.
16:31 jnthn I've been putting back lots of numbers bits.
16:31 pmichaud I may put string_to_rat into HLL::Grammar, though
16:31 pmichaud so other languages can use it :)
16:31 jnthn Yes :-)
16:31 jnthn Let me see what I can do with Rat.
16:31 pmichaud in particular, it converts    123.45   into    12345 / 100
16:31 jnthn Cool
16:32 pmichaud and   dead.beef  into   0xdeadbeef / 65536  :-)
16:33 pmichaud (assuming base 16 on "dead.beef")
16:33 jnthn .oO( token steak { } )
16:33 pmichaud too bad 'r' is so late in the alphabet, so we could do something with  "beer"  :)
16:33 jnthn pmichaud: OK. I've got the number rule in place now, and numish...so if you like, you can take that and start to fillet out. ;-)
16:33 pmichaud I will do that.
16:33 TimToady just need base 28 or so
16:34 pmichaud "beer".  "ale".   "mead"
16:34 pmichaud bah
16:34 seanstickle joined #perl6
16:34 pmichaud "brew"
16:34 jnthn rakudo: say :28<beer>
16:34 p6eval rakudo d04cce: 252867␤
16:34 jnthn My new favorite number.
16:35 gbacon joined #perl6
16:35 TimToady rakudo: say :16<beer>
16:35 p6eval rakudo d04cce: 48891␤
16:35 TimToady rakudo: say :2<beer>
16:36 p6eval rakudo d04cce: 199␤
16:36 pmichaud that's fixed in the ng branch, fwiw
16:36 TimToady it's worth a free beer :)
16:36 jnthn oh hol
16:37 jnthn Rat just went and compiled straight off.
16:37 pmichaud those dirty rats.... so, can we run the tests?  or do we need numish for that?  ;-)
16:37 TimToady I smell a Rat smell
16:37 oZ] left #perl6
16:37 pmichaud we might need the integer operators
16:38 jnthn pmichaud: See my recent ng commits... :-)
16:40 seanstickle left #perl6
16:42 jnthn pmichaud: oh damm...I think I failed.
16:42 jnthn It actually...doesn't quite compile.
16:45 jnthn OK, now it does. :-)
16:47 pmichaud pmichaud@orange:~/ng$ ./perl6
16:47 pmichaud > sub xyz($a = 1, $b = 2) { 1 }
16:47 lambdabot <no location info>: parse error on input `='
16:47 pmichaud # no longer confused
16:47 jnthn Unless you're lambdabot, of course.
16:47 jnthn pmichaud++ # thanks
16:47 pmichaud I think this also fixes ternary (which was a different problem)
16:48 fax joined #perl6
16:48 pmichaud > say 1 ?? 'yes' !! 'no'
16:48 pmichaud yes
16:48 pmichaud > say 0 ?? 'yes' !! 'no'
16:48 pmichaud no
16:48 lambdabot <no location info>:
16:48 lambdabot lexical error in string/character literal at chara...
16:48 lambdabot <no location info>:
16:48 lambdabot lexical error in string/character literal at chara...
16:48 jnthn pmichaud: Ah, OK.
16:48 jnthn Great. :-)
16:48 [particle] pmichaud: what do you think about including the nqp-rx source as comments in the generated pir?
16:48 KyleHa I love ternary!
16:48 jnthn I can uncomment a bunch of stuff.
16:49 jnthn pmichaud: I seem to haz a fail in "is copy"...after fixing that, Rat might work.
16:49 pmichaud [particle]: you mean that goes into the parrot repo?  I think we should have the sources themselves as separate files.
16:50 pmichaud the purpose of having the original source is so that parrot could fix a minor bug independent of the nqp-rx repo
16:50 pmichaud so for that, the actual files are better
16:51 [particle] ok, then how about line# annotations?
16:51 colomon jnthn:  Is there any real reason for "is copy" to be there in the Rat constructor?  I know pmichaud did that, but I never understood why...
16:52 jnthn pmichaud: Because it modifies the gcd
16:52 jnthn gah, wrong sentence, wrong nick
16:52 jnthn colomon: Because we use gcd and then modify $numerator in the routine.
16:53 colomon jnthn: that makes perfectly good sense.  (Though I think the is copy was there before the GCD routine was...)
16:53 jnthn colomon: Aye. I'm not sure 100%, there may well be a reason.
16:54 jnthn pmichaud++ tends to have reasons for doing things :-)
16:54 colomon He may have just expected the gcd bit would be coming soon...
16:54 jnthn maybe ;-)
16:55 pmichaud it's possible that I did copy to avoid attribute initialization problems also
16:55 jnthn ah, ok
16:55 pmichaud anyway, do whatever makes sense for the new implementation :)
16:55 jnthn I'm lazy...dragging in code we know works makes sense to me. ;-)
16:55 pmichaud unless that code was based on cheats or incorrect assumptions, though
16:56 jnthn oh crap...I broke the build I think.
16:57 jnthn pmichaud: Is the rw flag just "rw" or "$!rw"?
16:57 pmichaud I think it's just "rw" right now
16:57 jnthn And does it have to be a true value, or just non-null?
16:57 pmichaud I'm fine with switching it
16:57 pmichaud I think we want it to be true
16:57 jnthn gah
16:57 jnthn ok
16:57 pmichaud looking
16:57 pmichaud it checks for truth
16:58 pmichaud (as well as non-null)
16:58 pmichaud [particle]: aren't the line numbers in the source already?
16:59 [particle] maybe i missed them.  i'm looking at a diff of nqp-rx in the parrot repo, and it's impossible to see what actually changed
16:59 pmichaud yes, it's very hard to see the changes from the source diffs
16:59 pmichaud if we had the full source tree there, it'd be easy to see.
16:59 [particle] yes, that's true
16:59 pmichaud but seeing changes in generate code is likely to be really hard no matter what we do.
17:00 [particle] it would be easier for me to search for /^[-+]#/
17:00 [particle] that's why i suggested the comments, but source is easier still
17:01 pmichaud well, the line numbers generally appear as  '.annotate "line", ##'
17:01 pmichaud although I might not have the source files in place yet
17:01 pmichaud (the source file annotations, that is)
17:01 pmichaud should probably do that this weekend
17:02 ronny_ left #perl6
17:02 pmichaud jnthn: yes, broken build here :-(
17:03 jnthn pmichaud: pushed fix, but amongst it all I seem to ahve got some new test failures...
17:03 jnthn pmichaud: I'm not sure quite where they slipped in. Investigating.
17:08 jan_ joined #perl6
17:09 jnthn pmichaud: ah, it was something about adding Rat back.
17:10 jnthn pmichaud: Backed it out of Makefile.in for now.
17:10 pmichaud okay
17:11 pmichaud bbiab
17:11 jnthn I have a nasty idea what it may be...
17:21 jnthn Yes, it is that... :-|
17:21 jnthn class Foo { }; multi bar(Foo $x) { }; bar(Foo.new) # fail - the loadinit that builds the class ends up coming after the one for building the signature of the sub.
17:23 pmichaud huh?
17:23 pmichaud that doesn't seem right.
17:23 pmichaud loadinits are supposed to be generated in the same sequence the blocks appear in the tree
17:23 pmichaud is something happening that causes the loadinits for class Foo to be attached to something other than its block?
17:24 pmichaud oh
17:24 pmichaud I know what it is
17:24 pmichaud it's that  the loadinit for bar() is being attached to its outer scope
17:24 pmichaud because it's now lexical
17:24 pmichaud we need to do the same for the module loadinits
17:25 pmichaud (we'll have to do that when we get to lexical classes anyway)
17:26 jnthn Yeah
17:26 pmichaud so, instead of putting the class setup code on the .loadinit for its block, put it on the other block
17:26 jnthn That'll be the fix.
17:26 pmichaud that should fix it.
17:26 jnthn *nod*
17:26 pmichaud (and it'll be more correct when we do lexical classes)
17:26 jnthn Right, lexical classes should become quite easy then.
17:26 pmichaud okay
17:26 pmichaud any priorities you think I need to be working on today?
17:26 jnthn OK, I can fix that.
17:27 pmichaud I'm about to grab some lunch, but can work on a variety of things when I return
17:27 jnthn You've dealt with some of the biggest ones.
17:27 jnthn (the ternary and the default value issue)
17:27 pmichaud I'll probably do num handling
17:27 jnthn Yes, that would be excellent.
17:27 pmichaud we need/want it for nqp as well
17:27 jnthn In fact, what I was going to suggest.
17:27 pmichaud okay
17:27 pmichaud so, nom, then num
17:27 jnthn :-)
17:27 pmichaud bbiaw
17:28 jnthn k
17:28 jnthn Actually, I could use some fresh air and I need to go to the store at some point anyway...
17:28 * jnthn takes a break too
17:38 quietfanatic Now, I know caller() is NYI, but is there a way to emulate it, like with PIR?
17:43 PerlJam quietfanatic: I seem to recall that there's a PIR op that tells you such information from a Parrot perspective.
17:44 pugs_svn r29067 | lwall++ | [S05] <foo=bar> doesn't suppress bar capture, use <foo=.bar> for that
17:44 pugs_svn r29067 | Send :keepall off to go and live with :panic.
17:47 pugs_svn r29068 | lwall++ | [STD] capture integer parts for pmichaud++
17:47 pugs_svn r29068 | add <binint> and <decint> rules, and use <fooint> consistently
17:47 pugs_svn r29068 | use new <foo=.bar> notation consistently everywhere
17:49 cdarroch joined #perl6
17:52 PerlJam Hmm. So ternary is fixed now?  or no?
17:54 PerlJam oh. nqp/rakudo need build/PARROT_REVISION bumped up.
18:05 quietfanatic PerlJam: the annotations opcode just gives file and line.
18:08 pugs_svn r29069 | lwall++ | [S05] fossils
18:08 TimToady note you no longer have to say <foo=bar=bar>
18:08 TimToady instead you say <foo=.bar> to get the old renaming semantics
18:09 TimToady now only (...) --> $0 gets suppressed by an explicit alias
18:10 TimToady shower &
18:18 KyleHa rakudo: say Bool::False.name
18:18 p6eval rakudo d04cce: Method 'name' not found for invocant of class ''␤in Main (file src/gen_setting.pm, line 324)␤
18:18 KyleHa rakudo: say Bool::True.name
18:18 p6eval rakudo d04cce: Method 'name' not found for invocant of class ''␤in Main (file src/gen_setting.pm, line 324)␤
18:18 KyleHa Is it true that those are supposed to be there?
18:21 colomon rakudo: say Bool::False.perl
18:21 p6eval rakudo d04cce: Bool::False␤
18:25 quietfanatic KyleHa: I'd think, but rakudo isn't quite all the way on top of enums right now.
18:25 * jnthn back
18:25 KyleHa quietfanatic: Thanks.
18:25 KyleHa I can't find support for it in the spec, but maybe my grep-fu is weak.
18:26 jnthn TimToady: Thanks for those! :-)
18:44 diakopter nqp: say(3) if((say(3) if(3)))
18:44 p6eval nqp: Confused at line 1, near "say(3) if("␤current instr.: 'parrot;HLL;Grammar;panic' pc 448 (src/cheats/hll-grammar.pir:197)␤
18:44 diakopter nqp: say(4) if(4)
18:44 p6eval nqp: 4␤
18:44 pmichaud looks like a statement modifier buglet
18:44 diakopter bugle[t]
18:45 pmichaud TimToady++  change to renaming semantics
18:45 PerlJam Does <ws> require whitespace?
18:45 pmichaud ...now I get to go try to clean up p6regex and nqp
18:45 pmichaud PerlJam: no
18:46 pmichaud PerlJam: but it does required <!ww>
18:46 pmichaud *require
18:47 pmichaud TimToady: fwiw, I'm not sure I need separate whole number and fractional captures anymore
18:47 pmichaud it won't hurt to have them, but I think it may in fact be easier to treat it as a unit
18:47 pmichaud (we'll see :-)
18:49 dalek nqp-rx: 8d6dfe2 | duff++ |  (4 files):
18:49 dalek nqp-rx: [nqp] Naive while/until loop modifiers
18:49 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/8​d6dfe2d2bd75c98402a1526375ce15ad8db66e3
18:50 KyleHa @seen moritz_
18:50 lambdabot Unknown command, try @list
18:50 pmichaud PerlJam++  # while/until
18:51 pmichaud std:   say 3 if(4);
18:51 p6eval std 29069: [31m===[0mSORRY![31m===[0m␤Two terms in a row at /tmp/qsKyud5JgM line 1:␤------> [32msay 3 if[33m⏏[31m(4);[0m␤    expecting nofun␤FAILED 00:01 102m␤
18:53 KyleHa rakudo: my $ro = 'unset'; sub x(Int $x){ $ro = 1 + $x }; sub x(Int $x is rw){ ++$x }; say x(5); say $ro; my $n = 6; x($n); say $n;
18:53 p6eval rakudo d04cce: Redefinition of routine x␤6␤6␤6␤
18:54 [particle] if needs a space, no?
18:54 pmichaud yes, it does.
18:54 [particle] ok, i wondered about that nqp result above, looked right to me
18:55 KyleHa Is that right?  I see a ticket that seems to imply that $n should have changed.
18:56 rfordinal joined #perl6
18:56 pmichaud KyleHa: need a "multi"
18:56 KyleHa My test file says Ambiguous dispatch.
18:57 pmichaud I'm not sure that rakudo master is able to distinguish  "is rw" from "is readonly" yet
18:57 KyleHa That seems true.
18:57 diakopter nqp: say(3) if ((say(3) if (3)))
18:57 p6eval nqp: Confused at line 1, near "say(3) if "␤current instr.: 'parrot;HLL;Grammar;panic' pc 448 (src/cheats/hll-grammar.pir:197)␤
18:58 KyleHa My question is whether that's a fair spec test.
18:58 pmichaud if there's multi in front of sub, I think it is.
18:58 pmichaud (a fair test)
18:58 KyleHa OK, thanks, pmichaud++
18:58 pmichaud nqp:  say(3) if (3);
18:58 p6eval nqp: 3␤
18:58 pmichaud nqp:  say(3) if (say(3));
18:58 p6eval nqp: 3␤3␤
18:58 pmichaud nqp:  say(3) if (say(3) if (3));
18:58 p6eval nqp: Confused at line 1, near "say(3) if "␤current instr.: 'parrot;HLL;Grammar;panic' pc 448 (src/cheats/hll-grammar.pir:197)␤
18:59 pmichaud oh yes, nqp doesn't do comprehensions
18:59 pmichaud (yet?)
18:59 pmichaud so it doesn't recognize statements inside of parens
19:00 pmichaud jnthn: when you get back, I'm still experiencing lots of test failures in the ng branch
19:00 pmichaud (in "make test")
19:00 jnthn pmichaud: oh?
19:01 pmichaud I can confirm that Rat isn't being included in the makefile
19:01 jnthn pmichaud: Check Makefile.in still doesn't have Rat in.
19:01 jnthn OK.
19:01 pmichaud and I've done realcleans
19:01 jnthn perl -e "say 1 + 1" # works?
19:01 pmichaud fails
19:01 jnthn oh.
19:01 pmichaud "null PMC access in invoke"
19:01 jnthn Right, that's what I removed Rat to fix.
19:02 pmichaud appears to have not fixed.  or we have a dependency somewhere and a failure in "make clean"
19:02 jnthn presumably perl6 -e "Rat.new" fails?
19:02 pmichaud pmichaud@orange:~/ng$ ./perl6 -e "Rat.new"
19:02 pmichaud No applicable candidates found to dispatch to for 'new'
19:02 jnthn In a "Can't find sub &Rat" kinda way?
19:02 pmichaud nope
19:02 jnthn huh?
19:02 pmichaud looks like Rat is still there somehow
19:02 jnthn yeah
19:02 pmichaud something wrong in the makefile, I'm guessing
19:02 pmichaud I'll find/fix it
19:02 jnthn cat src/gen/core.pm | grep 'class Rat'
19:03 jnthn (Should find nothing.)
19:03 pmichaud it's there, so core.pm isn't being updated
19:03 jnthn oh
19:03 pmichaud or removed when I do "make clean"
19:03 jnthn OK, makefile fail.
19:03 jnthn nod
19:03 pmichaud okay, I'll fix.
19:03 jnthn OK, thanks.
19:03 jnthn I've sorted out that package bug...but I'm getting another weird issue as a result.
19:04 jnthn The error/line numbers are bull.
19:04 pmichaud oh, I see the problem.  :)
19:04 jnthn So having some fun tracking it down.
19:04 pmichaud the PIR error line numbers?
19:04 jnthn Yeah.
19:04 pmichaud they've been bogus for a few weeks now
19:04 TSa joined #perl6
19:04 pmichaud they always seem to correspond to the top of a sub
19:04 jnthn Yeah, sometimes more so than others.
19:04 jnthn :-/
19:04 jnthn well, that's...useless.
19:05 pmichaud I think it has to do with annotations -- if a file has annotations in it, then the PIR line numbers are essentially lost
19:05 pmichaud or something like that
19:05 pmichaud anyway, it's been that way for a few weeks.  very annoying and hard to debug.
19:05 pugs_svn r29070 | kyle++ | [t/spec] Test for RT 66498: quoting regex with snowman and comet
19:05 pugs_svn r29071 | kyle++ | [t/spec] Tests for RT 66588
19:05 pugs_svn r29072 | kyle++ | [pm.txt] A question for TimToady
19:05 chromatic joined #perl6
19:05 pugs_svn r29073 | kyle++ | [t/spec] fix multi test after talk with pmichaud++
19:05 jnthn Null PMC access in isa()
19:05 jnthn current instr.: '' pc -1 ((unknown file):-1)
19:05 jnthn # eww
19:06 pmichaud the problem with Rat is that technically core.pm isn't out of date :-)
19:06 pmichaud i.e., none of the files it depends on changed, even though the list of dependencies did :)
19:07 pmichaud anyway, I'll fix it in 'make clean'
19:07 Tene so can core.pm depend on the deps list too?
19:07 pmichaud that's a bit hard to do in a Makefile
19:07 pmichaud basically you need to make it depend on the Makefile
19:07 pmichaud but some versions of make interpret that oddly
19:08 Tene Okay.
19:09 pmichaud jnthn: also, I get a fair number of compiler warnings in the *.ops and *.pmc build process -- I'll nopaste the output
19:09 pmichaud would be good to eliminate those
19:09 pmichaud (if we can, they look very eliminatable)
19:10 pmichaud http://gist.github.com/234077   # compiler warnings from "make clean all"
19:11 jnthn blech
19:11 jnthn perl6.ops:48: warning: request for implicit conversion from ‘void *’ to ‘INTVAL (*)(struct parrot_interp_t *, struct PMC *, struct PMC *, struct PMC *, INTVAL,  struct STRING **)’ not permitted in C++
19:11 jnthn Why do we care what C++ does?!
19:12 jnthn It's *C*.
19:12 jnthn :-)
19:12 pmichaud I think parrot is trying to make sure it builds in C++
19:12 jnthn Sure, that this is Rakudo, not Parrot. :-)
19:12 chromatic Some platforms don't have reliable C compilers.
19:12 pmichaud but we use Parrot's command line.
19:12 jnthn Ah, yes.
19:12 jnthn It's still an odd warning.
19:12 pmichaud ...unless you want to create your own configure subsystem for that.
19:12 jnthn Oh...hmm...I know why we have it too.
19:12 jnthn But I'm not sure how to fix it.
19:13 jnthn Oh
19:13 pmichaud ...make the conversion not implicit?
19:13 jnthn Maybe just a missing cast.
19:13 jnthn Yeah
19:13 jnthn I'd missed the "implicit"
19:14 jnthn perl6.ops:643: warning: nested extern declaration of ‘Parrot_ext_call’ # anyone know what this one means?
19:14 pmichaud I think it means you have a nested extern declaration of 'Parrot_ext_call'  :-P
19:14 pmichaud (No.)
19:15 jnthn :-P
19:15 jnthn pmichaud: I'll see if I can quieten it down a bit later on. :-)
19:15 pmichaud okay, great.  Just wanted to let you see the warnings I was seeing.  I figured you weren't seeing them on your system.
19:15 jnthn pmichaud: oh no!!
19:16 jnthn pmichaud: I think I've just found the bug.
19:16 chromatic You didn't include parrot/extend.h.
19:16 jnthn Or something related to it.
19:16 jnthn chromatic: Ah...in that case it's an easy fix - thanks.
19:17 jnthn pmichaud: OK, here's what I'm running into...maybe you know The Answer.
19:17 jnthn pmichaud: I moved the decl code for the class into the enclosing package's loadinit.
19:18 jnthn pmichaud: It fixes the issue I found, but we now have a new one.
19:18 jnthn The init code for the method emits:
19:18 jnthn get_hll_global $P367, ["Object"], "true"
19:18 jnthn Which is handing back null, since we don't put the thing in the namespace (no nsentry)
19:18 pmichaud "true" is wrong.
19:18 jnthn Worse, the loadinit is looking it up that way too, rather than by subid.
19:19 jnthn Trying to look it up in the namespace at all is wrong, no?
19:19 pmichaud there is no "true" in the namespace
19:19 pmichaud there is no "true"
19:19 jnthn Right.
19:20 jnthn That doesn't really help me. :-)
19:20 pmichaud what is generating that code?
19:20 pmichaud whatever is generating that statement is wrong.
19:21 jnthn The PAST tree I build has the loadinit of the package containing the class we're declaring.
19:21 jnthn It has a call to add_method, and that's where the PAST for the method is living.
19:21 pmichaud let me restate what I think you just said (or intended to say)
19:22 jnthn However, since the loadinit we're putting this into is outside of the namespace, we have to set .namespace on the methods's block. Otherwise, the method is in the wrong ns and "export" doesn't work.
19:22 pmichaud okay
19:22 pmichaud thinking
19:23 jnthn However, then the call to add_method gets emitted with a get_hll_global.
19:23 pmichaud the PAST tree you build is the one for the class declaration
19:23 pmichaud yes?
19:23 jnthn Yes.
19:23 pmichaud it contains the add_method calls, yes?
19:23 jnthn Right
19:24 pmichaud and the add_method calls are also the things that handle is export
19:24 pmichaud ?
19:24 jnthn No
19:24 pmichaud I mean as part of the class declaration
19:24 jnthn is export is done from the loadinit of the block itself.
19:24 pmichaud oh
19:24 pmichaud put the class declaration into its own block with an appropriate namespace setting.
19:24 jnthn The thing is that is export, afaik, cares about what namespace it's called from.
19:24 pmichaud (immediate block)
19:24 jnthn Yes, that's what we used to do.
19:24 pmichaud I'm saying do that again.
19:25 pmichaud I'm saying there are two blocks
19:25 pmichaud one for the class declaration, one for the package body
19:25 pmichaud the class declaration one is executed at .loadinit
19:25 pmichaud (as part of its outer package's .loadinit)
19:25 jnthn Oh, you mean we call it from the outer package's .loadinit?
19:25 pmichaud the package body one is treated like a normal bare immediate block
19:25 pmichaud yes.
19:25 jnthn Ah
19:25 jnthn That would work, I guess.
19:26 pmichaud the alternative is to find a way for the 'export' handler to figure out the namespace of the thing it's adding
19:26 jnthn Yeah
19:26 jnthn But unless it lives in that namespace...that's awkward
19:26 pmichaud right
19:26 pmichaud I feel more comfortable if the loadinit block lives in its own namespace
19:26 jnthn Plus we actually for "our" scoped methods will want a namespace entry too.
19:27 jnthn Yeah
19:27 pmichaud we just invoke it from the other namespace's .loadinit
19:27 jnthn Well, the block that loadinit calls, but yes.
19:27 pmichaud to preserve the order-of-initialization
19:27 jnthn Yup, which was the original problem I was trying to solve. :-)
19:27 pmichaud anyway, try that.  should be pretty straightforward :-)
19:28 jnthn Aye
19:28 jnthn ETOOMANYWRONGWAYSTODOIT
19:28 pmichaud might be a good argument to be made that the P::C::Package should generate its own PAST::Block
19:28 pmichaud (that is then attached to the .loadinit of the outer package)
19:28 pmichaud er, it's own *initializing* PAST::Block
19:28 jnthn s/attached to/called by/ but yes.
19:29 pmichaud right, called by
19:29 pmichaud anyway, we both know what we're saying, even if we don't know the right way to say it :)
19:29 jnthn OK, I'll take a crack at doing it that way.
19:29 jnthn :-)
19:29 jnthn Yeah :-)
19:29 jnthn This one mighta been easier with a whiteboard. :-)
19:31 pmichaud I am *sooooo* glad I chose to rewrite the regex engine than to try to extend PGE.  r29067 would've been just about impossible in PGE (to preserve backwards compat)
19:32 jnthn :-)
19:32 pmichaud I'm also glad I chose to basically ignore :panic and :keepall :-)
19:32 jnthn heh, since they just got ripped out ;-)
19:32 pmichaud exactly.  laziness ftw
19:32 pmichaud so far I've had good wins with "laziness" and "hubris"  lately :)
19:33 jnthn Clearly, they're the way to go. :-)
19:35 rfordinal left #perl6
19:37 FCO joined #perl6
19:39 jnthn pmichaud: yay, I think it works. :-)
19:42 nihiliad joined #perl6
19:44 nihiliad joined #perl6
19:48 [synth] joined #perl6
19:48 jnthn pmichaud: Something perhaps rw-ish goes awry in gcd.
19:53 colomon what's it doing?
19:54 colomon (is %= really already working?)
19:58 jnthn I'm not sure...
19:58 jnthn However, I get weird fail in 06-op-inplace.t too
19:59 jnthn So I'm kinda wondering if something might be awry there.
19:59 jnthn Seems the common thread here, but I'm not convinced it's not just coincidence.
19:59 jnthn Looking.
20:02 IllvilJa joined #perl6
20:02 IllvilJa rakudo: say 'Hello world!'
20:02 p6eval rakudo d04cce: Hello world!␤
20:02 IllvilJa It worked! :-)
20:02 pmichaud it's possible/likely that the automatically generated routine for %=  (and all of the 'x=' metaops)  doesn't have quite the right signature characteristics
20:03 pmichaud because that code was done before signatures were in place
20:03 jnthn Ah.
20:03 pmichaud src/builtins/assign.pir:46
20:03 pmichaud (maybe)
20:04 pmichaud still, it's been working before now... not sure what would've changed
20:04 pmichaud oh, yes I am
20:04 pmichaud $P0 = get_global $S0
20:04 pmichaud probably wrong
20:04 pmichaud might need to be find_name
20:04 pmichaud either that or the operators defined in Rat.pm etc.  need to be declared 'our'
20:05 pmichaud as 'my' doesn't cut it yet.
20:05 pmichaud (src/builtins/assign.pir:52)
20:05 jnthn I've declared 'em our, I thought. Coulda missed some though.
20:09 colomon huh.  I just built latest ng, and 5/2 is a Num?
20:09 pmichaud colomon: we're still working on some of those pieces.
20:09 jnthn colomon: oh, let me push the Rat addition, so you cna see the issues.
20:10 jnthn colomon: I'm cooking at the moment, so a bit distracted
20:10 jnthn colomon: Feel free to investigate now.
20:11 pmichaud std:  5/2.0
20:11 p6eval std 29073: [31m===[0mSORRY![31m===[0m␤Confused at /tmp/MYPRWOAoz5 line 1:␤------> [32m5/2.[33m⏏[31m0[0m␤    expecting any of:␤  integer␤  postfix_prefix_meta_operator␤FAILED 00:01 102m␤
20:11 pmichaud okay.
20:11 jnthn std: 5 / 2.0
20:11 p6eval std 29073: ok 00:02 100m␤
20:11 jnthn heh
20:11 pmichaud right
20:11 jnthn That'll catch somebody.
20:11 jnthn :-)
20:11 pmichaud was just checking to make sure my guess matched std's
20:12 pmichaud (it did)
20:13 jnthn I'm not entirely sure I like that, but I agree we match STD. :-)
20:13 justatheory joined #perl6
20:14 KyleHa rakudo: my $o = rand for ^3; say $o
20:14 p6eval rakudo d04cce: Lexical '$o' not found␤in Main (file src/gen_setting.pm, line 324)␤
20:14 colomon jnthn: thanks.  I will be traveling in a moment, but I'll try to take a look.
20:15 jnthn kk
20:15 KyleHa Sometimes I feel like I'm poking the soft spot on baby Rakudo's head.
20:20 pmichaud KyleHa: that one gets fixed in ng also :)
20:20 pmichaud as in, it'll "just work" when we have 'for' implemented.
20:20 KyleHa pmichaud: Yay!
20:20 jnthn Oh, nice.
20:21 jnthn pmichaud: When do you expect we'll have for back in, btw?
20:21 pmichaud tonight or tomorrow, likely
20:21 jnthn (I know it needs map, which in turn needs effort... :-))
20:21 jnthn Does that imply lazy gather/take too? :-)
20:21 pmichaud oh, statement_mod_loop:for  can probably go in before map
20:21 pmichaud I'm not sure we have to make it use 'map
20:21 jnthn Ah, OK, just equivalent semantics.
20:21 pmichaud right
20:22 pmichaud statement_control:for will likely use 'map'
20:22 jnthn ah, that's the one i was more asking after. :-)
20:22 pmichaud at the moment I'm trying to figure out how to bring NQP into the  <abc=def>   new world
20:28 jnthn pmichaud: What's the difficulty?
20:28 jnthn Or is it just a case of writing the code?
20:29 jnthn Or a case of handling the <foo=.bar> case?
20:29 pugs_svn r29074 | kyle++ | [t/spec] Test for RT 66622: statement mod "for" makes no implicit block
20:29 pmichaud several items
20:29 pmichaud since NQP and the regex engine are self hosted, the two grammars aren't 100% compatible
20:29 pmichaud so using the old engine to compile a grammar with the new semantics doesn't quite work
20:29 pmichaud so I have to get  <abc=.def>  to work first
20:29 pmichaud then bootstrap
20:30 pmichaud and then I can enable <abc=def>
20:30 pmichaud with its new semantics
20:30 jnthn oh!
20:30 pmichaud so, all of the existing instances of  <abc=def>  have to be converted to <abc=.def>
20:30 pmichaud then recompile
20:30 pmichaud and re-bootstrap
20:30 pmichaud then I can work on getting the new meaning of <abc=def> in place
20:31 pmichaud but this means that  <OPER=infix=infix>  also has to work for <OPER=infix=.infix>
20:31 pmichaud so it just gets a bit dicey
20:31 pmichaud the new implementation will be much cleaner with the new semantics; it's just getting from here to there that is tricky
20:32 pmichaud time to pick up kid -- bbi30
20:34 jnthn :-)
20:35 KyleHa rakudo:  class A { enum B <c d e>; ::c = B::c }; say A::c
20:35 p6eval rakudo d04cce:  ( no output )
20:39 KyleHa rakudo: class A { constant f = 3; }; say A::f
20:39 p6eval rakudo d04cce:  ( no output )
20:39 KyleHa Is that supposed to output '3', or just have a better error message?
20:43 jnthn iirc, constants are now package scoped (Rakudo didn't catch up with that yet).
20:43 jnthn So I'd expect it to work.
20:43 jnthn nom - bbs
20:43 KyleHa OK, thanks.
20:48 TimToady alternately, we need to make A::f able to pull something out of A's lexical scope somehow; the 'ourness' of constants feels like a kludge
20:59 oZ] joined #perl6
21:00 TimToady perhaps there's some relationship between packages and exportable lists
21:01 TimToady perhaps the package is the :ALL list
21:02 TimToady I guess that's not very different from saying constants are "our" though
21:03 jnthn TimToady: Why did constants become our scoped?
21:03 TimToady so that the A::b notation would find them
21:03 jnthn Ah, ok
21:03 TimToady otherwise Bool::True is hidden
21:03 jnthn Well, to the extent that Bool::True is a constant... :)
21:04 * jnthn has given up on trying to work out what Bool::True is.
21:04 TimToady what I tell you three times is a constant?
21:04 jnthn We've been through enum element and role so far, so I guess constant is fine too. ;-)
21:05 TimToady enums are considered constants, among other things...
21:05 jnthn .oO( one other thing is "mind-bending to implement" :-) )
21:05 jnthn Anyway, I guess in that case, yes we'd like Bool::True to be visible.
21:06 jnthn I wonder if part of the issue is that we're treating constant as a scope declarator.
21:06 jnthn So we thus don't have the option or "our constant" or "my constant"
21:06 TimToady they could be considered to be in the sub slot instead
21:07 TimToady or equiv to the subset declarator
21:07 jnthn The latter is more along the lines of what I was pondering.
21:07 jnthn Not quite sure what the fallout of making them be that way is though.
21:07 TimToady well, all constants are just subsets of one value
21:07 pmichaud back
21:08 jnthn oh hai
21:08 pmichaud one that that hasn't been constant is our notion of constant :-)
21:08 quietfanatic joined #perl6
21:08 TimToady and since subsets kinda follow class semantics, they'd reasonably default to 'our'
21:09 pmichaud "constants aren't, variables won't"
21:09 TimToady it is the sun! no, it is the moon!
21:09 pmichaud "what light through yonder window breaks?"
21:09 TimToady must be a pretty powerful light beam to break a window...
21:10 TimToady X-ray laser, maybe
21:10 pmichaud nah.  Windows breaks on my computer all the time.  :-)
21:11 TimToady I think we should rename Windows 7--it's an insult to all the Windows Vista users...  :P
21:11 jnthn .oO( Perl Vista )
21:11 pmichaud I was thinking much the same earlier today.
21:11 pmichaud We all know that Windows 98 is better than Windows 95, so it must be *way* better than Windows 7.
21:12 TimToady "requires Windows 98 or better..."
21:12 pmichaud (and for folks reading the backlog -- yes, I fully recognize that the 6 > 5 has a different flavor; I'm not intending to be sarcastic here, just humorous.)
21:12 [particle] were you discussing the defenestration of luminescence again?
21:13 * PerlJam quotes pmichaud out of context
21:13 pmichaud .oO( is there any other way I get quoted? )
21:14 TimToady obviously, 6 is only 20% better than 5
21:14 [particle] no way is 5 more than 80% of 6, i don't care what you say.
21:14 PerlJam TimToady: makes sense.  Improvement increments asymptotically approach 0% over time.
21:14 masak joined #perl6
21:15 pmichaud void qq{pmichaud};     # quoting pmichaud out of context
21:15 TimToady that's why the bell labs folks had to go all the way from System V to Plan 9
21:15 masak Perl 9
21:16 PerlJam TimToady: so, Perl 5 is like AT&T Unix, and Perl 6 is like BSD Unix?
21:16 PerlJam (complete non sequitur, but that's just how the brain (okay, *my* brain) works some times)
21:16 TimToady well, that would be one way to reframe it...
21:17 * pmichaud wonders if Camelia can grow horns.
21:17 PerlJam and a tail
21:17 chromatic Do you really want a slake moth as your language mascot?
21:17 TimToady though it would upset both the people who prefer BSD and Perl 5, as well as the people who prefer SysV and Perl 6, if there are any
21:17 masak the Norwegian horntail...?
21:18 TimToady maybe we should call in Perlaris, and rename Rakudo * to North *
21:19 [particle] i wonder if rakudo * will mark the completion of the second 80% of perl 6
21:19 PerlJam All the wrong connotations at once!
21:19 Tene Maybe just change the vowel.  Parl.
21:19 masak Purl.
21:19 * masak shudders
21:19 pmichaud Tene:  *Now* you're talking!
21:19 PerlJam Tene: and huffmanize it:  P
21:19 jnthn masak: No no no too many bad connotations!
21:19 TimToady PTSD
21:19 masak PTSD 6.
21:20 [particle] the S is for 6.
21:20 TimToady Maybe we should rename Perl Six to Perl Sex.
21:20 masak I don't see a problem with that.
21:20 PerlJam Perl does already power a porn site
21:21 Tene We'd need to rename the operators, though.
21:21 pmichaud The MooseX folks might protest.
21:21 TimToady but it's only powered by Perl Vibe
21:21 PerlJam Tene: we already have a goatse op !
21:23 [particle] the grammar is named fine.
21:27 masak TimToady: can you reframe my pangs of regret over :keepall joining :panic?
21:27 PerlJam masak: did you have a usecase for it?
21:27 masak yes. even the spec itself did.
21:28 pmichaud oh, we already know of use cases.
21:28 TimToady we just don't want to implement it
21:28 pmichaud +1
21:28 masak 'for forcing a grammar that throws away whitespace and comments to keep them instead'
21:28 PerlJam "forcing"?  that doesn't sound very perlish at all.
21:28 masak how is that done in a post-:keepall world?
21:28 pmichaud I think we look at :keepall as a post-6.0.0 feature
21:28 TimToady turns out, however, that .caps and .chunks cover much the same ground
21:29 pmichaud indeed, they do!
21:29 masak hokay. I like that answer.
21:29 sjohnson y0
21:29 masak sjohnson! \o/
21:29 pmichaud afk for a bit -- another kid to retrieve
21:30 TimToady eventually they run out
21:30 sjohnson (´ー` )
21:30 [particle] you need a leash!
21:30 PerlJam [particle]: they'd just chew through it
21:30 pmichaud it will likely be at least another 11 years or so before our kids run out :)
21:30 rgrau joined #perl6
21:33 masak I need to write a cranky editorial about the absurdity of Perl 6 having "missed the boat."
21:33 PerlJam masak: heh!
21:33 masak man, I love that sentence!
21:34 masak it's often spouted on Twitter by scantily-clad beautiful women.
21:34 Su-Shee missed _what_ boat?
21:34 masak I think there's some conditioning going on here.
21:34 [particle] perl 6 is taking the hoverboard instead
21:34 masak Su-Shee: exactly. there is no boat.
21:34 PerlJam Su-Shee: the USS Titanic.
21:34 masak Su-Shee: that's what the cranky editorial eventually said.
21:34 Su-Shee masak: are you really going to bother?
21:35 masak and then it cut the wires holding the elevator and zoomed up the shaft, holding Trinity in one arm.
21:35 PerlJam masak++ lol
21:35 TiMBuS joined #perl6
21:35 masak (I know that movie far to well.)
21:35 masak too bad they never made any sequels.
21:36 masak Su-Shee: bother what? writing cranky editorials? no.
21:36 Wolfman2000 joined #perl6
21:37 Wolfman2000 afternoon
21:37 PerlJam masak: I'm just waiting for the day when someone releases a you tube video of some actors doing things they never did in real life based on samplings from other movies and it looks *real*
21:37 PerlJam masak: that day is nigh upon us I expect
21:37 masak Su-Shee: it wasn't I who said that sentence, it was 'frostyamy', a dark-haired 20-spmething wearing but a necklace.
21:37 masak s/spmething/something/, though an oddly appropriate misspelling.
21:38 japhb nqp: sub foo () { return 0 if 0; return 1; }; say(foo());
21:38 p6eval nqp: Unable to parse blockoid, couldn't find final '}' at line 1␤current instr.: 'parrot;Regex;Cursor;FAILGOAL' pc 1630 (src/Regex/Cursor-builtins.pir:179)␤
21:38 japhb "Kaboom, Kaboom!"
21:38 masak Wolfman2000: \o
21:38 KyleHa rakudo: enum A <b c>; say A.c; say 'alive'
21:38 Wolfman2000 masak: update since you were asleep. I have...a better idea of what went wrong with my pastebin planning the past week. It wasn't so much the database as it was my poor attempts at understanding DBIC docs.
21:39 p6eval rakudo d04cce:  ( no output )
21:39 masak I never sleep. I 'regenerate'.
21:39 * jnthn finally thinks he's worked out why Rat is broken...
21:40 masak Wolfman2000: that sounds good. I'll try to do some pastebin work too now.
21:41 pugs_svn r29075 | kyle++ | [t/spec] Label test for RT 66636: package-scoped constant
21:43 KyleHa Is that A.c call on the enum A supposed to work?
21:45 Wolfman2000 rakudo: enum A<b c>; say A::c; say 'alive';
21:45 masak KyleHa: I think it's A::c, as Wolfman2000 has it.
21:45 p6eval rakudo d04cce:  ( no output )
21:45 Wolfman2000 I think rakudo hates enums
21:45 masak Wolfman2000: no, it's just p6eval being lazy.
21:45 masak Wolfman2000: Rakudo used to hate enums, though.
21:45 KyleHa masak: So is A.c expected to die?
21:46 masak KyleHa: I think so. there's no method .c
21:46 KyleHa Good enough for me.
21:46 masak just a name A::c in the A package.
21:47 Exodist joined #perl6
21:50 M_o_C joined #perl6
21:53 M_o_C joined #perl6
21:55 M_o_C joined #perl6
21:55 justatheory joined #perl6
21:55 fax joined #perl6
21:56 masak priceless. fellow enters #perl (freenode) and asks the people there to help him finish a conversion of a Perl script to Python. the people there freeze him out, and he leaves dejected. his last words: "I gues they were right about wht they said about perl... it really is a shitty community"
21:56 pugs_svn r29076 | kyle++ | [t/spec] Test for RT 66648: acessing enum element as method
21:56 masak naturally, I chatted him up afterwards. :)
21:56 Wolfman2000 masak: ...wow
21:56 Wolfman2000 can't say I fully understand what is meant by freezing out, but...still
21:57 masak Wolfman2000: they didn't actually do much. they suggested he ask his python question on #metallica.
21:57 masak whatever that means. I don't understand the jokes on #perl.
21:58 masak they also asked him, sarcastically, to be more specific about his issue.
21:58 jnthn I really don't get that. Perl rocks far more than Python. ;-)
21:58 pnate2 joined #perl6
21:58 jnthn #perl sounds like an...odd...place. :-)
22:01 masak yes. I don't know why people prefer such an atmosphere. maybe it's a hormone thing.
22:01 chromatic Remember that the first wave of Perl adoption was system administrators.
22:02 Tene masak: it was meant as a demonstration of how #perl isn't the right place to be asking python questions... no more appropriate than #metallica.
22:03 masak Tene: ah.
22:04 KyleHa I thought it meant the band would be more familiar with snakes than programmers.
22:05 masak the person in question appears a bit untrained in asking smart questions. not that that makes it any more motivated to shun him.
22:06 Tene I didn't see it as shunning.  The response I saw was "We're not going to write python code for you, and it's a bit silly of you to ask.  If you want some Perl help from us, go ahead and tell us what you want."
22:06 Tene Which seems completely reasonable to me.
22:07 Tene Maybe I've got whatever #perl has, though. :)
22:09 masak Tene: I didn't react until the fellow left with a disappointed message.
22:09 masak I think I'm extra sensitive to sentences containing 'community' right now. :)
22:09 Tene :)
22:11 pnate joined #perl6
22:12 zamolxes joined #perl6
22:15 * jnthn cries
22:16 jnthn *sigh*
22:16 jnthn I hope the bug I just found ain't what I think it is.
22:16 Tene What's that?  The ng branch is too stressful?  You want me to delete it for you?
22:16 masak Tene: last time I checked, that's not how you reduce someone's stress. :P
22:16 KyleHa jnthn: It's just a flesh wound!
22:16 jnthn Tene: It's git, do what you like. :-P
22:17 jnthn chromatic: ping
22:18 chromatic pong, jnthn
22:18 jnthn chromatic: Do you have vague recollections of an IMCC optimizer issue a while back, where something of the form "foo"() could end up getting mapped directly to a constant PMC lookup?
22:19 jnthn If so - did the code that did this get ripped out, or was an alternative "if there's a lexical of the same name" rule added?
22:19 jnthn I think it's just bitten me again in a more subtle case. :-(
22:19 chromatic That sounds familiar, but I can't recall any details at the moment.
22:20 jnthn OK.
22:20 jnthn I can try and reduce this to something small.
22:20 chromatic That could be because I fixed it and remember how I fixed it, or because I think I know how to fix it.
22:20 chromatic I'm happy to fix any test case you can provide, though.
22:20 jnthn I'm pretty sure you fixed something along these lines.
22:21 chromatic That sounds like something I would do.
22:21 jnthn :-)
22:21 chromatic I keep meaning to get a Poor Impulse Control tattoo on my hand to remind me never to volunteer to fix something like IMCC again.
22:21 masak in the end, I couldn't help the fellow at all. (it was a Python problem above my abilities.) but I sent him off to #python, hugged him and sent my best wishes from the Perl community. :D he seemed very pleased with this.
22:21 chromatic Now I'm one more oblique SF reference away from a hat trick.
22:22 jnthn I've been thinking "oh no, what on earth is wrong with MMD", whereas it seems we're not entering the dispatcher at all...
22:22 KyleHa Hey, chromatic, you tried Snow Crash?
22:23 chromatic I reviewed it, years ago.
22:28 colomon joined #perl6
22:30 KyleHa rakudo: say 1.WHAT
22:30 p6eval rakudo d04cce: Int()␤
22:30 masak rakudo: say i.WHAT
22:30 KyleHa rakudo: Int.WHAT = Str; say 1.WHAT;
22:31 p6eval rakudo d04cce: Could not find non-existent sub i␤in Main (file src/gen_setting.pm, line 324)␤
22:31 p6eval rakudo d04cce: Str()␤
22:31 jnthn KyleHa: EWWW.
22:31 KyleHa jnthn: What should it do?
22:31 jnthn KyleHa: ng does:
22:31 jnthn > Int.WHAT = Str; say 1.WHAT;
22:31 jnthn Cannot assign to readonly value
22:31 lambdabot <no location info>: parse error on input `='
22:32 KyleHa That's what I was thinking too.
22:32 jnthn We tend to get such things less wrong in ng. :-)
22:32 Su-Shee left #perl6
22:34 jnthn chromatic: Ah, I think the problem basically boils down to "if the target sub is marked :anon, the optimization shouldn't apply, since a lookup of it through the namespace would not work". I can probably write a small code example for that, but I may be able to write a patch too...
22:37 PacoLinux joined #perl6
22:38 chromatic I'll take the test.  I'm sure you'd rather work on Rakudo than IMCC, and I don't mind doing the IMCC part with a test.
22:38 chromatic We don't want to blow your instruction cache OR your data cache here.
22:39 jnthn chromatic: Heh. OK, looking at IMCC the problem is actually not so much writing the patch, but I can't actually find where on earth that opt happens. :-)
22:39 jnthn chromatic: Will try and hack up some short PIR example.
22:39 chromatic That's usually the case.
22:40 pugs_svn r29077 | kyle++ | [t/spec] Test for RT 70237: assignment to .WHAT dies
22:41 masak Wolfman2000: half an hour's work. do you want to see my (modest) progress?
22:41 Wolfman2000 masak: sure
22:41 jnthn chromatic: You want a Trac ticket, or is a nopaste OK?
22:41 masak Wolfman2000: http://feather.perl6.nl:8110/cgi-bin/show?id=314
22:42 jnthn chromatic: http://gist.github.com/234236 is the nopaste is enough
22:42 Wolfman2000 ...farther than me
22:42 masak :)
22:42 masak Wolfman2000: of course, I started in the wrong end.
22:42 Wolfman2000 then again, we're at different points
22:42 Wolfman2000 masak: no telling if I started on teh right end or not. I got hung up.
22:42 masak Wolfman2000: *all* you can do at this point is look at that paste. :P
22:42 * masak likes starting in the wrong end
22:43 masak now I have something do blog about today
22:43 masak and, uh, I need to hurry! :)
22:43 Wolfman2000 then hurry away
22:43 * masak hurries
22:43 jnthn chromatic: I realize that we could actually get to the point of saying "well hey, let's rip the opt out alltogether, since you could still do this if it was non-anon". For now, a more convervative "look for the :anon flag and don't apply the opt in that case" will unblock me.
22:44 chromatic jnthn, that should work.  I'll try to have it in the next 24 hours.
22:44 pmichaud back for a bit
22:45 chromatic Fixing the optimization the right way probably requires pirc.
22:45 jnthn chromatic: OK, great, thanks. :-)
22:45 jnthn chromatic: I've added to the gist another amusing example in which we can call by name an anonymous sub. :-)
22:46 pmichaud 22:34 <jnthn> chromatic: Ah, I think the problem basically boils down to "if the target sub is marked :anon, the optimization shouldn't apply, since a lookup of it through  the namespace would not work". I can probably write a small code example for that, but I may be able to write a patch too...
22:46 pmichaud that answer feels very wrong
22:46 jnthn pmichaud: Well, the existence of the optimization at all could well be argued to be wrong...
22:46 pmichaud it could be, yes.  But I'm not sure it is (more)
22:47 pmichaud the "optimization" is the only way to get to a :anon sub without using a constant lookup
22:47 pmichaud i.e., for a long time, parrot's model was that one would get to an anon sub by name
22:47 jnthn I'm not quite sure relying on a mis-applied optimization for a feature is a great plan... :-S
22:48 jnthn pmichaud: You can do it by subid now, no?
22:48 pmichaud put another way, assuming that 'foo'(3) always goes through the namespace isn't/hasn't been Parrot's model.
22:48 pmichaud jnthn: you can do it by subid by doing a constant lookup, yes.
22:48 fax joined #perl6
22:48 pmichaud my point is that the change you're proposing almost absolutely requires a deprecation cycle
22:49 pmichaud because the classic way to get to anonymous subs is through the "optimization"
22:49 jnthn Ouch.
22:49 pmichaud (it was the only way to do it before we had subid)
22:49 jnthn *sigh*
22:49 jnthn We've had subid for quite a while though. But yes, people may have come to rely on it.
22:49 chromatic Let's see what the change breaks in Parrot's test suite first.
22:50 pmichaud chromatic: that's reasonable, although I'm sure I've written a fair bit of code that uses :anon subs in exactly this way.
22:50 jnthn pmichaud: Turns out whipping setting .name out of routine_def fixes the problem (but of course, causes other ones).
22:51 jnthn pmichaud: I'm not quite sure what the next most desirable workaround is.
22:51 pmichaud a flag on a sub that says "never short circuit to me" ?
22:52 pmichaud or perhaps the existence of some other flag can indicate that
22:52 jnthn I had thought :anon was such a flag, but now you've made me think again on that.
22:52 pmichaud no, :anon is definitely *not* that flag :)
22:52 pmichaud at least, not historically
22:53 jnthn IMHO, the current semantics should be deprecated. But I can understand that they may need a deprecation cycle.
22:54 pmichaud we're clearly talking subs here, not methods?
22:54 jnthn Yes.
22:54 pmichaud exported or no?
22:54 pmichaud i.e., with the & sigil or no?
22:54 jnthn The problem (and I went tracing through the multi-dispatcher before realizing this) is that we construct and install a Perl6MultiSub in &infix:<+>
22:55 jnthn But then within core, calls to that are getting re-written to the top candidate.
22:55 jnthn So we never - within core - enter the multi-dispatcher.
22:55 jnthn It's actually not a problem outside of core, because it's a separate compilation unit.
22:55 pmichaud ah, and they're being rewritten because the subs don't have :multi
22:55 pmichaud the existence of :multi also disables the optimization, fwiw
22:56 jnthn I guess maybe that woulda suppressed it too...
22:56 jnthn hmm
22:56 jnthn Not really sure I want to go that way though.
22:57 jnthn But it explains why we've not hit this before.
22:57 pmichaud we'd also end up fixing it if we turned them into lexicals (which needs to eventually happen to), but I think it's a bit premature to be doing that
22:57 pmichaud *too
22:57 jnthn oh, and then they're exported?
22:58 jnthn Yeah, I fear so.
22:58 jnthn Does it actually have to be done like that?
22:58 pmichaud CORE is a lexical scope, yes.
22:58 pmichaud it's not a package.
22:58 jnthn ew
22:58 jnthn OK.
22:59 jnthn Actually, though, we still need to solve the general problem, or it'll impact user's code.
22:59 pmichaud the nicest approach going forward (from the PIR side, not necessarily IMCC) would be to have a flag that says "don't optimize calls to this sub"
22:59 pmichaud i.e,. to take it out of consideration for the optimization
22:59 pmichaud of course, we'd end up using that flag on basically, everything.  :)
23:00 jnthn Yeah.
23:00 masak Wolfman2000: there. I'm done hurrying. :)
23:00 zaslon lolmasakhazblogged! masak++ 'November 13 2009 -- crying wolf and slinging mud': http://use.perl.org/~masak/journal/39894?from=rss
23:00 pmichaud another way could be a pragma that turns off that particular optimization altogether in IMCC
23:00 jnthn That could be cleaner.
23:00 Wolfman2000 crying wolf? I don't like the sound of that
23:00 masak Wolfman2000: it's about Armero, not about Web.pm :)
23:00 pmichaud so IMCC defaults to its current behavior, but with the pragma in place it never performs the direct-call-to-sub optimization for things in the compilation unit
23:00 pmichaud the pragma sounds bestish
23:01 jnthn Alternatively, we teach PAST to never emit 'foo'() but always find_name...
23:01 pmichaud I don't want to do that in PAST, though.
23:01 pmichaud that removes a capability.
23:01 jnthn Hm
23:01 pmichaud We could set a flag in PAST that says to always do find_sub_not_null
23:01 jnthn .oO( removes a bug )
23:01 jnthn ;-)
23:02 jnthn Yeah, we could do that but...well...
23:02 pmichaud I'll do that if it's the best approach, but I'd prefer an imcc-level fix, since it's an imcc-level thing we're trying to address
23:02 jnthn Yeah, agree.
23:02 jan____ joined #perl6
23:02 jnthn I really, really don't want a PAST-level flag for this.
23:03 jnthn Anyway, the upshot is that we're going to kinda block on a resolution to this.
23:04 jnthn Whichever one we end up going for.
23:04 pmichaud chromatic: any opinions about an imcc pragma to disable this optimization versus other approaches?
23:05 masak Wolfman2000: I'm thinking about going to bed, in an unexpected homage to sane sleep times.
23:05 pmichaud (I have to depart in, oh, 8 mins)
23:05 Wolfman2000 masak: ...this is unexpected.
23:05 jnthn masak: huh
23:05 masak :)
23:05 jnthn masak: Who'm I gonna talk linguistics with at 3am now? :-P
23:05 Wolfman2000 jnthn: 3 am which time zone?
23:05 masak that was an awesome conversation. :)
23:06 jnthn Wolfman2000: Mine.
23:06 masak jnthn and I are in GMT+1.
23:06 jnthn masak++ # better answer than mine :-)
23:06 Wolfman2000 While I'm stuck in...I think it's GMT-5 or something along those lines
23:06 Wolfman2000 EST
23:06 masak nod.
23:06 jnthn What's it actually called? CET or so?
23:06 jnthn Central European Time?
23:06 masak aye.
23:06 jnthn It's called that in Sweden too? :-)
23:06 masak CET is either GMT+1 or GMT+2 depending on season.
23:07 masak jnthn: what are you implying? :P
23:07 masak some parts of Sweden are Central European!
23:07 jnthn masak: That there's a disconnect between the geographical region known as "central Europe" and the timezone. :-)
23:07 pmichaud jnthn: I have to leave shortly -- can I leave it to you and chromatic to work out the details?  If an imcc-level flag isn't likely, I'll see about a PAST fix of some sort.
23:08 jnthn I guess there's more than one definition of Central Europe though :-)
23:08 jnthn pmichaud: Can do. :-)
23:08 pmichaud or you could just emit bogus subnames
23:08 masak jnthn: given how the time zones span the Earth, I think a horizontal interpretation of Central is in order in this case.
23:08 pmichaud and use :nsentry()
23:09 masak s/a horizontal/an East-West/
23:09 jnthn masak: Gah, you just go on making good points, don't you. :-)
23:09 masak that's one of my character flaws.
23:09 jnthn pmichaud: Emitting empty subnames was fail, but yeah..hmm.
23:09 jnthn pmichaud: It's like, after midnight here, so I'll probably wait and see if a fix emerges in the near future.
23:10 jnthn It's not like I'm going to get all that much more doen.
23:10 jnthn *done
23:10 masak jnthn: what have you done? will you blog?
23:10 pmichaud jnthn: that works for me
23:10 pmichaud jnthn: are you planning to be around over the weekend?
23:10 * masak hasn't been keeping up
23:11 jnthn masak: I was *hoping* to be able to blog that I've made a bunch of tests for Rat pass again, and maybe even get Complex and Num back in.
23:11 pmichaud my schedule looks much the same as it has been -- a few hours here and there interrupted by various family-related stuff
23:11 jnthn masak: In reality, I've spent two hours tracking down an obscure bug. :-|
23:11 jnthn masak: Such is software dev.
23:11 masak jnthn: I know the feeling. :/
23:11 jnthn pmichaud: I'll be around.
23:11 pmichaud okay
23:11 pmichaud I'm gone for a while -- bbi120ish
23:11 jnthn pmichaud: I need to rest a bit at some point, and I need to do a little @other-job.
23:11 jnthn But I'll be around for sure.
23:12 jnthn masak: It's OK...I'm happy I found what's wrong.
23:12 masak jnthn++
23:12 jnthn masak: Just means I'm not going to be able to write a very exciting post.
23:12 masak jnthn: 'honesty' ge 'excitement'
23:12 jnthn True. :-)
23:13 masak but also 'lying' ge 'honesty', so... er...
23:13 jnthn "Today I got the ng branch passing all tests again!"
23:13 masak :)
23:13 jnthn It's true. I've had it passing all the tests that it passed this morning. ;-)
23:14 * jnthn had to look up where Armero is
23:14 jnthn (well, click the link, anyway :-))
23:14 masak Colombia.
23:15 jnthn Yes.
23:15 jnthn Whoa. Epic disaster.
23:16 jnthn People are weird about volcanos though.
23:16 jnthn When I was in Italy, I went to Vesuvius, and people are still building WAY closer than is a good idea to the thing.
23:16 jnthn Or so the vulcanologist was saying anyway.
23:16 masak nod.
23:16 jnthn Apparently the soil is really fertile.
23:16 masak figures.
23:17 jnthn Due to ash from pervious erruptions.
23:17 masak lots of inorganic... yes.
23:17 jnthn So it's a great place for growing grapes.
23:17 jnthn And making wine.
23:17 jnthn I tried some. It's good wine. But still...quite a risk living there. :-/
23:17 masak tradeoff. (1) make great wine (2) possibly die in volcano eruption
23:18 jnthn Yeah
23:18 jnthn Well, erruptions are not exactly a frequent event I guess.
23:18 quietfanatic joined #perl6
23:18 jnthn Which probably makes it harder to convince people it's a problem being there...
23:19 * jnthn gets onto the non-disaster part of masak++'s blog post :-)
23:20 masak sometimes the non-disaster part is below the ❦ :)
23:20 jnthn masak: I love it apart from this line: say @found[0][2];
23:20 masak yeah, non-ideal.
23:20 masak feel free to make a comment about it! :)
23:20 jnthn OK, so long as you agree it's non-ideal, I'm happy something ideal will happen in the future. :-)
23:21 jnthn I just did. :-P
23:21 jnthn oh, you mean on the...right...
23:22 * masak prefers public flogging
23:23 jnthn You've publicly flogged. Enjoy!
23:23 masak gracias.
23:23 jnthn Nech sa paci.
23:23 jnthn uh
23:23 masak the n00b from #perl is back, privmsging me!
23:23 jnthn De nada.
23:23 jnthn :-)
23:24 jnthn .oO( should try and at least language match occasionally )
23:24 masak seems the #python people were assholes. :)
23:24 jnthn lol
23:24 jnthn I guess now he can take his experiences and extrapolate to "programmers" ;-)
23:24 masak guess so.
23:25 masak anyway, now he's asking simple Perl questions, so I can actually help him.
23:25 oZ] Hah.
23:32 Wolfman2000 WOOT! Finally got something I can share!
23:33 masak Wolfman2000: money? :)
23:33 Wolfman2000 masak, oZ], others: http://i33.tinypic.com/sq6z46.png  <-- I believe I'm now able to show which pastes are recent.
23:34 masak Wolfman2000: cool!
23:34 Wolfman2000 That was what was bugging me this past week.
23:34 Wolfman2000 Mainly due to my incompetence with DBIC
23:34 masak recent. dang, I should add timestamps to my pastes. :)
23:34 Wolfman2000 masak: I have timestamps AND an expires column in minutes
23:34 Wolfman2000 already got the query made
23:34 Wolfman2000 and it works
23:34 masak Wolfman2000++
23:35 Wolfman2000 ...I'm still giving a thumbs down to mysql-- however.
23:35 oZ] Wolfman2000++
23:43 diakopter nqp: sub a() { return 7,[4,5,6] }; say(a())
23:43 p6eval nqp: 2␤
23:43 Wolfman2000 ...and my database structure is slightly off. Figures.
23:44 Wolfman2000 ...now important is annotating pastes anyway?
23:44 masak not very.
23:44 Wolfman2000 masak: Usually easier to just make new pastes?
23:44 diakopter nqp: sub a() { return 7,[4,5,6] }; say(a()[1])
23:44 p6eval nqp: 3␤
23:46 Wolfman2000 ...I have new stuff to think about then.
23:47 masak Wolfman2000: we're starting from different directions in that sense too.
23:48 hcchien joined #perl6
23:48 masak Wolfman2000: you do design-implement-design. I do implement-design-implement. :)
23:48 Wolfman2000 masak: I don't quite get what that means.
23:49 masak Wolfman2000: I didn't phrase it too well.
23:49 masak Wolfman2000: I think your design is more deliberate than mine.
23:49 masak my design is more by-need.
23:50 Wolfman2000 masak: Well, I'm partly cheating by using one of my other website layouts right now.
23:51 masak that's permissible. :)
23:51 astrojp joined #perl6
23:54 astrojp left #perl6
23:57 masak 'night, #perl6.
23:57 jnthn night masak

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

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs