»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by wolfe.freenode.net on 30 October 2009.
masak yeah. 00:00
one gets too used to idioms sometimes.
yay! 1080 views on the blog yesterday! :) 00:02
diakopter turns off ab :)
masak only 4x left for my estimate to hold. :) that's no problem at all. 00:03
diakopter RT @luqui 00:04
Oct 31 = Dec 25. When is the 19th of Hexember?
oh wait; this isn't twitter
frettled masak: ooh, that's a nice improvement already
diakopter: or dodecember? 00:05
masak diakopter: I want to know when binember is.
wow! the schedule is full of people! \o/ 00:06
Wolfman2000 takes another look at the schedule 00:07
masak I bet we'll feel, as we near the end of the advent calendar, that Advent doesn't have enough days for Perl 6. :)
Wolfman2000 That also reminds me. I think my post is coming in 20 minutes
pugs_svn r29244 | masak++ | [perl6advent-2009] changed my scheduled topics a bit 00:08
frettled masak: in that case, we can extend it until the orthodox Christmas Eve, January 6th.
masak frettled: that would be highly unorthodox.
frettled masak: and if that's not enough, until Great Id.
masak: hihi
masak: en.wikipedia.org/wiki/Eid_ul-Adha 00:09
masak I agree with Lewis Black. Abraham shouldn't be celebrated, he should be recognized as the psycopath he was. :/ 00:10
but this is not the time and place for that discussion.
frettled We could celebrate psycopaths and sociopaths in general?
masak no, we should help them. unless they lived thousands of years ago. 00:11
SirKay Abraham who?
masak SirKay: the one in the Old Testament.
SirKay I like the theory that when Abraham tried to sacrifice his son, he was making a pact with a fallen angel, and not the true God
masak that is consistent with the theory that he was a psycopath. 00:12
frettled I think I like not to discuss religion. :)
masak agreed. 00:13
TimToady I think I am glad that God sometimes allows psychopaths and sociopaths to do his work, or not much would get done. :)
phenny TimToady: 02 Dec 23:34Z <masak> tell TimToady look at this comment: perl6advent.wordpress.com/2009/12/0.../#comments -- there's something missing before the '?', probably a <huey dewey louie> which was eaten by the HTML comment sanitizer. would adding an extra parameter :last-separator to .fmt for arrays (and hashes) be worth its weight, you think?
masak TimToady: that's a new way of seeing it. I'll think about that. :)
SirKay Tim: that reminds me of my view on sociopaths, that perhaps it is like from Lord of the Rings 00:15
when Frodo says that Gollum deserves to die, and Gandalf says that he does, but we shouldn't be so quick to kill, and that even Gollum might have a role in things 00:16
that's not to say that Gollum is a textbook sociopath, but he was definitely nuts 00:17
TimToady btw, my name is not Tim, but Toady, as in a Toady of Tims
SirKay fair enough. 00:18
and my name isn't SirKay at all, it was kind of a mistake to be honest :p
TimToady yes sir!
SirKay Melchior and Balthazar were taken, so I started going into Arthurian names.
TimToady I always had a soft spot for Pelennor myself... 00:19
frettled TimToady: I thought the Dead Marshes were a soft spot. ;) 00:20
TimToady I keep chasing the questing beast, but mostly only find fewmets... 00:21
frettled That's such a lovely word. 00:22
TimToady frettled: you're confusing it with Pelanor, which is across the river
SirPelennor is not a where, but a who. 00:23
but maybe that was a conspiracy between T.H. White and J.R.R. Tolkien; they did live relatively close to each other, in the overall scheme of things... 00:24
colomon TimToady: is that how White spelled it? It looks wrong to my eye. (And I'm too lazy to go downstairs to the bookshelves to check.) 00:25
wikipedia says Pellinore under Once and Future. 00:26
TimToady I guess if I can't even remember how to spell the guys name, my soft spot can't be all that soft... 00:27
colomon must really getting around to listening to the audiobook of Malory... 00:28
TimToady that won't help you with the spelling much either :)
in fact, that's part of my problem; I had TOaFK read to me out loud by my wife.
I know how to spell fewmets though (I think) 00:29
colomon awwww.... closest we've come is Gawain and the Greent Knight.
TimToady: fewmets looks right to me. :)
SirKay I think I also tried Gareth.
colomon s/Greent/Green/
00:30 nihiliad left
frettled TimToady: Tolkien's spelling was, in fact, Pelennor, as in Pelennor Fields :) 00:30
TimToady and it's not like Pellinore spelled anything consistently either... :) 00:31
well, Tolkien, he thinks he can just wrap/warp English around his little finger. :P
frettled And «fewmet(s)» is correct, it literally comes from the words «few» and «met».
colomon TimToady: but I'm willing to consider White authoritative.
frettled TimToady: yeah, cheeky bastard
TimToady durn lingrists...
frettled One of these days, I tell you, one of these days, one of them is going to try to do something other than study dead languages. 00:33
Wolfman2000 ...and my post is published 00:35
TimToady don't trust 'em, they're all sociopaths...
Wolfman2000 so...why didn't the bot report it?
00:35 TimToady sets mode: +v hugme, TimToady sets mode: +vvvv ilbot2 ilogger2 IRSeekBot lambdabot, TimToady sets mode: +vv lisppaste3 phenny, TimToady sets mode: +vv pointme pugs_svn
Wolfman2000 ...alright, I'll do it 00:35
TimToady um, cuz it's not running?
Wolfman2000 lolperl6adventhazblogged! Day 3: static types and multi subs! perl6advent.wordpress.com/2009/12/0...ulti-subs/ 00:36
frettled But it's not on the front page for some reason. Hmm.
masak Wolfman2000++
frettled TimToady: We had to kick zaslon out because it got itself into trouble over my latest blog post.
sjohnson Q: does perl 6 have a special way to reduce redunancy, if doing something like: if (defined(%goose.noise)) { print %goose.noise } ?
masak frettled: I see it on the front page.
frettled masak: ah, now it's there. 00:37
Wolfman2000 frettled: we're talking within 6 minutes
masak sjohnson: do an assignment inside defined() ?
frettled Wolfman2000++, oh yes!
sjohnson masak: i should be doing that more in p5 too, i will see how it works out
though not quite sure how to write it. if (defined($m = something()) ? 00:38
masak sjohnson: also, I tend to use this idiom sometimes: `if interesting-computation -> $result { ... }`
sjohnson will experiment thanks masak++
TimToady er, second identify sez Str is an integer
masak sjohnson: yes, like that.
sjohnson: likely 'my $m', though. 00:39
sjohnson masak: "my" hero
:)
masak bows
frettled sjohnson: given(%goose.noise) { …? 00:40
TimToady what's with the parens?
frettled TimToady: bad habit
I type them even when I don't use them.
masak bad frettled :) 00:41
frettled my example code didn't use them.
frettled whacks itself.
Wolfman2000 ...and I already got a reply
or a pingback
TimToady Wolfman2000: did you see my comment above about cut-n-paste
er, copy/paste error
Wolfman2000 TimToady: zaslon is gone, saw that
TimToady no second def of identify is wrong
sez a Str is an integer 00:42
Wolfman2000 ...typo
sjohnson frettled like me probably enjoys and is used to the p5 given/when stuff
Wolfman2000 I'm surprised that wasn't picked up
TimToady What, you didn't write the tests first? tsk, tsk... :) 00:43
frettled sjohnson: oh, no, I started with given/when before it was backported.
sjohnson frettled: oic
Wolfman2000 TimToady: blame finals, alright?
TimToady don't look a gift feature in the function? :)
sjohnson cause even i do it
Wolfman2000 anyway, fixed
finals--
TimToady finals works for me :)
frettled @karma finals 00:44
lambdabot finals has a karma of -1
frettled finals+=1000
;)
sjohnson heh
Wolfman2000 @karma finals
lambdabot finals has a karma of -1
TimToady so semifinals should have a karma of half of finals
Wolfman2000 fail
frettled finals--
semifinals--
@karma semifinals
lambdabot semifinals has a karma of -1
Wolfman2000 TimToady: usually those are called midterms
frettled can we come to terms with that? 00:45
sjohnson masak: yep, this defined trick you mentioned definitely makes my code look sexier
masak sjohnson: good to hear.
frettled Wolfman2000: zaslon will probably be back once it doesn't barf every 150 seconds on my blog post ;)
TimToady also, it uses qw, which means it's gonna say: "This rules"isastring. 00:46
Wolfman2000 frettled: noted
TimToady you probably meant qq there? 00:47
Wolfman2000 ...yep
I did ask for feedback from my posts...wonder how we all missed these 00:48
00:49 justatheory left
sjohnson rakudo: say 3; 00:50
00:50 brrant left
frettled p6eval isn't on the channel, hrm. 00:51
sjohnson i wonder if carlin's bot is kicking around
or was it colomon? i was getting them mixed up :[
frettled I wonder if it responds to invites 00:52
colomon I've not made a bot, if that's what you're asking about.
sjohnson sorry colomon mixed u up
colomon Pretty sure you're thinking of carlin++, he of the p6 bots.
sjohnson: no worries. 00:53
sjohnson carlin ++ botmaster
oops, ==
someone told me in #perl that use v5.10.0 is incorrect because of warnings. i think it's BS. i see moritz_ though uses v5.010 however 00:56
00:56 cdarroch left
Wolfman2000 okay, homework time. These finals are going down... 01:01
diakopter moritz_: 01:02
colomon masak: in your .fmt code on github, why "for self.list" instead of just "for self"?
TimToady self probably doesn't flatten in list context, like $x 01:03
masak colomon: because I don't believe self would represent the items of the list, only the list in scalar context.
colomon: what TimToady said; our intuitions agree there. :)
01:03 leedo joined
colomon So if you just said "for self", you'd "loop" over a list with the single element self? 01:04
TimToady either we're both wrong or we're both right :)
nod
if self were a function that returned a list derived from self, you couldn't get back to the original container 01:05
01:07 japhb left
TimToady if masak and I both change our mind simultaneously, you may suspect we got quantumly entangled somehow. 01:07
masak hate when that happens.
TimToady me too
masak naturally :)
colomon Makes sense, I guess. I just never saw the .list method until working on ng's Range, and assumed that List.list just returned self. 01:08
Spent too much time working with scalar types, I guess. :) 01:11
01:12 s1n joined 01:17 brrant joined 01:18 romanhunt left 01:19 gfx joined 01:21 agentzh joined
Wolfman2000 is no longer a fan of Chuquet. 01:33
sjohnson Wolfman2000: how come? 01:37
Wolfman2000 sjohnson: when will I ever have to approximate square roots outside of a history of math class? 01:38
sjohnson true
quantumEd approximate square roots????
that's how calcuuators work
Wolfman2000 ...wait a second... 01:39
quantumEd anytime you compute a square root of anything you're doing an approximation algorithm
Wolfman2000 now I wonder if such a program could be made in Perl.
specifically, Perl 6.
quantumEd millions of square roots are happening every moment!
Wolfman2000 better finish his homework first BEFORE playing around.
masak Wolfman2000: it can, but on Rakudo you'll likely run into the Rats bug. 01:40
Wolfman2000 masak: and which bug is that again?
masak Wolfman2000: Rats which get larger and larger numerators and denominators until they explode.
colomon masak: I fixed that. 01:41
now the magically turn into Nums.
masak oh! colomon++
excellent.
Wolfman2000 But Nums aren't as fun... 01:42
01:42 JimmyZ joined
colomon there may still be a few edge cases that eluded me, but I added a bunch of tests. 01:42
Wolfman2000 that reminds me...isn't moritz_'s gift for tomorrow about testing in Perl 6? 01:43
pugs_svn r29245 | duff++ | [perl6advent] No, there doesn't need to be a Dec 25 entry 01:44
masak Wolfman2000: it is. 01:45
Wolfman2000 I will look forward to seeing how this works. I wonder how much of the code will be "borrowed" from Perl 5's Test::More...
colomon okay, now that my fingers aren't covered in melted honey from slices of fresh sourdough, I can explain more. 01:46
Wolfman2000 sounds delicious 01:47
colomon All the tests for correct results I wrote pass.
Wolfman2000: was.
There are additional tests that we don't punt to Nums in cases where it's possible to keep thing in Rat precision -- those we do not pass yet.
Wolfman2000 colomon: why not make those extra tests and punt to Nums anyway? 01:48
colomon Let me demonstrate: 01:49
rakudo: say ((1/60000) * (1/60000)).WHAT
ack.
Wolfman2000 ...the bots gone
colomon nooooooo...... 01:50
actually, that was a bad test anyway.
The point is, look at 1/60000 + 1/60000. 01:51
The answer is obviously 2/60000 == 1/30000 -- no problem keeping in Rat.
Wolfman2000 3.33333333333333e-05 <-- that's no Rat
colomon But Rat's infix:<+> calculates that by multiplying 60000 by 60000 to get the new numerator. 01:52
That overflows the Int32 denominator. That was the bug we had last week.
arnsholt colomon: Why doesn't it compute the LCM first?
Wolfman2000 colomon: how hard would it be to add a...what arnsholt said.
colomon (s/numerator/denomiator/ two back.)
I fixed it so if that overflow happens, we switch to Num math and still get a numerically valid result. 01:53
That's needed for the general case: something like 1/60000 + 1/60001.
Wolfman2000 I've already "stolen" a GCD function for the use of my rsa.pl code 01:54
colomon But we've specced it to stick with Rat when it is possible.
Wolfman2000 hang on while I pull it up
colomon We've already got a GCD function for Rat.
Wolfman2000 ...umm...did I...accidentally...remove my own directory?
colomon I just haven't had a chance to add it to the math functions, that's all.
Wolfman2000 ...no, I just moved it 01:55
colomon I've been busy doing $work and getting the Advent calendar set up and hacking on ng.
arnsholt Ah, right. But now that I think about it, the naive way of computing the LCM involves multiplying the two numbers anyways =)
But there are ways to get around that
01:55 japhb joined
Wolfman2000 sub gcd(Int $x, Int $y) { return $y ?? gcd($y, $x % $y) !! $x; }; 01:56
colomon and there's no pressing need to get it working.
Wolfman2000 sub lcm(Int $x, Int $y) { return ($x * $y)/ gcd($x, $y); };
If anyone is concerned about $x * $y overflowing, this can easily be re-written 01:57
colomon certainly it will overflow in this case -- if it didn't the gcd stuff in Rat.new would take care of the issue already. :) 01:58
Wolfman2000 colomon: so do $x / gcd($x, $y) * $y and you get the same result
arnsholt Add some parens and it'll even work I think (* binds tighter than /)
Wolfman2000 arnsholt: I believe * and / should be equal 01:59
or equiv
colomon actually, needs to be div instead of /, else we will get a Rat there, and that would be bad.
Wolfman2000 colomon: the point is, you know the basics
I'm not touching ng at this point with an 11 foot pole.
colomon Oh, this stuff can't go in ng yet -- ng's operator overloading is all messed up. 02:00
Wolfman2000 ...can't the subs?
or rather, can the subs go in?
02:02 REPLeffect_ left
colomon the problem is, the best solution I've found depends heavily on calling the correct operator version, and ng doesn't do that correctly yet. 02:02
I have hacked in versions of the old broken master versions in ng, but the fancy new ones won't work. 02:03
I'll port it all over once ng gets fixed.
Wolfman2000 and when ng gets fixed, perhaps then the subs I pasted will be of use?
colomon We already have a gcd algorithm in Rat.pm which is less elegant than yours but probably more efficient (not recursive). 02:05
Your lcm ought to be useful.
Wolfman2000 I took the lcm from the internet somewhere
02:08 vamped joined 02:09 ShaneC1 joined 02:10 ShaneC left 02:17 nihiliad joined 02:21 colomon left 02:25 orafu left, envi^office joined, orafu joined 02:33 mikehh_ joined, justatheory joined 02:34 astrojp joined
masak rakudo: my Int $a = Inf 02:36
Wolfman2000 <rakudo> I'm MIA
masak locally, I get "Assignment type check failed; expected Int, but got Num".
Wolfman2000 I did too on Master Branch 02:37
masak that seems less than reasonable to me.
Wolfman2000 Infinity is a Num
masak infinity, as we all know, is an integer. :)
Wolfman2000 masak: is it?
TimToady: straighten us out please
masak Wolfman2000: sure. if not, can you name its decimal expansion? :P 02:38
02:38 p6eval joined
Wolfman2000 the bot's back! 02:38
diakopter rakudo: my Int $a = Inf
p6eval rakudo 7ce13d: Assignment type check failed; expected Int, but got Num␤in Main (file <unknown>, line <unknown>)␤
diakopter i dunno why it left
i signalled hangup 02:39
masak submits rakudobug
Wolfman2000: S02:649 says that Int vars should be able to hold Inf and NaN values. 02:40
02:43 ShaneC joined, ShaneC1 left 02:48 mikehh left 02:50 colomon joined
diakopter rakudo: my Int $a = $a.WHAT; say $a 02:57
p6eval rakudo 7ce13d: Int()␤
diakopter ng: my Int $a = $a.WHAT; say $a
p6eval ng 460d99: Mu()␤
masak WHAT? 02:58
ng: my Int $a = Mu; say $a
p6eval ng 460d99: Mu()␤
masak ng: my Int $a = "OH HAI IM NOT AN INT" 02:59
p6eval ng 460d99: ( no output )
masak guess ng doesn't check types yet.
Wolfman2000 ng: my Int $a = "Invalid"; say $a; 03:02
p6eval ng 460d99: Invalid␤
Wolfman2000 apparently not
colomon definitely not. 03:07
BTW, just checked smarter Rat math into master.
> say (1/60000 + 1/60000).perl
1/30000
lambdabot Not in scope: `say'Not in scope: `perl'
colomon only works for + and -, * and / are trickier and I need to go to bed now. 03:08
masak colomon++ 03:12
Wolfman2000 so src/setting/Rat.pm is where I should check his code...got it 03:13
colomon The tricky bit here is we froze master's spectest at a version before I added the new tests to rat.t. 03:14
masak we froze master's spectest? I missed when that happened.
colomon It's really late in the day to be adding patches to master, I fear. But this stuff should drop into ng with no issues once ng works.
masak: jnthn and I had a coup. :)
masak I should backlog more carefully :) 03:15
colomon We wanted ng's spectests to reflect the current specs, and the current specs are rapidly drifting away from master.
instead of branching spectest, just hardcoded master to use an older version of the spectests. 03:16
off to bed...
Wolfman2000 masak: I assume you have commit priviledges to rakudo, right? 03:17
masak Wolfman2000: yes. 03:18
don't use it as often as I'd like, but... :)
Wolfman2000 well, I don't want to risk being the goat here.
lisppaste3 wolfman2000 pasted "Would this work for returning purposes, or would I have to explicitly declare return first?" at paste.lisp.org/display/91489 03:19
Wolfman2000 masak: ^ 03:20
masak Wolfman2000: are you sure it's 'eq', string equivalence?
Wolfman2000 ...I meant ==
masak Wolfman2000: and yes, you need to have 'return' first.
Wolfman2000 ...well, do you think such code would work out just as well, and avoid requiring the GCD?
masak yes, it seems a sane idea. 03:21
Wolfman2000 I don't know if I have commit access to parrot. I'm a little afraid to try honestly.
masak of course, it's a premature optimisation, but as those go, it looks OK. :)
Wolfman2000 ...how is it premature?
masak Wolfman2000: Rakudo doesn't sit in Parrot anymore.
03:21 felipe left
masak Wolfman2000: well, have you profiled it? 03:21
Wolfman2000 masak: most likely not, since I don't recall what is meant by profiling here 03:22
masak Wolfman2000: maybe the GCD routine is really quick when $a.denominator == $b.denominator?
Wolfman2000: profiling means 'checking how fast it runs before and after a given change'. 03:23
Wolfman2000 ah
masak: ...don't know of any good scientific ways of checking that, honestly.
03:23 justatheory left
Wolfman2000 Plus, still bogged down in homework to check effectively. 03:23
I'm only chatting because I needed a break.
masak sure.
Wolfman2000 Still...I honestly think this will be faster.
masak it seems likely.
Wolfman2000 the big concern is the major calculation at the end of infix:<+> 03:24
8 operators in use if I counted right
and that's not even counting the while checks in GCD
now, do that versus...3/4 operations with my early return 03:25
only one complicated one, division. The rest are simple.
colomon actually, just remembered that TimToady has written even more complicated rules for what + and - are supposed to do. but off to bed for real now... 03:27
masak colomon: 'night 03:40
03:43 meppl left 03:45 mikehh__ joined 03:46 vamped left 03:59 mikehh_ left 04:02 quantumEd left
diakopter ng: say 0.00000000000000000000000000000001 04:21
p6eval ng 460d99: Nominal type check failed for parameter '$b'; expected Int but got Num instead␤current instr.: 'perl6;Rat;&gcd' pc 221894 (src/gen/core.pir:16671)␤
04:22 beggars joined
diakopter MASAK 04:22
:)
masak DIAKOPTER
diakopter ^^
masak diakopter: ng.
I don't submit ng bugs.
diakopter oh.
masak come back when it's master. :) 04:23
diakopter yeah but
why is gcd getting called
on 0.00000000001
oh, duh, to reduce the Rat
masak :)
diakopter ng: 0.00000000000000000000000001 04:24
p6eval ng 460d99: Nominal type check failed for parameter '$b'; expected Int but got Num instead␤current instr.: 'perl6;Rat;&gcd' pc 221894 (src/gen/core.pir:16671)␤
diakopter ng: 0.0000000000000000000000001
p6eval ng 460d99: ( no output )
04:25 mikehh joined
diakopter ng: say 1e1.perl 04:25
p6eval ng 460d99: Method 'perl' not found for invocant of class 'Num'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
diakopter ng: say 1e999999999999999999999999 04:26
04:26 ShaneC left
p6eval ng 460d99: undefined identifier 'Inf'␤␤current instr.: 'perl6;PCT;HLLCompiler;evalpmc' pc 924 (src/PCT/HLLCompiler.pir:519)␤ 04:26
Wolfman2000 ...so ng is now broken. nice. 04:27
diakopter ng: say 1e9999999999999999999999999999999999999999999999999
p6eval ng 460d99: 0␤
sjohnson oh noees
diakopter Wolfman2000: what do you mean 'broken'? 04:28
as opposed to....?
Wolfman2000 ng: say 1;
p6eval ng 460d99: 1␤
Wolfman2000 ...okay, it can say 1
ng: say 1.perl
p6eval ng 460d99: 1␤
Wolfman2000 ng: say 1.2.perl
p6eval ng 460d99: 6/5␤
Wolfman2000 ng: say 1e1.perl
p6eval ng 460d99: Method 'perl' not found for invocant of class 'Num'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
Wolfman2000 ...nevermind diakopter
diakopter rakudo: say 1e1.perl 04:29
p6eval rakudo 7914ca: 10␤
Wolfman2000 ...anyway, it's time for me to do something I should have done awhile ago.
Wolfman2000 goes to remove his Windows 7 RC from VirtualBox.
04:37 hercynium left 04:38 mikehh__ left
Wolfman2000 okay, that's enough homework, and the trash will take awhile to empty. 04:41
masak: ...what time do you go to bed again? It's strange seeing you up this late.
masak Wolfman2000: your observation is correct. my waking hours have been corrupted. 04:42
by my watch, I should have been sound asleep six hours ago.
I expect to start to feel tired in two or three hours.
that's when the sun rises here.
Wolfman2000 takes a look at his Pastebin for the first time in a few days...no contributions? :( 04:43
masak Wolfman2000: haven't gotten that far, sorry.
Wolfman2000 how hard is it to get people to contribute when I've already added people?
masak: I was expecting...well, more frew to help
masak Wolfman2000: from experience, people contribute both more often and less often than one would expect :) 04:44
Wolfman2000 masak: that's an oxymoron. Please make sense.
masak well, people do surprise me by contributing stuff that I didn't expect them to. and sometimes when I'm expecting contributions, there are none. 04:45
04:46 felipe joined
Wolfman2000 I'd have contributed more to November, but I don't know how you want me to handle the adding of users. 04:46
That...is up to you
masak hm. 04:48
haven't thought much about it.
just adding a new hash to the list of users, and saving it back to file -- should be enough. 04:49
Wolfman2000 ...if I knew how to do that, I wouldn't be in my predicament.
masak I see.
I might throw together a patch tomorrow, and then we can discuss it. 04:50
if that helps.
Wolfman2000 Nothing wrong with the discussion. Just unsure if I'll have the time. 04:51
I basically got...2/4 assignments done.
But everything is due Monday
I may need those 4 days
masak absolutely.
I wish you few distractions.
Wolfman2000 Thanks. For now, I'm letting myself be distracted with the pastebin...logging in and out is the last thing, and I want to at least get something up. 04:52
masak nod. 04:55
PerlJam Wolfman2000: to what would you like contributions? 04:57
Wolfman2000 PerlJam: If I understood your slightly broken english correctly...cleanup, improvements, etc. 04:58
PerlJam looks at his english.
It doesn't appear broken.
:)
04:59 pointme left, pointme joined 05:00 zaslon joined
zaslon lolfrettledhazblogged! frettled++ 'Oslo.pm Past and Future': http: 05:00
Wolfman2000 frettled: Your bot is back!
PerlJam: I'm still slightly out of it here
carlin umm, zaslon, where's the rest of the URI? 05:01
zaslon lolfrettledhazblogged! frettled++ 'Oslo.pm Past and Future': http: 05:03
carlin Argh
Wolfman2000 3 minute gap... 05:04
carlin 3 minute crontab
05:05 hercynium joined
zaslon lolfrettledhazblogged! frettled++ 'Oslo.pm Past and Future': http: 05:06
masak well, this will be fun.
thanks a lot, frettled :P
Wolfman2000 ...hold on a second. 05:07
I think there is a way to shut zaslon out WITHOUT kicking him out
carlin Remove frettled's blog?
Wolfman2000 ...yeah, found it
/mode #perl6 +B ~q:zaslon!n=zaslon@phoenix.theintersect.org <-- that should do it. 05:08
err, +b
masak: give it a shot before 45 seconds
zaslon lolfrettledhazblogged! frettled++ 'Oslo.pm Past and Future': http: 05:09
05:09 zaslon left
masak ...too late. :) 05:10
carlin I have no idea why it's doing that
I'll have to look at it later
Wolfman2000 Well, that command may be useful for the future.
@karma frettled
lambdabot frettled has a karma of 21
Wolfman2000 frettled-- to fix some bot issues.
05:11 gfx left 05:13 leedo left 05:14 scp1 joined
masak scp1: welcome :) 05:14
scp1 thanks ;)
masak scp1: have you seen the Perl 6 Advent calendar? perl6advent.wordpress.com/ 05:15
scp1 masak, heh, nice, I'll have a look
Tene I need to figure out what I'm going to post on RSN... 05:16
scp1 "There’s only one risk in all of this: Perl 6 might soil the reputation of the Perl family of languages by simply being too darn readable."
;o
PerlJam scp1: be sure to check back for new posts every day :)
05:17 stephenlb left
Tene going to spend some time with the gf, and then maybe I'll have an hour to spend on ng tonight. 05:18
masak \o/ 05:19
I've spent the whole night building a miniature model of regex backtracking. I've almost got it working now. 05:37
diakopter masak: oh hi 05:47
a physical modeL/
?
masak diakopter: hi; I was just leaving to go have some sleep :)
diakopter oh
a physical model?
masak diakopter: no, a tree traversal engine.
diakopter in Perl 6?
masak yes. 05:48
but for just a small subset of regexp node types.
diakopter: want me to nopaste my partial result so you can play with it?
diakopter sure
masak it's uncommented so far. 05:49
gist.github.com/247924
Wolfman2000 PerlJam: before I head off to bed...what time zone are you in?
masak diakopter: what this program does (incorrectly, so far) is to match /[a b*? c]+ ac/ against 'abbcabcac'.
Tene What? No blog posts for me to read in my rss feed? Hmm... I have an idea... 05:50
masak diakopter: it does so using no callstack recursion or continuations at all.
Tene Hey, masak, did you hear that it's actually November again? Yeah, they decided to have two Novembers this year.
masak Tene: nice try. :P
Tene Cwap. :P
masak :P 05:51
diakopter: the underlying idea is that the tree spider handles the traversal, and talks to the regex nodes about what they want to do.
Tene Maybe if I /nick TimT0ady first then you'll believe me...
masak diakopter: the regex nodes may answer DESCEND, MATCH or FAIL, depending on their mood.
Tene: we'll never know now, will we? :) 05:52
diakopter no continuations?
masak nope.
Tene I should have taken a continuation first...
masak and based on my current progress, I believe it's very possible to do it this way.
diakopter so it can't backtrack?
masak yes, it can.
it stores 'savepoints' to where it might backtrack later.
but that's no problem, since there's no recursion involved anymore. 05:53
so there's no call stack to unroll and re-roll.
just the spider chugging along through the tree, talking to the nodes.
diakopter what is stored in a savepoint? 05:54
masak diakopter: an emulated call stack, along with a small environment for each node in it.
diakopter hm 05:55
diakopter impressed
masak hold that thought till I get it working properly. :) 05:56
diakopter does this run in ng or rakudo
masak rakudo master.
diakopter tries it on p6eval machine
how speedy is it
masak but as I said, it currently botches up the string position.
so it doesn't quite work.
diakopter for backtracking, yeah, each node needs to keep its start... but... oh 05:57
oh
masak that sounds like the oh of realization.
diakopter this is very very similar to my conception a few generations ago
masak uh oh :)
diakopter I don't mean to be rude/condescending 05:58
masak not at all.
why did you abandon it?
diakopter I struggled with simulating the stack
(and keeping all the states so backtracking would work properly)_
masak tell me about it. :)
diakopter ended up with jsmeta... 05:59
masak what's that?
diakopter code.google.com/p/jsmeta/source/bro...grammar.js
that's the grammar for Microsoft's MGrammar
in the jsmeta regex engine 06:00
masak ok.
diakopter I call the automata "continuations"
masak is it anything like STD.pm's model? 06:01
diakopter here are the parser/automata primitives: code.google.com/p/jsmeta/source/bro...-parser.js
MGrammar's not much like STD
but the jsmeta engine is dynamic enough to emulate STD's capabilities
masak ok.
diakopter esp. since yesterday/today I figured out LTM 06:02
masak oooh!
diakopter finally
masak I'd be happy to talk more about it... but now I'll head home and go to bed. :)
diakopter took me a year or three
ok' nite
masak diakopter: good, then you can help me grok it. :) 06:03
'night
06:03 masak left 06:12 nareaisd left 06:19 mberends left 06:31 kaare joined, kaare is now known as Guest30593 06:35 envi^home joined 06:40 brrant left 07:01 gfx joined 07:04 quantumEd joined 07:10 rgrau_ left, justatheory joined 07:14 reid06 joined 07:15 pure1111_ joined 07:16 reid06 left 07:17 reid06 joined 07:19 Minthe joined
moritz_ good morning 07:20
07:22 envi_office2 joined
JimmyZ good morning 07:23
07:27 brrant joined 07:33 pure1111 left 07:35 felipe left, pure1111_ left
moritz_ sjohnson: (backlog) I don't use v5.010 but 5.010 07:40
07:40 mberends joined 07:41 p6eval left, envi^office left, p6eval joined, moritz_ sets mode: +v p6eval
moritz_ rakudo: say 'test' 07:42
p6eval rakudo 7914ca: test␤
mberends Wolfman2000++ # clear and to the point Advent blog post, very nice
JimmyZ oh perlcabal.org/svn/pugs is down? 07:45
moritz_ works for me 07:46
JimmyZ Internal Server Error 07:47
07:48 gfx left 07:50 justatheory left 07:53 mikehh left 07:54 mikehh joined 07:58 pnate2 joined 08:03 pnate left 08:17 ihrd joined 08:19 iblechbot joined 08:20 rfordinal joined 08:21 rfordinal left 08:27 nihiliad left 08:49 felipe joined 08:52 Su-Shee joined
Su-Shee good morning. 08:52
dukeleto good localtime() 08:53
diakopter moritz_: I noticed you hadn't fixed the & in /en/article/longest-token-matching 09:06
09:08 am0c joined 09:26 constant joined
moritz_ diakopter: I'll change a to \w so that it has a chance to match 09:27
09:31 Minthe left 09:35 fridim_ joined 09:41 beggars left 09:59 pnate joined
diakopter moritz_: cool 10:01
TimToady: thanks for ltm discussion earlier 10:02
frettled Ooh, p6eval is back!
hugme: hug p6eval
hugme hugs p6eval
diakopter moritz_: yes, I signalled hangup to p6eval and it returned
10:02 scp1 left 10:12 pnate2 left 10:15 JimmyZ_ joined 10:22 mikehh left, pnate2 joined, pnate left, mikehh joined 10:29 mikehh left, mikehh joined 10:32 JimmyZ_ left 10:35 agentzh left 10:36 JimmyZ left 10:37 envi_office2 left 10:47 beggars joined 10:56 pnate joined 11:09 pnate2 left, pnate2 joined 11:11 alexn_org joined 11:15 jaldhar joined
sjohnson howdy guys 11:16
rakudo: say "hi"
p6eval rakudo 7914ca: hi␤
11:20 pnate left 11:21 pnate joined 11:22 PZt left 11:27 PZt joined 11:29 pnate2 left 11:43 pmurias joined
pmurias diakopter: hi 11:44
11:45 pnate2 joined 11:50 payload left, astrojp left, synth left, pnate2 left, pmurias left, alexn_org left, fridim_ left, brrant left, quantumEd left, envi^home left, IllvilJa left, RonOreck left, dukelet0 left, perigrin_ left, arthur-_ left, allbery_b left, KatrinaTheLamia left, Exodist left, PacoLinux left, cotto left, drbean_ left, mj41_ left, obra left, amackera left, ruz left 11:51 envi^home joined, Khisanth joined, pnate2 joined, pmurias joined, alexn_org joined, fridim_ joined, brrant joined, quantumEd joined, astrojp joined, IllvilJa joined, RonOreck joined, dukelet0 joined, perigrin_ joined, synth joined, arthur-_ joined, amackera joined, allbery_b joined, KatrinaTheLamia joined, Exodist joined, PacoLinux joined, cotto joined, drbean_ joined, mj41_ joined, ruz joined, obra joined, d^_^b joined, lest_away joined, Juerd_ joined, yves joined, solarion joined, pnu joined, Helios joined, kolibrie joined, dj_goku joined, nothingmuch joined, estrabd_ joined, ssm joined, sunnavy joined, krakan joined, wolverian joined, carlin joined, idemal joined, stepnem joined, avuserow joined, bloonix joined, mofino joined, omega__ joined, irc.freenode.net sets mode: +o Khisanth, awwaiid joined, moritz_ joined, mathw joined, draxil42 joined, LionMadeOfLions joined, sjn joined, yahooooo joined, pmichaud joined, irc.freenode.net sets mode: +ooo moritz_ mathw pmichaud 11:52 ssm left, estrabd_ left, nothingmuch left, kolibrie left, Helios left, perigrin_ left, dukelet0 left, RonOreck left, fridim_ left, pmurias left, pnate2 left, cotto left, IllvilJa left, alexn_org left, brrant left, solarion left, Khisanth left, pnu left, KatrinaTheLamia left, drbean_ left, Juerd_ left, dj_goku left, d^_^b left, PacoLinux left, allbery_b left, mj41_ left, quantumEd left, Exodist left, lest_away left, arthur-_ left, dukelet0 joined, nothingmuch joined, mj41 joined, arthur-- joined 11:53 payload joined 11:54 Khisanth joined, pnate2 joined, pmurias joined, alexn_org joined, fridim_ joined, brrant joined, quantumEd joined, IllvilJa joined, RonOreck joined, perigrin_ joined, allbery_b joined, Exodist joined, PacoLinux joined, cotto joined, drbean_ joined, mj41_ joined, d^_^b joined, lest_away joined, Juerd_ joined, estrabd_ joined, dj_goku joined, pnu joined, solarion joined, irc.freenode.net sets mode: +o Khisanth, PacoLinux_ joined, allbery_b left, KatrinaTheLamia joined, PacoLinux left 11:55 PacoLinux_ is now known as PacoLinux, Helios joined, pmurias left, drbean_ left, pmurias_ joined 11:56 drbean joined, estrabd_ left
colomon rakudo: say (1/60000 + 1/60000).perl 11:56
p6eval rakudo 7914ca: 1/30000␤
11:56 payload left, ssm joined, quantumEd left, pmurias_ left
colomon yay, p6eval is completely up-to-date. 11:56
11:57 mj41_ left
frettled c/wii Khisanth 11:57
oups.
11:58 allbery_b joined, estrabd joined, pnate2 left
IllvilJa Hello! Does parrot yet support statements like 11:58
use Term::ANSIColor <color>;
to ensure that I explicitly export the function Term::ANSIColor::color() to my program's main scope?
(Hm... a freenode breakdown... not what I needed now..) 11:59
moritz_ s/parrot/rakudo/
no, not yet
but export tags are implemented, iirc
11:59 pnate2 joined
moritz_ sub foo() is export(:BLAH) { ... } 11:59
use Term::ANSIColor :BLAH; 12:00
IllvilJa Yes. That export tag is accepted.
Ok...
12:00 pnate left
IllvilJa use Term::ANSIColor :functions; 12:01
works as expected! Both that the 'use' statement does not emit an error, but also as I can now directly call $color.
12:01 SmokeMachine joined
IllvilJa Which means that I got a usable Term::ANSIColor for Perl 6 ready! Very basic, only supports colors (and reset) and only supports the 'color' function found in the Perl 5 module, but still! 12:02
moritz_ cool
IllvilJa++
IllvilJa Wait with the increment until I h 12:03
...until I got the stuff up on github ;-)
moritz_ push it!
IllvilJa I will. Just need to update the README file.
moritz_ IllvilJa: what's your github id? 12:05
IllvilJa 'illvilja' is the textual ID, but I suspect you mean some numerical ID? 12:06
moritz_ hugme: add illvilja to proto
hugme hugs illvilja. Welcome to proto!
IllvilJa Thanks!
moritz_ IllvilJa: now you can add your project to projects.list in the proto repo 12:07
IllvilJa Um... exact what does that mean?
Aha.
12:07 ruoso joined
moritz_ github.com/masak/proto/ 12:07
then people can you proto to download/build/install it
12:09 meppl joined, pointme left 12:10 athaba joined
pmichaud good morning, #perl6 12:13
12:13 colomon left
moritz_ hi pmichaud 12:14
12:17 pnate joined
IllvilJa Hm... jEdit really needs a syntax mode for perl6. Using the 'perl' syntax mode when editing perl6 code is slightly confusing (syntax highlighting, code indent etc get's a bit messy). 12:20
Anyone knows about what the status is for "syntax support" for perl6 in various editors? (vi, vim, emacs etc) 12:21
Just generally curious.
moritz_ vim and padre are well supported
Juerd_ There's a perl6.vim somewhere IIRC
frettled IIRC, [particle]++ has fixed that for vim.
IllvilJa Ok
frettled And he (if it was him) also fixed cperl-mode for Emacs, IIRC.
moritz_ emacs has a syntax file in the pugs repo too, but it's likely very much out of date
literal++ did very good work on perl6.vim 12:22
frettled It's in one of the source trees (padre, pugs or rakudo)
moritz_: ah, then it was literal++ and not [particle], ah well.
12:22 zloyrusskiy joined
szabgab the vim this used to be in pugs/tools/ 12:22
moritz_ github.com/petdance/vim-perl
frettled is lagging behind moritz_, haha.
moritz_ szabgab: that's not updated anymore
szabgab but apparently it is not there any more ;-)
IllvilJa Aha. I'll perhaps have a look at that. Hopefully the diff between a syntax mode for perl and one for perl6 isn't that huge (and thus I can use that to figure out how to express that difference in jEdit...)
Thanks for the input! 12:23
szabgab and we recently saw azawawi back on IRC
so maybe the Padre version will e update soon
moritz_ I guess IllvilJa doesn't yet know how difficult it is to parse Perl 6 :-)
12:23 payload1 joined
Juerd_ moritz_: Much easier than Perl 5, I've heard :) 12:24
12:24 pnate2 left
moritz_ Juerd_: you have? well... 12:24
IllvilJa moritz_: Ignorance is strength ;-) (and worse is better, and failure is success... etc)
moritz_ both require predictive parsing
carlin pointme: pointme 12:31
right, no memory :( 12:32
frettled carlin: Hiho! Did you figure out what was wrong with zaslon's parsing of my blog's feed?
12:32 pnate2 joined
carlin frettled: no, haven't had a chance to look at it yet 12:32
12:33 pointme joined
carlin pointme: pointme 12:33
pointme Pointme is a suave, good-looking bot that links to proto projects, provides information about other bots and refers to itself in the third person
carlin What? WHy wasn't that working before?
moritz_ maybe an old version was running? 12:34
12:34 moritz_ sets mode: +o carlin, moritz_ sets mode: +v pointme
frettled pointme: carlin 12:34
pointme Sorry, I don't know anything about that project
frettled tsk tsk ;)
moritz_ carlin: maybe you could change 'that project' to $input 12:35
so that "pointme: myself" results in "Sorry, I don't know anything about myself" :-)
12:38 pnate left
carlin ah, good idea 12:39
12:39 pointme left, pointme joined
carlin pointme: myself 12:39
pointme Sorry, I don't know anything about myself
frettled pointme: carlin 12:40
pointme Sorry, I don't know anything about carlin
frettled \o/
carlin: and there is no way for input to do nasty stuff either?
12:41 payload1 left
carlin hmm, possibly 12:42
pointme: foo \r\nPRIVMSG #perl6 :rakudo: say 1
pointme Sorry, I don't know anything about foo \r\nPRIVMSG #perl6 :rakudo: say 1
carlin maybe the unicode version of that would work
frettled Code interpolation? 12:44
12:44 meppl left
carlin pointme: {say 'oh hai'} 12:45
pointme Sorry, I don't know anything about {say 'oh hai'}
12:49 alexn_org left, alexn_org joined 12:50 pnate joined 12:55 payload joined 12:57 payload left 12:58 payload joined 12:59 kst left 13:00 kst joined, pnate2 left 13:03 rgrau is now known as rgrau_ 13:04 iblechbot left
IllvilJa One step closer to world domination: Term::ANSIColor for Perl6 now pushed to github: github.com/illvilja/Perl6-Term--ANSIColor 13:06
Dangerous times lies ahead!
13:07 SimonAW joined
SimonAW Hai everyone! 13:07
moritz_ hi
13:11 arthur-_ joined 13:13 freefly joined 13:15 freefly left 13:16 pnate2 joined 13:19 arthur-- left 13:25 pnate left 13:28 ihrd left 13:32 fridim_ left 13:38 pnate joined, lehler joined
jnthn oh hai... 13:38
pugs_svn r29246 | pmichaud++ | Add my topic for Dec 5.
jnthn is back in family home in england.
13:42 zloyrusskiy left
lehler has perl6 active shell like python? 13:42
pmichaud It's not yet specced to provide one, no.
moritz_ but Rakudo provides a simple one 13:43
pmichaud Rakudo has an interactive mode, but it has a few problems yet (which we will fix soon)
moritz_ and it will be improved
pugs_svn r29247 | pmichaud++ | [pm.txt]: Another question for TimToady.
r29247 |
r29247 | Pm-12: S05:2121 says that smartmatching against regex/token/rule
r29247 | automatically anchors the match at both ends. What construct is
r29247 | actually responsible for performing the anchor checks? Is it the
r29247 | smart match operator (infix:<~~>), the .ACCEPTS method on the
r29247 | regex/token/rule, an option/flag passed to the regex/token/rule,
r29247 | or something else?
jnthn Eww. Do we really want to anchor by defualt? 13:44
pmichaud jnthn: it's only for regex/token/rule
jnthn had always assumed otherwise...
pmichaud i.e.: 'foo' ~~ regex { abc }
note that this is different from
'foo' ~~ / abc /
which doesn't anchor by default. 13:45
jnthn pmichaud: How do we differentiate between regex { abc } and /abc/ ?
pmichaud jnthn: that's essentially my question, yes.
jnthn OK, then good questin.
It can't be type I guess, since both are Regex, I guess...
pmichaud but it's not hard to differentiate at a number of levels. regex { abc } is a regex declarator, while /abc/ is a quoted form
it *can* be type, if we have multiple types of Regex :-)
jnthn Well, yeah, syntactically is possible.
Well, yes, true. :-) 13:46
But a special AnonymousRegex time feels slightly clunky.
pmichaud in some sense having /abc/ do something special at compile time is not much different from the way that 'token' and 'rule' are specialized forms of 'regex'
anyway, differentiating the various forms isn't a big issue... I just need to know TimToady's conception of where that differentiation takes place :) 13:47
moritz_ I thought that YourGrammar.parse($str) is implicitly anchoring too 13:48
jnthn pmichaud: aye.
moritz_ so make regex/token/rule are anchored too
13:48 lehler left
moritz_ and $str ~~ token { bar } just calls (token { bar }).parse($str) 13:48
13:48 pnate2 left
moritz_ or something 13:49
pmichaud except that token { bar } isn't a Gramamr.
moritz_ right. Tokens are only implicitly anchored to the start
pmichaud (and there doesn't appear to be anything in the spec that says that Grammar.parse enforces anchoring)
We also don't have a .parse method on regexes (yet?) 13:50
moritz_ right
I was just speculating, not answering :-)
pmichaud I'm just taking target practice on your speculations :)
moritz_ as if you needed some :-) 13:51
pmichaud technically, $str ~~ token { bar } calls (token { bar }).ACCEPTS($str)
which then may forward to some (as yet undeclared) method of Regex
jnthn thought .match
pmichaud actually, .match is defined on Any 13:52
as in $x.match(/regex/)
13:52 payload left 13:54 ruoso left
moritz_ so one possible way would be to make /regex/ a different type than regex { ... } 13:55
like RegexLiteral
pmichaud right. I don't like that way much.
moritz_ and Regex and RegexLiteral have different .ACCEPT methods
pmichaud I'd prefer it to be a flag or something that happens at compilation, much like 'token' is really 'regex :ratchet'
moritz_ regex :literal ? 13:56
pmichaud well, it's not just literalness
for example, what happens with 'abc' ~~ token :c(0) { ... }
does the :c flag override the anchoring?
moritz_ I'd expect though (from pure intution, not from spec) 13:57
s/though/so/ 13:58
pmichaud anyway, /abc/ isn't much more "literal" than token { abc }
13:58 takadonet joined
pmichaud /abc/ is really more of a shorthand for rx { abc } 13:58
takadonet morning all
14:00 colomon joined 14:04 AzaTht joined
frettled carlin: I thought of a way to reduce spamminess from zaslon in case of error: 1) Retain a history of URLs that have been shared with the channel, and don't repeat a previous URL. 2) Simple syntax check for the URL, check that there is at least https?://(\w+\.?)+/ (or something like that) 14:05
14:07 ruoso joined, pnate2 joined
AzaTht will junctions allow code like "if defined all(...)" 14:08
14:08 JimmyZ joined
moritz_ yes 14:08
14:08 payload joined
moritz_ rakudo: say ?( defined all(undef, 3, 4)) 14:08
p6eval rakudo 7914ca: 1␤ 14:09
PerlJam Wolfman2000: US Central
moritz_ ouch
AzaTht ␤?
moritz_ AzaTht: that's a character indicating a newline
AzaTht ok
see that now
was really small
moritz_ anyway, it seems that defined() is doesn't autothread, which seems odd to me
AzaTht but it returned 1?
moritz_ yes, that looked wrong 14:10
pmichaud rakudo: say defined all(undef, 3, 4)
moritz_ rakudo: say ?( all(undef, 3, 4) ~~ *.defined )
p6eval rakudo 7914ca: 1␤
rakudo 7914ca: set_integer_keyed() not implemented in class 'Sub'␤in Main (file <unknown>, line <unknown>)␤
AzaTht hehe
jnthn rakudo: say ?(all(undef, 3, 4).defined)
p6eval rakudo 7914ca: 1␤
pmichaud .defined is defined on Object
so it won't autothread
moritz_ oh
jnthn pmichaud: Oh. I'd thought it was only things that junction defined directly. 14:11
But yes, you're probably right.
We could make it the first of those I guess.
That's almost certianly why it doesn't work, anyway. 14:12
14:12 beggars left
carlin frettled: The problem is that when your feed is downloaded with HTTP::Client, the link is showing up as \r\nfef\r\n//howcaniexplainthis.blo...uture.html -- some sort of encoding issue? 14:13
moritz_ rakudo: say ?( none(undef, 3, 4) ~~ undef )
p6eval rakudo 7914ca: 0␤
moritz_ rakudo: say ?( none(4, 3, 4) ~~ undef )
p6eval rakudo 7914ca: 1␤
frettled carlin: wtf?
moritz_ AzaTht: that works :-)
frettled carlin: that's just _weird_ 14:14
14:15 pnate left
moritz_ the link looks fine in the rss, so I guess it's an issue with HTTP::Client 14:16
carlin Yeah
frettled Oh, I think I know. I tried to use that feedburner thing, maybe that has added something.. 14:17
carlin No, I'd say it's some weird issue with HTTP::Client and it has been luck that we haven't struck it before now
AzaTht moritz_: hmm 14:18
moritz_: so defined should/could be removed then 14:19
14:19 colomon left, hcchien left
moritz_ AzaTht: not sure yet 14:20
14:20 kolibrie joined
moritz_ I'd like it to autothread on junctions, but I don't see how it can be made to work easily 14:20
jnthn ohto, the defined sub *call* perhaps should, even if the method form is a problem. 14:21
carlin Gotta sleep, 'night all
moritz_ if the signature is defined(Any), defined(Mu) won't work
frettled carlin: sleep tight
moritz_ and give you a dispatch error
'night carlin
Infinoid_ hrm. what happened to dalek? 14:22
moritz_ no idea 14:23
14:24 hcchien joined, rgrau joined
Infinoid_ restarts dalek 14:24
14:25 dalek joined, d4l3k_ joined
Infinoid_ oops, one moment 14:26
14:26 d4l3k_ left, dalek left, dalek joined, d4l3k_ joined, dalek left, d4l3k_ left
Infinoid_ (so THAT'S why it was running with --debug.) 14:26
14:28 dalek joined 14:31 colomon joined 14:41 JimmyZ left
Infinoid_ moritz_: I'm fiddling with dalek and github branches today 14:46
14:47 pnate joined, athaba left 14:48 mariano__ joined 14:51 mariano__ left 14:52 mariano__ joined 14:58 pnate2 left 14:59 pnate2 joined
diakopter Infinoid_: why --debug :) 14:59
Infinoid_ diakopter: We don't care about all of the protocol dumps to the log, but daemontools does require it to be running in the foreground (which is a side effect of --debug) 15:00
I would rather get the latter without the former. But I have other things to fix first 15:01
diakopter ah :) 15:02
Wolfman2000 *yawn* morning
diakopter 'morn 15:03
Infinoid_: feel free to rm the old logs, imho 15:10
15:10 pnate left 15:15 pnate joined 15:23 rgrau left, pnate2 left 15:32 athaba joined
pugs_svn r29248 | duff++ | [perl6advent] Add XCF file for blog header 15:33
r29249 | duff++ | [perl6advent] claim regex topic; use ??? for unknown topics
15:34 payload left 15:36 payload joined
colomon has been doing too much Perl 6 programming -- keep on trying to test my C++ code without recompiling.... 15:37
jeremiah eh 15:38
or heh rather. :)
moritz_ akshually I made the same error with Perl 6 too 15:41
I compiled some modules to PIR
and later on changed the .pm
frettled Oh, teh fail!
moritz_ and forgot that I had the .pir files around, and wondered why my updates didn't work
frettled That's like working with mod_perl in 2000 and not knowing how the caching works, I can still feel the lingering shame. 15:42
moritz_ that's when I put a die("OH NOEZ") in my code
and if it doesn't die horribly, I know my code doesn't run
colomon moritz_: True, I may had that issue in Perl 6 a few times, too. I've been wondering if there is any real point in compiling to PIR when you're in the midst of development. 15:43
Who put the santa hat on Camelia for the Advent blog? It's cute!
moritz_ the problem is more that I thought I had finished developing for a while, and worked on the tests 15:44
and wanted them to run faster, so I precompiled
and I also assumed (foolishly) that newer .pm files would be preferred over older .pir files
hugme: tweet rakudoperl Perl 6 advent calendar day 3: Static types and multi subs perl6advent.wordpress.com/2009/12/0...ulti-subs/ 15:49
hugme hugs moritz_; tweet delivered
15:49 SimonAW left
moritz_ it's amazing how much fits into 140 chars :-) 15:49
15:50 cognominal left 15:52 colomon_ joined, colomon left, colomon_ is now known as colomon, Psyche^ joined 15:54 payload left
moritz_ :q 15:57
hugme hugs moritz_, good vi(m) user!
frettled hehe 15:58
:wq!
hugme hugs frettled, good vi(m) user!
moritz_ I think it recognizes :(wq|w|q|x)!? or so 15:59
colomon :blah 16:00
arnsholt What does :x do? 16:02
I use vim, but never seen :x
moritz_ :x is the same as :wq
hugme hugs moritz_, good vi(m) user!
16:02 envi^home left
pmichaud can I get perl6/nqpbook added to hugme ? 16:02
16:03 mberends left
moritz_ pmichaud: sure 16:03
pmichaud thanks
off to lunch 16:04
16:04 Patterner left, Psyche^ is now known as Patterner
moritz_ hugme: reload 16:07
hugme moritz_: reloaded successfully
moritz_ hugme: show nqpbook
hugme moritz_: the following people have power over 'nqpbook': PerlJam, TimToady, [particle], jnthn, masak, moritz_, pmichaud. URL: github.com/perl6/nqpbook/
16:08 pnate2 joined 16:11 masak joined
masak oh hai, #perl6 16:11
diakopter masak: yo 16:12
moritz_: what's nqpbook
Wolfman2000 ...I forgot. Is Perl 6 supposed to have a Complex type?
[particle] it's not quite a pbook 16:13
masak diakopter: I've ironed out a few remaining bugs in the tree spider. it does some of the backtracking correctly now.
moritz_ diakopter: I know as much as you: the name, and the location of the repo
diakopter oh :)
masak Wolfman2000: Rakudo has a Complex type. see S32/Num.
moritz_ and the spec too :-)
colomon And Perl 6 is supposed to have it, too.
diakopter masak: you slept only a couple hours??
colomon rakudo: say 1+3i 16:14
p6eval rakudo 7914ca: 1 + 3i␤
[particle] rakudo: my Complex $oedipus = 1 + 1i;
p6eval rakudo 7914ca: ( no output )
masak diakopter: it was almost seven hours. I feel rested. :)
moritz_ [particle]++
16:14 nihiliad joined
colomon rakudo: say (-1 + 0i).sqrt 16:14
p6eval rakudo 7914ca: 0 + 1i␤
colomon rakudo: say 8.roots 16:15
masak diakopter: though I can probably make a blog post about how regex backtracking can cause ordinary programmers to lose sleep. :P
p6eval rakudo 7914ca: No applicable candidates found to dispatch to for 'roots'␤in Main (file <unknown>, line <unknown>)␤
colomon rakudo: say 8.Num.roots 16:16
p6eval rakudo 7914ca: No applicable candidates found to dispatch to for 'roots'␤in Main (file <unknown>, line <unknown>)␤
colomon rakudo: say 8.Num.roots(3)
p6eval rakudo 7914ca: 2 + 0i-1 + 1.73205080756888i-1 + -1.73205080756888i␤
diakopter rakudo: our Complex @Messiah = 0...Inf
16:16 pnate left
p6eval rakudo 7914ca: ( no output ) 16:17
colomon rakudo: say 8.Num.roots(3).perl
p6eval rakudo 7914ca: [Complex.new(2, 0), Complex.new(-1, 1.73205080756888), Complex.new(-1, -1.73205080756888)]␤
moritz_ rakudo: say Complex.new(-1, -1.73205080756888)**3 16:18
p6eval rakudo 7914ca: 8.00000000000003 + 1.61702895938378e-14i␤
moritz_ close enough :-)
Wolfman2000 as a reminder, which bots report on the github projects? 16:19
moritz_ dalek does
Wolfman2000 ...well, dalek is here. I just added a branch to the book project, and I was wondering when it would report it 16:20
masak it might not report branch additions.
moritz_ nope, dalek only tracks master
Wolfman2000 ...bah
well, I didn't want to risk breaking master with my commit
I added quick documentation about the Complex type 16:21
masak Wolfman2000: trust the anarchy. if someone doesn't like the commit, they'll change or revert it. 16:22
Wolfman2000: whereas in a branch, it'll likely be forgotten despite being good. 16:23
Wolfman2000 masak: just did a merge and push
let's see if it gets reported
masak excellent.
16:23 frettled sets mode: +ooo masak Wolfman2000 colomon
frettled (kaboom!) 16:23
dalek ok: 23e0b1a | (Jason Felds)++ | src/builtins.pod:
Add basics for the complex type.
Wolfman2000 frettled: won't be on for long to enjoy the ops, sorry 16:24
masak frettled: thanks. :) won't stick, though.
16:24 frettled sets mode: +o [particle]
moritz_ that doesn't look like the branch :-) 16:24
frettled It's just in case crisis management becomes necessary.
Wolfman2000 moritz_: I did a fast forward merge
moritz_ ah
16:25 ejs joined 16:26 lest_away is now known as lestrrat 16:27 vamped joined 16:29 KyleHa joined, KyleHa left 16:31 TimToady sets mode: +vv dalek hugme, TimToady sets mode: +vvvv ilbot2 ilogger2 IRSeekBot lambdabot, TimToady sets mode: +vvv lisppaste3 p6eval phenny, TimToady sets mode: +vv pointme pugs_svn, pointme left
vamped is there a changelog for the synopses? 16:32
TimToady svn log
vamped please spell it out - how I use it. 16:33
16:34 pnate2 left
TimToady do you have svn on your system? 16:34
vamped i believe i do 16:36
TimToady I presume you haven't checked out a copy of pugs yet.
vamped correct
TimToady if not, say svn co svn.pugscode.org/pugs somewhere you don't mind it creating pugs/ 16:37
vamped i'm browsing at svn.pugscode.org now trying to find something
TimToady it might or might not
vamped k. command is running. 16:38
moritz_ svn log svn.pugscode.org/pugs/docs/Perl6/Spec | less
takes a while, but doesn't require a checkout
frettled checking out is nice, there's lots of code that's stable. :)
i just takes a whiiiiiile
s/i j/it j/ 16:39
TimToady moritz_: shh, we're trying to trick vamped into accepting a commit bit :) 16:40
vamped lol @ TimToady :D
16:41 snearch joined
vamped baby steps here. 16:41
TimToady yes, well, everyone starts that way :)
Cyrus Except Chuck Norris of course. 16:42
masak naturally.
TimToady sprang fully formed from the forehead of Athena, was it?
Cyrus I believe so, yes.
masak swimming & 16:43
16:43 masak left
vamped ok. so I did 'snv co ...' and apparently have installed pugs. 16:44
moritz_ downloaded, not installed :-)
TimToady anyhoo, after a checkout, cd pugs/docs/Perl6/Spec, and then just svn log any file you're interested in
vamped TimToady: so I can browse around in there. anyplace specific I should look?
16:44 cdarroch joined
TimToady did I mention I'm a time traveler? 16:45
vamped beautiful. I think that's what I needed!
moritz_ somebody should hack up hugme to add people to pugs, too
or maybe just convert it to git, and move it to github 16:46
that would make things easier for me :-)
16:47 linkd_ joined
TimToady I'm still in the baby steps stage with git 16:47
Cyrus TimToady: How are you liking it?
Infinoid_ moritz_: You mean like I did with dalek? :) 16:48
TimToady it's fast, and the interface seems relatively opaque and ill-designed
16:48 justatheory joined
TimToady and people spend a lot of time asking questions about it, just like Perl 6 :) 16:49
moritz_ TimToady: there's nothing better for learning than being forced by a project to which you wish to contribute :-)
TimToady and it seems like a higher barrier to entry to noobies than svn is
moritz_ not sure about that - I think you just have a hard time with git if you're used to svn :-) 16:50
diakopter phenny: tell masak this is informative/instructive: code.google.com/p/v8/source/browse/...sregexp.cc 16:51
phenny diakopter: I'll pass that on when masak is around.
TimToady could be
moritz_ anyway, I think the time is not yet there for the big switch
avar TimToady: It's also hard to learn Perl 6 if you've only used BASIC :) 16:52
TimToady nah, just put the sigils on the other end, plus a few other minor details :P 16:53
16:53 ruoso left 16:54 AzaTht left, ruoso joined
diakopter phenny: tell masak the comments, I mean 16:55
phenny diakopter: I'll pass that on when masak is around.
16:55 dalek left, dalek joined
TimToady but let me say that I wouldn't be surprised if 6PAN ends up just being a registry of git servers and version hashes :) 16:55
moritz_ oh my, it's been long since I've programmed in QBASIC 16:56
Infinoid_ @400000004b17ed961f2dc9e4 github: rakudo has branch ng with feed url github.com/feeds/rakudo/commits/rakudo/ng
lambdabot Unknown command, try @list
Infinoid_ @400000004b17ed961f2dcdcc github: rakudo/ng will output to freenode/#perl6
lambdabot Unknown command, try @list
Infinoid_ moritz_: can you test that? :)
moritz_ Infinoid_: test what? the feed URL? 16:57
Infinoid_ moritz_: Nah, commit something clever to the ng branch
(either branches should work now, or I've broken all of the github feeds entirely)
moritz_ Infinoid_: ok
TimToady eitehr the leading @ goes, or lambdabot goes 16:58
Infinoid_ TimToady: That was a cutpaste from the local log file, the feed output won't have it. 16:59
TimToady darn, was hoping to have an excuse to shoot lambdabot
ng_feed rakudo-ng: moritz++
rakudo-ng: remove SVN inherited $Id$
moritz_ TimToady: I plan to kickban lambdabot as soon as zaslon works reliably and tracks karma
or mubot
or any of those, forgot which :-) 17:00
Wolfman2000 moritz_: I assume that karma tracking includes nickname linking
TimToady I wish these logs would not put the ++ line spearately
moritz_ Wolfman2000: that's entirely optional
Infinoid nice ng_feed bot. What's the polling interval?
TimToady *sep
moritz_ Infinoid: 60s or so
TimToady it more or less doubles the noise in # of lines
moritz_ TimToady: when dalek works, ng_feed can go
s/when/if/ :-) 17:01
TimToady ah, I see dalek has improved in that regard
but I highlight dalek lines in blue, and some days #parrot has a little bit of info among all the logging 17:02
s/info/chat/ :)
moritz_ :-)
Infinoid TimToady: I am now accepting patches to github.com/Infinoid/dalek-plugins/b...rmalog.pm, if you want a smaller output format
Ok. Is dalek broken, or just slow? It does use fairly long polling intervals...
17:03 linkd_ left
moritz_ Infinoid++ # tricking TimToady into using git :-) 17:03
TimToady sorry, the "patches welcome" trick doesn't work well on me for some obscure reason...
17:03 colomon left
PerlJam Infinoid: all you have to do is disable the pugs svn repo and provide a git repo in its place :) 17:04
Infinoid I doubt I could dodge the lightning bolts from that... :)
PerlJam encourages Infinoid to trick TimToady into using git
Wolfman2000 I'll be back after college stuff...but even when I get back, expect me to work on my finals instead of Perl. 17:06
moritz_: I'll look forward to your testing gift today.
17:07 Wolfman2000 left 17:10 stephenlb joined, am0c left
Infinoid ok, dalek is obviously busted. back to work I guess... 17:10
17:10 payload joined
moritz_ good thing that I can delete more $Id$ lines for testing :-) 17:11
diakopter Infinoid: --debug :P 17:12
Tene blog.plover.com/2006/09/11/ -- old, but still a good read. 17:13
Infinoid diakopter: Unfortunately, --debug combined with the daemontools log rotation means the logs only have about a 15 minute lifespan. Which is actually worse for debugging :)
17:13 dalek left 17:14 dalek joined
Infinoid moritz_: that fixed an issue, hopefully the only one 17:15
17:19 dalek left 17:20 dalek joined
Infinoid uh... 17:20
17:23 vamped left
pmichaud TimToady: (git) maybe look quickly at www.pmichaud.com/2009/pres/pytx-git...ide14.html ? That presentation covers 98% of my git usage, and is aimed at svn folks. 17:25
There's also trac.parrot.org/parrot/wiki/GitCookbook-Pm 17:27
17:27 dalek left, dalek joined 17:35 payload left 17:36 alexn_org left 17:39 ejs left
mdxi i am really digging the advent calendar entries so far <3 <3 <3 17:54
moritz_ and thre's another one coming up in 6 hours :-) 17:56
takadonet mdxi: me too
takadonet hates that he has to wait
moritz_ any objections to deleting the trackbacks that the updating of the first posting caused? 17:59
18:00 brrant left 18:01 cognominal joined 18:05 meteorswarm joined 18:06 Intensity joined
moritz_ hugme: add moritz to nqpbook 18:08
hugme hugs moritz. Welcome to nqpbook!
TimToady my current formulation of roles seems to have lost an important distinction 18:09
0 but Bool should add a $.Bool attribute, while 0 but True should merely add a true .Bool method without adding an attribute 18:10
s/roles/enums/
18:30 colomon joined 18:31 Lorn joined 18:41 pnate joined
pmichaud currently Rakudo (ng and otherwise) have a build/ subdirectory that holds scripts used during the build process. Should build/ instead be used for holding files generated during the build process...? 18:44
colomon why not generated/ or something like that? 18:46
pmichaud just wondering if there's a standard for such things 18:47
18:47 meppl joined
colomon for what it's worth, I've always used build/ in my projects for exactly what Rakudo uses it for currently. no idea if that's a standard somewhere. 18:50
PerlJam if it ain't broke, don't fix it :) 18:52
18:56 ShaneC joined
pmichaud I noticed that the book project is using build/ for the generated files 18:56
18:59 schnee joined
PerlJam beware the hobogoblin of foolish consistency 18:59
PerlJam is a pithy saying generator today
pugs_svn r29250 | lwall++ | make pair values sequences both associative and positional 19:00
r29250 | revise enum mixins to distinguish attribute vs method mixin
pmichaud uh oh 19:01
pmichaud runs off to read r29250
colomon pmichaud: does that uh oh imply work has been done in ng enums? :)
pmichaud no, but I'm interested in that "pair values sequences" part 19:02
colomon what's a Seq? I mean, I recognize the general intent, but not the specific class name.
TimToady I decided that PairSeq wasn't the same as Seq[Pair], since the latter doesn't imply associative
pmichaud it's basically a non-lazy list 19:03
19:03 pnate left
pmichaud more precisely, a Seq is a list that doesn't have any lazy evaluation components 19:03
19:03 amackera left
pmichaud PairSeq wfm 19:03
TimToady I'm also thinking of fiddling with the name PairVal, which is ugly
schnee Hi folks. Are parrot questions (stupid newbie-ish ones, too) on-topic here, or does parrot have its own channel? 19:04
pmichaud TimToady: in case you didn't notice in backscroll, there's a new pm.txt question for you :)
colomon Hey, as long as I've got you guys here... are the hyper operators lazy?
pmichaud schnee: #parrot on irc.parrot.org
Tene schnee: There's a #parrot on irc.perl.org
schnee Thanks. :)
TimToady colomon: no
19:04 schnee left
TimToady they're hyper eager 19:04
laziness doesn't mean anything unless you order the operations 19:05
hyper specifically disorders them
colomon makes sense. thank you!
TimToady though in theory a S<<op>> could be lazy 19:06
19:06 mikehh left
colomon oooooooo.... :) 19:06
I can't imagine any use for lazy hyper, but thought it might be implied in the spec. (I'm studying up for my next Advent entry.) 19:07
.oO(Unless you consider "incredibly cool" an actual use case....)
19:08
mathw Evening
19:09 amackera joined
TimToady is wondering whether, since named pairs are always mutable, we should make Pair immutable and Named mutable (in value) 19:10
that is PairVal --> Pair and Pair --> Named
and then we get PairSeq and NamedSeq
colomon re PairValSeq... should we start working on implementations of these things for ng? 19:12
are roles well-supported enough yet?
moritz_ wonders about the current type inflation, and if they are worth it
19:12 mikehh joined
mathw rakudo: (^4).perl.say 19:12
p6eval rakudo 7ef386: 0..^4␤
mathw rakudo: for ^4 -> { .say } 19:13
p6eval rakudo 7ef386: Use of uninitialized value␤␤Use of uninitialized value␤␤Use of uninitialized value␤␤Use of uninitialized value␤␤
TimToady moritz_: wasn't till I made them both Associative and Positional
before, PairSeq was redundant with Seq[Pair]
perhaps PairMap and NamedMap, to avoid assumption of only Seq-ness 19:14
colomon mathw: :O
mathw colomon: I was quite surprised by this on the train this morning, but I've only just got hold of a wifi connection
This is also interesting
rakudo: for ^4 -> $x { $x.say }
p6eval rakudo 7ef386: 0␤1␤2␤3␤
mathw oh 19:15
mine didn't do that
mine said 0 1 2 3 4
colomon oh!
rakudo: for ^4 { .say }
p6eval rakudo 7ef386: 0␤1␤2␤3␤
colomon the problem is the ->
TimToady will think it over in the shower... & 19:16
pmichaud -> { ... } is a block with zero parameters
mathw rakudo: for 1, 2, 3, 4 -> { .say }
p6eval rakudo 7ef386: Use of uninitialized value␤␤Use of uninitialized value␤␤Use of uninitialized value␤␤Use of uninitialized value␤␤
mathw hmm
okay
this is not what I saw earlier
I may be imagining things
pmichaud so the $_ in .say ends up being uninitialized
rakudo: $_ = 'xyz'; for ^4 -> { .say } 19:17
mathw That said, Google have drained out most of my brain today so I should perhaps just step back and leave it
p6eval rakudo 7ef386: xyz␤xyz␤xyz␤xyz␤
colomon is just glad rakudo wasn't trying to make { .say } the variable name...
mathw: interview?
mathw colomon: five of them 19:18
utterly, utterly mad
kind of fun though
colomon mathw: ugh
mathw: hope it went well!
mathw two of them by videoconference
I think it was okay
we'll find out...
...some time
colomon ng: say defined(Nil) 19:22
p6eval ng 69ce77: 1␤
colomon Is Nil supposed to be defined? 3 of the 4 test failures in S32-scalar/defined.t are because the tests expect Nil.defined to be false. 19:23
PerlJam I thought Nil was supposed to be our universally undefined thing (like undef in Perl 5) 19:24
pmichaud PerlJam: that's Mu 19:25
moritz_ but Nil is meant to be undefined, yes
pmichaud ng: say ().defined 19:26
PerlJam Mu is a type. Nil is a value.
p6eval ng 69ce77: 1␤
colomon is surfing the spectest again looking for ng LHF....
pmichaud I'm guessing an empty parcel in item context should become Mu 19:27
PerlJam I guess using Mu as a value gives us something that's undefined, but I thought that thing was Nil
(or perhaps I just don't see the need for Mu *and* Nil)
pmichaud Nil is an empty list in list context
Mu isn't
that's why they're different
moritz_ PerlJam: both are rather undef, but they behave differently in li... what pmichaud said
pmichaud (Nil).elems # 0 19:28
(Mu).elems # 1
PerlJam Hmm.
(Nil,Nil,Nil) = ($a,$b,$c); # what happens here? 19:29
moritz_ nothingmuch :-)
pmichaud my guess is that you end up with more values than containers warning
also, Nil isn't a container 19:30
(although it could be treated specially in assignment, yes, same as * is treated specially)
PerlJam rakudo: (Nil).elems.say 19:31
p6eval rakudo 7ef386: 0␤
PerlJam rakudo: (Nil,Nil,Nil).elems.say
p6eval rakudo 7ef386: 3␤
PerlJam has trouble reconciling that.
pmichaud rakudo's implementation of Nil is known to be bogus.
ng: (Nil,Nil,Nil).elems.say
p6eval ng 69ce77: 0␤
moritz_ ng++
PerlJam So, Nil is the absence of something. It is the ultimate nothing?
pmichaud ng: (Mu, Mu, Mu).elems.say
p6eval ng 69ce77: 3␤
pmichaud Nil is an empty parcel in list context and Mu in item context 19:32
actually, I can be more precise than that
Nil is an empty parse
arg
Nil is an empty parcel.
An empty parcel is a 0-element list in list context, and Mu in item context. 19:33
PerlJam pmichaud: for both rvalues and lvalues?
pmichaud afaik, yes.
PerlJam okay, I'm good then (I hadn't considered Nil much) 19:34
pmichaud: is it still snowing? 19:35
pmichaud no, it turned to rain yesterday late morning and all the snow washed away 19:36
but there's a possibility of snow again tonight, I think
PerlJam I heard we might get snow down here.
pmichaud hmmm, weather.com seems to think we get no precipitation at all... 19:37
pmichaud checks nws
nws says flurries but no significant accumulation for our area 19:38
most of the heavier snow will be south of us
moritz_ $here we had some snow in October, and none since 19:39
pmichaud PerlJam: I'm thinking you won't see snow, though -- at least not from the nws forecast
PerlJam moritz_: that's because it moved to Texas! :)
pmichaud: I was doubtful when I heard it :)
pmichaud: tomorrow we're doing another CBI BBQ and I got wrangled into being the pit master. What a great time to be outdoors! The high is going to be in the low 40s 19:41
colomon Container::roundrobin ?
dang, no chance of passing any of the S32-container tests without working Ranges. 19:42
pmichaud colomon: it's still high on my list
just waiting for the stars to align
moritz_ good answer :-) 19:43
PerlJam which stars?
* * * * <-- these are all aligned.
pmichaud the ones in my head
moritz_ what's the plan for the December release? having ng replace master at that point?
colomon "When the moon is in the Seventh House
And Jupiter aligns with Mars"
pmichaud moritz: that's my current plan/goal, yes.
moritz_: even if it means we take a hit on spectest regression a bit 19:44
(I'm hoping that won't happen)
colomon December release is two weeks from today?
pmichaud yes. 19:45
I think it's do-able.
I'll make a more final decision next Thursday.
(that decision might be to wait another couple of days to decide, though :) 19:46
colomon I guess I can imagine getting it done in two weeks if a bunch of key stuff gets in place over this weekend.... 19:47
pmichaud yes, that's also my expectation.
moritz_ like, lists and ranges :-) 19:48
colomon proper operator method dispatching.
enums. 19:49
colomon could hack around enums for trig, now that he thinks about it. hacking around the lack of pi might be trickier.
pmichaud oh, we can probably cheat on pi 19:50
colomon ng: my %h = a => 'b', c => 'd'; say %h.invert.WHAT
p6eval ng 69ce77: Method 'invert' not found for invocant of class 'List'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
colomon whoops. meant to say
rakudo: my %h = a => 'b', c => 'd'; say %h.invert.WHAT 19:51
p6eval rakudo 7ef386: ( no output )
colomon hopes ng: continues working after ng becomes master, because it's easier to type....
PerlJam +1
colomon ng: say (3 4 1).sort 19:52
p6eval ng 69ce77: Confused at line 1, near "say (3 4 1"␤current instr.: 'perl6;HLL;Grammar;panic' pc 519 (src/stage0/HLL-s0.pir:336)␤
colomon ng: say (3, 4, 1).sort
p6eval ng 69ce77: Method 'sort' not found for invocant of class 'List'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
colomon Ugh. I think porting sort to ng is a bit beyond my parrot-fu. 19:55
TimToady I think PairVal is turning into Enum, and PairValSeq is turning into EnumMap 19:57
19:57 iblechbot joined
PerlJam TimToady: +1 19:58
colomon: Henry Ford (I think) used to say whether you think you can do something or think you can't do something, either way you'll be right. 19:59
20:05 brrant joined 20:10 rgrau joined
colomon TimToady: Would Enum's .mapping return an EnumMap then? (Wow, I was all puzzled when I started this comment, but it looks so reasonable now....) 20:12
frettled You puzzled yourself beyond confusion, caused an overflow, and wrapped around to understanding? 20:18
moritz_ ng: say 1 cmp 2 20:26
p6eval ng 69ce77: Confused at line 1, near "say 1 cmp "␤current instr.: 'perl6;HLL;Grammar;panic' pc 519 (src/stage0/HLL-s0.pir:336)␤
moritz_ oh wow
that doesn't make List.sort exactly easier
pmichaud I'm guessing infix:<cmp> isn't defined yet...?
ng: 1 cmp 2
p6eval ng 69ce77: Confused at line 1, near "1 cmp 2"␤current instr.: 'perl6;HLL;Grammar;panic' pc 519 (src/stage0/HLL-s0.pir:336)␤
moritz_ ng: 1 <=> 2 20:29
p6eval ng 69ce77: Confused at line 1, near "1 <=> 2"␤current instr.: 'perl6;HLL;Grammar;panic' pc 519 (src/stage0/HLL-s0.pir:336)␤
moritz_ pmichaud: where you like infix:«<=>» to live? Any-num.pm? 20:30
moritz_ was surprised to read Rakudo Star in his play list, but it turned out to be just "Radio Star" (Video killed the...) :-) 20:35
frettled heh
sjohnson hey dudes 20:38
colomon still intends to write "The Star of Rakudo" sometime before April.... 20:45
20:46 snearch left, ShaneC left
PerlJam www.starregistry.com/ 20:47
20:52 SmokeMachine left 20:54 frew_ joined
lisppaste3 moritz_ pasted "This patch makes compilation of Test.pm barf" at paste.lisp.org/display/91542 20:57
diakopter Rakudo Star -> Roar At Dusk
moritz_ pmichaud, jnthn: it seems that ng doesn't like infix:«something» in the setting (see nopaste above)
21:01 frew_ left
pmichaud moritz_: noted, will fix. 21:01
yes, should go in Any-num.pm
colomon moritz_: try cmp? 21:03
moritz_ colomon: cmp relies on <=> for numbers :( 21:04
trying leg right now
pmichaud probably worth re-checking the specification there, too. There were some updates since cmp/eqv/etc were implemented
moritz_ rakudo: say "a" leg "b" 21:05
p6eval rakudo 7ef386: -1␤
21:06 RonOreck left
pmichaud 21:04 <moritz_> colomon: cmp relies on <=> for numbers :( 21:07
that's backwards, I think.
moritz_ right
but...
the spec is *very* unclear about how cmp works 21:08
The cmp is just like the eqv above except that instead of returning Bool::False or Bool::True values it always returns Order::Increase, Order::Same, or Order::Decrease (which numerify to -1, 0, or +1).
21:08 pmurias joined
moritz_ but eqv does equality test, not ordering test 21:08
pugs_svn r29251 | lwall++ | rename PairVal to Enum and PairValSeq to EnumMap, PairSeq to PairMap. 21:09
r29251 | rename .mapping to .enums and apply consistently to hashes and arrays too
r29251 | (.enums is now the readonly analog to .pairs)
pmichaud In other words, C<< $a <=> $b >>
is now equivalent to C<+$a cmp +$b>.
S03:3043
moritz_ found that too, yes
pmichaud so I think infix:«<=>» should be written as { +$a cmp +$b } :-) 21:10
moritz_ For boolean comparison operators with non-coercive cmp semantics, use the generic before and after infix operators.
so cmp is coercive
to Str?
pmichaud no
moritz_ erm, Stringy?
pmichaud no
leg is coercive
moritz_ so how does cmp compare a Foo and a Bar? 21:11
pmichaud I think it doesn't
just like eqv doesn't compare a Foo and a Bar
IllvilJa moritz_: you said that the build stuff (Configure.pm and friends) used in your Perl 6 JSON::Tiny module on github were a bit outdated. I tried to search for the latest version of that Configure stuff but it is a problematic word to search for on github.
moritz_ pmichaud: it does
pmichaud: it just returns false
(eqv, that is)
by default
IllvilJa moritz_: do you know where the latest such Configure.pm can be downloaded?
pmichaud hey, I'm just reading what it says in the spec! :-)
moritz_ IllvilJa: I think that's a good question for masak++ 21:12
or mberends++
pmichaud (yes, I agree, cmp seems problematic. I wrote asking for clarification earlier in the year -- not sure what happened with it)
pmichaud searches the logs
IllvilJa moritz_: I realized that my Perl 6 Term::ANSIColor is pushed without any installation scripts (which is an intresting variant of fail).
moritz_: thanks for the tip...
pmichaud cannot search the log, as it doesn't search for 3-letter terms :-(
moritz_ IllvilJa: the master plan[tm] is to delegation installation work to proto
IllvilJa Is proto ready for this paramount taskL 21:13
pmichaud anyway, my guess is that Bar cmp Foo returns a failure
21:13 Su-Shee left
IllvilJa s/taskL/task/ 21:13
Actually, I'll have a look at proto myself...
moritz_ maybe guesswork from spec + perl 5 is this: cmp compares numerically if numbers are found, and stringy otherwise. And you're welcome to add more specific versions 21:14
IllvilJa: there's a branch in proto called installed-modules
or something like that 21:15
pmichaud moritz_: that sounds familiar-ish
moritz_: I know there was something about getting cmp to be more dwimmy for sort
TimToady yes, I'm not sure we settled on a consistent set of semantics for non-type-match cmp
but we did discuss it at one point 21:16
IllvilJa moritz_: reading the proto docs, and realize that anyone running './proto Term::ANSIColor' is in for some disappointment ;-).
pmichaud I'm fine with moritz's formulation for the interim
IllvilJa moritz_: but I think I can fix that though.
moritz_ std: 1 after 2
p6eval std 29250: ok 00:01 105m␤
pmichaud or, perhaps better is
moritz_ std: 1 !after 2
p6eval std 29250: ok 00:01 104m␤
pmichaud sub infix:<cmp>(Numeric $a, Numeric $b) { ... } 21:17
sub infix:<cmp>(Stringy $a, Stringy $b) { ... }
and let everything else fail
(multis on those subs)
moritz_ is against failing
that would imply that <foo 3>.sort would return nonesense
because <3> is an Int 21:18
pmichaud you have that problem even with the formulation you give, though.
moritz_ well, in my formulation it would at least sort "foo" vs. 3 with string semantics 21:19
pmichaud would it?
how about
<foo 3 4 5 6 bar baz>.sort
can you be sure that all of those will be string sorts?
er, string comparisons?
frettled Perhaps we need a smart sort, just like we have smart match. 21:20
moritz_ frettled: that's what we're discussing right now
pmichaud: they would be mixed, by both proposals
pmichaud (I'm not entirely comfortable with the idea that <3> is an Int, btw. It feels like the dwimminess knob is a little too high there.)
IllvilJa Realized to my shock that ./proto were written in... Perl5!
frettled moritz_: I thought it looked like that. 21:21
IllvilJa No wonder it is claimed to be temporary...
moritz_ IllvilJa: but only a small part of proto is
jnthn I think at one time there was a suggestion that cmp would order by type first, and then sort within type.
21:21 pmurias left, masak joined
pmichaud jnthn: cmp is binary 21:21
jnthn I'm not sure that's a nice answer though.
masak o/
phenny masak: 16:51Z <diakopter> tell masak this is informative/instructive: code.google.com/p/v8/source/browse/...sregexp.cc
masak: 16:55Z <diakopter> tell masak the comments, I mean
frettled jnthn: it's only a nice answer if that's how smart matching works ;)
masak has a look
pmichaud jnthn: did you mean that "sort" would order by type?
IllvilJa masak: \o 21:22
jnthn pmichaud: Well, if consistent answers are given by some type ordering, I guess you could get those semantics to fall out of cmp.
21:22 pmurias joined
masak IllvilJa: oh hai. is it cold in Gothenburg too? 21:22
jnthn pmichaud: Defining a sane type ordering is kinda...well...weird though.
IllvilJa masak: I have no idea :-). Stockholm is pretty much freezing though.
jnthn pmichaud: I don't really think it'll fly.
masak IllvilJa: :) 21:23
jnthn England is foggy and cold.
IllvilJa masak: I guess that Gothenburg is a bit warmer (that is, almost freezing) but having more drizzle and clouds...
pmichaud jnthn: I'm not sure what that type ordering would be. This gets back to my shock when I discovered that Parrot's "cmp" opcode returns true for both cmp "three", 3 and cmp 3, "three" :-)
IllvilJa jnthn: Gothenburg in Sweden is a bit like England, wheatherwise...
frettled pmichaud: oh, ouch
jnthn IllvilJa: Eww.
TimToady that's why I used the term "consistent" above :) 21:24
jnthn pmichaud: lol. Surprise!
pmichaud: It's kinda hard to spec a good answer though... :-)
TimToady cmp || leg has its own set of surprises
jnthn Or reason why one is better than the other. But yes, one should be false. :-)
IllvilJa masak: I pushed my Perl 6 Term::ANSIColor to github without including any sort of installation facilities. I'm currently looking into proto and I wonder, is the Configure.pm found at proto/lib/Configure.pm the best one to use as a start?
masak IllvilJa: yes, I think it is. 21:25
21:25 ruoso left
IllvilJa masak: Good. Another thing: what is the best practice when it comes to denoting versions of modules? 21:25
masak IllvilJa: there's a script called create-new-project...
IllvilJa masak: I'll look into that.
masak IllvilJa: the practice I've used so far is to ditch versions... :)
IllvilJa masak: doesn't that make proto and friends a bit... unhappy? 21:26
masak IllvilJa: no.
proto is too simple to mind.
and the whole ecosystem has not really "needed" versions yet.
pmichaud in general, anything that helps point out proto's deficiencies is considered to be a Win :-)
since proto's goal is to self-terminat :) 21:27
IllvilJa masak: but how does it support "update" then? Or will it "blindly" download and install the available version if it happens to be different from the installed?
pmichaud *self-terminate
masak IllvilJa: it blindly updates.
moritz_ Method 'set_candidates' not found for invocant of class 'MultiSub'
masak IllvilJa: not even 'if' :)
moritz_ again that *!$%$ error 21:28
I wonder what I did wrong this time
IllvilJa masak: I see. So "update" and "install" is essentially identical ;-)
japhb masak, any progress on merging the installed modules branch of proto back to master?
21:28 hercynium left
masak IllvilJa: under the hood, yes. 21:28
IllvilJa: the have wrappers which work slightly differently, though.
japhb: not lately, no. 21:29
japhb dang
masak japhb: there's still quite a bit of work to be done.
japhb: I would really like to have it merged before ng merges, though.
japhb I'd really like to finish getting plumage to be a proper superset of proto.
masak or rather, I would really like to have Emmentaler up and running in some form by then.
IllvilJa masak: Cool then. I promise not to abuse the similarity between "update" and "install" just for amusement (but it is tempting in a sick way).
japhb Emmentaler?
masak japhb: why are you basing things on proto? :/ 21:30
pmichaud
.oO( ...fondue? )
masak japhb: Emmentaler is a cheese with big holes in it.
IllvilJa note to myself: "ignore versions, or keep it to '0.0.0'"
masak japhb: it's also the name of a project I haven't started writing on, for monitoring the Perl 6 projects ecosystem.
japhb masak, I'm not. I'm wanting there to be no reason preventing everyone from wholesale moving to plumage. Including having all proto projects already have imported metadata in Plumage's repo.
masak japhb: I'm impressed by the energy both you and mberends++ put into creating non-bumpy transitions for people. 21:31
japhb And the metadata import script is stalled on the fact that proto currently doesn't do installed projects, so a lot of stuff doesn't make sense.
IllvilJa moritz_: did you notice that your "swearing" looked like potential perl code...
moritz_ IllvilJa: i chose it in a way that it's not valid Perl 6 code :-) 21:32
IllvilJa p6eval: *!$%$ error
Let's find out...
moritz_ std: *!$%$
p6eval std 29251: ===SORRY!===␤Obsolete use of $% variable; instead, in Perl 6 please use Form module at /tmp/EBI1yXtQVg line 1:␤------> *!$%⏏$␤FAILED 00:01 106m␤
IllvilJa Aha, that's the way to do it. 21:33
21:33 mariano__ left
IllvilJa moritz_: std is better at swearing that we are. 21:33
moritz_ IllvilJa: hey, it was written by an US citizen :-)
masak diakopter: interesting reading indeed. 21:34
moritz_ gets seriously frustrated with ng's obscure errors
TimToady std: *!$#$
p6eval std 29251: ===SORRY!===␤Obsolete use of $# variable; instead, in Perl 6 please use .fmt at /tmp/AGBdgpEmuO line 1:␤------> *!$#⏏$␤FAILED 00:01 104m␤
[particle] hears the sound of motivation
TimToady std: *!$x$ 21:35
p6eval std 29251: ===SORRY!===␤Confused at /tmp/5GHcQ8OuQ1 line 1:␤------> *!$x⏏$␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix stopper␤ method arguments␤ postfix␤ postfix_prefix_meta_operator␤ standard stopper␤ statement
..modifier loop␤ terminator␤ whitespace␤…
moritz_ adding infix:sym<cmp> to the grammar works
adding our multi sub infix:<cmp>(Num $a, Num $b) { } to the setting leads to that strange error 21:36
it couldn't possibly be related to the fact that there's a pirop with the same name?
pmichaud shouldn't be.
jnthn missed the error?
TimToady most operators should eventually move back out of the grammar into the setting, but some operators are always going to be more basic than others, and dependency loops need a circularity saw
pmichaud especially because there's not a <=> pirop :-)
TimToady or to be broken into primitive vs advanced versions
moritz_ pmichaud: I'm trying cmp now 21:37
jnthn: Method 'set_candidates' not found for invocant of class 'MultiSub'
jnthn: while compiling Test.pm
pmichaud moritz_: right, but since you were getting the same error for <=>, I doubt it's related to the pirop of the same name.
jnthn moritz_: That means there's a PIR :multi definition somewhere too.
(usually)
ng: 1 cmp 2
p6eval ng 69ce77: Confused at line 1, near "1 cmp 2"␤current instr.: 'perl6;HLL;Grammar;panic' pc 519 (src/stage0/HLL-s0.pir:336)␤
jnthn hm 21:38
pmichaud I'm not sure that infix:<cmp> is defined
sorry
infix:sym<cmp>
moritz_ it's not
jnthn Maybe a PIR version of the op sneaked in.
moritz_ but it is here locally
src/cheats/relops.pir
jnthn ah 21:39
moritz_ jnthn++
jnthn Then you just need to toss the version in there.
pmichaud (feel free to toss all of them, now that we can do operators in setting)
jnthn Also moving anything that's in cheats that's an op into operators.pm is most welcome.
*no* opertators should be defined in PIR at all.
(We just had to do 'em that way to get a start) 21:40
pmichaud there may be some that have to be PIR, but they'll be rare.
moritz_ ng: say 1.Bool
p6eval ng 69ce77: Method 'Bool' not found for invocant of class 'Integer'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
moritz_ ng: say (?1).perl
p6eval ng 69ce77: 1␤
moritz_ (?1) so looks like regex syntax :-)
ng: say (?1).WHAT
p6eval ng 69ce77: Int()␤
moritz_ ng: say True 21:41
p6eval ng 69ce77: 1␤
moritz_ ng: say True.WHAT
p6eval ng 69ce77: Bool()␤
jnthn pmichaud: Even if the body has to be PIR, there's no reason they can't be in a Perl 6 decl, no?
pmichaud jnthn: there may be a couple that need to be in Perl 6 decl, because we can't rely on the setting being compiled for stage0 21:42
sorry, that may need to be in PIR decl
TimToady shopping is hard, let's go bootstrapping!
jnthn pmichaud: that'd mean we were invoking rather than just using them at compile time, though, no?
pmichaud or I can imagine there would be other scenarios that require the operators to be in PIR
jnthn: BEGIN
jnthn: and CHECK :-)
jnthn pmichaud: OK, we'll see how far we can cope. 21:43
pmichaud: I really would rather we don't have any in PIR if at all avoidable though.
Since then they're not overridable.
moritz_ you can disable BEGIN and CHECK for stage0 compilers, I think
pmichaud I agree, I'd rather not have any in PIR either. I'm just not prepared to make an absolute statement about it.
masak I'm so curious about what Japanese twitterers write about Perl 6, but Google Translate often provides scant assistance: twitter.com/uasi/status/6307676197 -- something about 'come and go with the madness'?
pmichaud (or to confirm an absolute statement :-) 21:44
21:44 ShaneC joined
pmichaud there's a reason why the current operators are given in src/cheats, however :-) 21:44
which is that we really think they shouldn't be there.
moritz_: since BEGIN is essentially what adds operators into the current parser, I'm not sure we can just disable it. 21:45
(we might make sure those operators are already present, however.)
anyway, I agree fully with the overall goal of "no operators declared in PIR". I'm not willing to make that an absolute requirement. 21:46
s/willing/ready/
21:46 Guest30593 left
jnthn Oh, for sure it's not an ng goal. 21:46
More of a "where I want us to get to" :-)
It's a bit like my goal of ClassHOW and RoleHOW and friends being written in NQP. :) 21:47
moritz_ ng: say Order::Same
p6eval ng 69ce77: Null PMC access in invoke()␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
masak subm... oh dang 21:49
moritz_ old habits die hard :-) 21:50
21:50 colomon left
masak just you people wait... :) 21:50
sooner or later ng will merge, and then... bugfest! \o/
jnthn uh-oh. :-)
frettled jnthn: perhaps I should take masak on a «vacation» around the end of March? :D 21:51
pmichaud more like end-of-december :)
frettled s/around/until/?
pmichaud no, we need masak++ bugreports 21:52
masak When ng is merged, every day will feel like vacation! :P
moritz_ nope, we need masak++ for so many tasks... :-)
ng_feed rakudo-ng: moritz++
rakudo-ng: infix:<cmp>, leg, <=>
pmichaud sometimes the right tool for fixing things is a sledgehammer.
masak leans against it
yup.
moritz_ what did I want to do in the first place?
ah yes, sort.
21:53 frettled sets mode: +o masak
frettled op to the sledgehammer 21:53
moritz_ if I had a hammer...
masak :)
moritz_ I'd destroy my laptop, and I'd be no use for you anymore
masak "When your only tool is a hammer, every problem looks like a thumb." 21:54
TimToady masak: it says, more or less: Going back and forth between PHP and Perl 6 drives you mad
masak TimToady: ah. I can imagine. :)
moritz_ that seems like a good combination for madness, yes 21:55
frettled TimToady: I don't see where Perl 6 comes into consideration. ;) 21:56
pmichaud Is *THAT* what I've been doing wrong? I've been going back and forth between PHP, Perl 6, and Parrot.
Oops.
dalek kudo/ng: f6b45df | moritz++ | src/ (4 files):
infix:<cmp>, leg, <=>
moritz_ don't tell me, I made a very stupid error in there :-) 21:57
fix is on its way too
pmichaud goes to see the very stupid error.
pmichaud wonders which fix will appear.
moritz_ like, not defining the (Num, Num) candidate twice? 21:58
Infinoid ooh, dalek works
pmichaud and omitting the + on $b ?
21:59 TimToady sets mode: +vvv dalek hugme iblechbot, TimToady sets mode: +vvvv ilbot2 ilogger2 IRSeekBot lambdabot, TimToady sets mode: +vvv lisppaste3 p6eval phenny, TimToady sets mode: +v pugs_svn
moritz_ pmichaud: that too 21:59
pugs_svn r29252 | moritz++ | [t/spec] more simple tests for infix:<cmp> 22:00
dalek kudo/ng: 5453739 | moritz++ | (3 files):
oops, had the infix:<cmp>(Num, Num) twice. We also pass S29-any/cmp.t now.
22:02
ng_feed rakudo-ng: moritz++ 22:03
rakudo-ng: oops, had the infix:<cmp>(Num, Num) twice. We also pass S29-any/cmp.t now.
masak rakudo: say $a == 0; my $a 22:05
p6eval rakudo 7ef386: 1␤
masak just got bitten by that one. not funny. :/
I'm not complaining, though. Perl 6 is great. :) 22:06
moritz_ rakudo: my $a; say $a == 0
p6eval rakudo 7ef386: Use of uninitialized value␤1␤
masak it's just Rakudo which is less than wonderful sometimes. :P
moritz_ it's curious that with declaration later on it doesn't even warn
TimToady that's because that's not Perl 6 :P
masak :)
IllvilJa masak: I did use install and use ./proto to build and test my local copy of Term::ANSIColor, and everything worked nicely. 22:07
masak: but there is no 'make install'!
masak IllvilJa: that's correct.
IllvilJa: we're working on a branch to be able to install things. 22:08
IllvilJa masak: how is my rakudo perl6 supposed to know where to find the Term::ANSIColor library?
Aha!
moritz_ oh. Now I see why colomon++ thought migriting .sort was a bit much...
masak IllvilJa: but proto is woefully understaffed right now, so it's going slowly :/
IllvilJa: for 'how to find modules', the current state of the art is manually setting PERL6LIB. 22:09
IllvilJa Aha.
Well, that works I assume.
masak IllvilJa: the installed-modules branch will bring an end to that regime.
IllvilJa masak: Cool then. Ok, this means that if I push the Makefile.in, Configure.pl, lib/Configure.pm and the test file under t into github, then this module will be more or less 'usable' [by Perl 6 current standards ;-) ] 22:10
masak IllvilJa: oh yes. 22:11
IllvilJa++
pmichaud moritz_: arggg, you missed the other error!
0
our multi sub infix:«<=>»(Num $a, Num $b) {
don't constrain $a and $b to Num :)
pugs_svn r29253 | lwall++ | [CORE.setting] add EnumMap and PairMap
r29253 | [STD] typename should slurp up whence closure
masak IllvilJa: if you want, you can also have the honours of adding the project to protos' projects.list. 22:12
moritz_ pmichaud: fixing now
masak s/s'/'s/
IllvilJa masak: I actually did that this morning, by the recommendation of others around here. 22:13
masak oh, excellent. I'm beind the times. :)
moritz_ clearly my brane has melted for today, and I'm not up for any serious hacking anymore tonight 22:14
pmichaud .sort really wants slices to work anyway 22:15
pugs_svn r29254 | lwall++ | [t/spec/TODO] catch mention of PairVal 22:16
masak I don't want to sound ominous, but I fear slices are up for a re-spec or two before we get them fully. 22:17
TimToady pmichaud: assuming the slices are of the same type, presumably cmp will already do it
frettled masak: in what way?
masak frettled: I don't know, I... I look at them in the spec and think "this will not work" :) I can't really motivate it, though. 22:18
moritz_ I also recall that some changes where decided that never made it to the spec
like that @@a and @a are really two distinct variables
frettled The changes are just waiting for some tuits to make the rounds?
masak moritz_: right.
moritz_ ruoso++ worked hard to convince TimToady that it was the right thing, but never put it in the spec anywhere 22:19
masak frettled: no, I suspect it's a trap we need to trigger by falling into it, at least partly.
pmichaud the way 'sort' works in rakudo master is that it sorts a list of indices, and then returns a slice of the original list
as opposed to attempting to re-order the elements in the list 22:20
IllvilJa masak: two more things... first one: in the projects.list, is it possible to provide some "descretionary" name for the module? The thing is called Perl6-Term--ANSIColor because that is it's name on github but I would like to be able to refer to it as "Term::ANSIColor" and then have proto automagically understand that it is Perl6-Term--ANSIColor it should download and install.
moritz_ and it jumps through loops to work around TT#56, which is already fixed
frettled masak: so everyone's just holding their collective breaths for you to file a bug report ;)
IllvilJa masak: also, it would be nice to write Term::ANSIColor in the deps.proto file for other modules that depends on this module. 22:21
22:21 brrant left
masak IllvilJa: I'm automatically against feature additions to proto. that's going the wrong way. 22:21
22:21 Wolfman2000 joined
pmichaud I don't recall that many hoops for TT #56... but that was quite a while ago :) 22:21
IllvilJa masak: well, whatever ends up replacing proto I would like to have that ability then ;-).
masak IllvilJa: I don't want us to work on making proto more future-proof. I want us to work on making a real installer. :)
IllvilJa: me too. 22:22
IllvilJa Second thing I wonder about is related to github: I pushed a bunch of things like the user 'illvilja', but the stats for 52 week activity has a grey bar and not a dark blue (the latter denoting commits by owner). 22:23
Is there something I should tweak to make github understand that any pushes I make are made by the actual owner of Perl6-Term--ANSIColor (that is, by me). I think it actually understands it, at least partially, but fails to indicate the bare as blue anyway. 22:24
(A cosmetic problem, I know but my evil OCD twin complains about it...)
moritz_ IllvilJa: have you configured your email address in git to be the same as your github email address?
IllvilJa moritz_: I think so. But I better double check. 22:25
moritz_: thanks. That was it. I did write some nonexisting mix up of my private and work mail addresses in the .gitconfig file. Now I hope future pushes will work better :-). 22:26
22:31 payload joined 22:34 brrant joined 22:45 colomon joined 23:01 IllvilJa left 23:02 SirKay left 23:04 slavik left 23:07 colomon_ joined, colomon left, colomon_ is now known as colomon 23:09 colomon_ joined, colomon left, colomon_ is now known as colomon 23:12 colomon_ joined, colomon left, colomon_ is now known as colomon 23:17 IllvilJa joined 23:19 brrant left 23:21 iblechbot left
colomon moritz_: seriously. I suspect that for me, reimplementing sort in Perl 6 would be easier than trying to make sense of that PIR. 23:24
masak yes! 23:28
I found a bug.
masak does a sort of victory dance
rakudo: my %h; %h<x> = %h<x>; push [], {%h}
p6eval rakudo 7ef386: ( no output )
masak locally, that segfaults. 23:29
rakudo: my %h; %h<x> = %h<x>; push [], {%h}; say "alive"
p6eval rakudo 7ef386: ( no output )
masak I'll take that as proof and submit it. :)
masak submit rakudobug
23:30 nihiliad left
masak rakudo: my %h; %h<x> = %h<x>; say %h; say 'an even minimal segfault case' 23:33
p6eval rakudo 7ef386: ( no output ) 23:34
23:34 pmurias left
masak er, 'even more minimal'. 23:35
23:46 colomon left 23:53 demond joined 23:55 ihrd joined 23:57 colomon_ joined, leedo joined 23:58 demond left