»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
jnthn LlamaRider: Perl 6 queue is at rt.perl.org/rt3/Search/Results.htm...lled%27%29 00:00
sorear TimToady: flu still?
jnthn ...eek!
sorear :|
TimToady yes, have had it all year
sorear I hope you mean 12 days and not 365...
either way, that's a very long flu 00:01
:|
00:01 Chillance left
sorear niecza: { $^a => $^b } 00:03
p6eval niecza v13-228-g54921c8: OUTPUT«Unhandled exception: No value in ANON available for parameter $a␤ at /tmp/btTFrVmKoX line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2988 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2989 (module-CORE @ 59) ␤ at /home…
japhb (Somewhat off-topic, my apologies): My company is desperately looking for Perl (5) programmers, but I'd really like to pitch people who aren't just good Perl programmers, but have the kind of personality you find around here. I want to hire people I would want to work with, I guess. :-) Is there a place in the Perl 5 world known for our sort of folks?
(I'm already mining my local Perl Mongers quite heavily. ;-) ) 00:05
sorear where are ya? 00:08
japhb sorear, Sonoma County, Northern California, USA 00:09
00:09 molaf_ joined
sorear bah, it's always norcal 00:09
sorear needs to get out of bleeping socal
japhb sorear, YES PLEASE MOVE HERE.
;-)
00:10 tokuhirom joined
sorear I don't know of anything on the Internet that approximates the composition of #perl6 00:12
00:12 molaf left
japhb sorear, I was afraid of that. :-/ 00:13
geekosaur do I dare ask what kind of perl programming?
sorear that said, I don't have much experience, so remember that thing about absense of evidence and evidence of absense
btw japhb how goes the val grammar project? do you want me to take any initiative on this? 00:14
japhb geekosaur, I work for Sonic.net, an ISP/Telecom. Lots of infrastructure and internal tools programming. There's other stuff as well, but that's the majority I think. 00:15
sorear japhb: Didn't Sonic.net just buy TimToady? 00:16
TimToady eh?
sorear I remember NetLogic was bought... forgot who
TimToady NetLogic was bought by Broadcom
japhb sorear, re: Experience: I can honestly say that if anyone sane looked at the commit history of Niecza and didn't think you had "experience with large projects", they're one rock short of a load.
sorear japhb: I meant experience in the sense of being acquanted with large parts of the Internet 00:17
I've only really been doing the social networking thing for about five years, and most of that's been gaming-related 00:18
dalek kudo/nom: 919912a | jnthn++ | src/Perl6/Actions.pm:
Compiler part of handling binding to array and hash elements.
kudo/nom: 2ea20a2 | jnthn++ | src/core/ (2 files):
Support binding of hash elements.
kudo/nom: f133a3b | jnthn++ | src/core/Any.pm:
Fix requiredo.
kudo/nom: 47540c2 | jnthn++ | t/spectest.data:
Run S03-operators/binding-hashes.t.
sorear checks how similar this is to the niecza solution
japhb I WISH we could get TimToady (hi!), but I honestly don't even know how to use him for what he's worth. (That said, TimToady, if you want to move back here and have any interest in working for us, LET ME KNOW. ;-) ) 00:19
geekosaur aha
geekosaur notes another place to send resume :)
jnthn is happy enough with it, given it passed the entire set of binding-hashes.t without fudging. 00:20
japhb Re: val(), please do apply your skills. My non-$dayjob time keeps getting blindsided this month, and I don't think I should be a blocker on this.
sorear japhb: ok.
LlamaRider I need to get a screen shot of this chat fragment, no one ( = BSc, MSc students at my uni) believes me that Perl employers exist other than in real life ^^
geekosaur (sysadmin/"system programmer" type, mostly infrastructure. also have ISP experience but it's so far back in prehistory that it's unlikely to be applicable (1980s!)
LlamaRider and I think I fell asleep at the end of that sentence :D "exist in real life" 00:21
sorear LlamaRider: I think that came out wrong. You said there are no fictional Perl employers.
LlamaRider: irclog.perlgeek.de/perl6/2012-01-13#i_4977005
LlamaRider sorear: yep, need my sleep soon
00:22 mikemol left, motherbrain left
japhb geekosaur, Yes, apply. That experience is a good match for the team, methinks. 00:22
jnthn *yawn* enough for today 00:23
NativeCall hacking day tomorrow \o/
sorear \o/
japhb Sorry to drag this off channel off topic, but still glad I did anyway. :-)
TimToady sleep well
sorear rest well.
japhb jnthn, yay!
jnthn Yes, not having to change bed at 6am should make this a better night's sleep than last night. :) 00:24
japhb bleah
jnthn Yeah. Stockholm to here is...a bit short for a sleeper train really.
And the cold between the station and home was quite awakening ;) 00:25
jnthn potters off to rest :)
LlamaRider that's a loooong queue for rakudo... 00:27
00:30 mikemol joined 00:31 cognominal left 00:36 LlamaRider left
dalek ecza: 3101ab5 | sorear++ | / (3 files):
A block cannot be a hash if it contains placeholders
00:40
ast: 6a657c6 | sorear++ | S06-other/anon-hashes-vs-blocks.t:
[S06-other/anon-hashes-vs-blocks] Unfudge for niecza
[Coke] that's an awful URL for the bug queue. 00:41
rakudo.org/tickets/ is probably better.
( imean, it's just long and hard to remember.) 00:42
00:47 blott_ joined 00:52 bacek joined 00:53 rml` joined 00:54 cognominal joined, leprevost joined 00:57 clkao_ joined 00:58 krunen_ joined, ascent__ joined, Shozan joined 00:59 panterax joined 01:00 nsh joined 01:01 abercrombie joined 01:03 rml left, felher left 01:09 felher joined 01:25 blott_ left
sorear niecza: say (*.defined)(Mu) 01:27
p6eval niecza v13-236-g3101ab5: OUTPUT«Unhandled exception: Nominal type check failed in binding anon_0 in ANON; got Mu, needed Any␤ at /tmp/CG0fw6cJmw line 0 (ANON @ 1) ␤ at /tmp/CG0fw6cJmw line 1 (mainline @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2988 (ANON @ 3) ␤ at /home/p6e…
01:33 benabik joined
ruoso sorear: about postcircumfix:<( )>, the reason it receives a capture is because it is the only way for objects to implement the code invocation in a higher level, otherwise it's vm-specific 01:37
sorear ruoso: I don't get it 01:38
what's vm-specific about method postcircumfix:<( )>($a, $b, :$c) { ... } ? 01:39
01:41 tokuhirom left
ruoso sorear: er... if this is a meta-method, how will you introspect the method arguments? 01:44
sorear This is a completely ordinary method 01:45
In Niecza, $obj(5, 6) means $obj."postcircumfix:<( )>"(5, 6)
ruoso so you don't build the capture... what happens when you do $obj(5,(5,6))? 01:46
and the signature is *@a 01:47
ruoso needs to find the context of the original discussion 01:49
ruoso is sure there is more to it
sorear @a gets bound to [5,5,6]
if you don't want flattenning, don't use *@a
dalek ecza: 037f4b7 | sorear++ | / (4 files):
Make * a "blackhole" container that ignores writes
01:50
sorear std: &infix:<R+> 01:58
p6eval std dc62e1d: OUTPUT«ok 00:01 111m␤»
sorear std: &infix:<***>
p6eval std dc62e1d: OUTPUT«ok 00:01 111m␤»
sorear perl6: &infix:<R+> 02:00
p6eval pugs b927740: OUTPUT«*** Undeclared variable: ("&infix:R+",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0x7f65b5d60a41>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0x7f65b5d6a789>}),("@_",PELexical {pe_type = (mkType "Array"), pe…
..niecza v13-236-g3101ab5: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'infix:<R+>' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 919 (die @ 2) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1143 (P6.comp_unit @ 32) ␤ a…
..rakudo 47540c: OUTPUT«===SORRY!===␤Symbol '&infix:<R+>' not predeclared in <anonymous> (/tmp/GURpbEHMI6:1)␤»
sorear Is this a bug in niecza?
02:00 am0c left
sorear S02/whatever.t expects &infix:<R+> to work 02:00
niecza: &[R+]
p6eval niecza v13-236-g3101ab5: ( no output )
sorear I would expect that to have been the syntax used 02:01
02:01 rml` left
sorear rakudo: say (*.defined)(Mu) 02:03
p6eval rakudo 47540c: OUTPUT«Bool::False␤»
02:04 thou left
sorear TimToady: do you have an opinion on &[R+] vs &infix:<R+> ? 02:05
dalek ecza: d22f880 | sorear++ | src/niecza:
Allow Mu-arguments to whatever closures
sorear perl6: say *.WHAT 02:09
p6eval niecza v13-238-gd22f880: OUTPUT«Rebuild in progress␤»
..rakudo 47540c: OUTPUT«Whatever()␤»
..pugs b927740: OUTPUT«Num␤»
ruoso sorear: hah! found the reason.... 02:10
irclog.perlgeek.de/perl6/2008-08-21#i_442175
tell jnthn I found the original reason for .postcircumfix:<( )>($capture)... If it's not an enclosed capture, the invocant is always the Code object, and will override the actual invocant of the thing being called... 02:12
@tell jnthn I found the original reason for .postcircumfix:<( )>($capture)... If it's not an enclosed capture, the invocant is always the Code object, and will override the actual invocant of the thing being called...
ruoso forgot the syntax for the bot
sorear phenny: tell 02:13
shachaf ruoso: "phenny: tell NICK MESSAGE"
ruoso phenny: tell jnthn I found the original reason for .postcircumfix:<( )>($capture)... If it's not an enclosed capture, the invocant is always the Code object, and will override the actual invocant of the thing being called...
phenny ruoso: I'll pass that on when jnthn is around.
sorear o/ shachaf
ruoso sorear: makes sense now? 02:14
sorear ruoso: that's a moot point now, because invocants are no longer considered special
shachaf G'day.
sorear niecza: class A { method postcircumfix:<( )>($invocant, $arg) { say $invocant; say $arg } }; my $a = A.new; 5.$a();
p6eval niecza v13-238-gd22f880: OUTPUT«Unhandled exception: No value for parameter $arg in A.postcircumfix:<( )>␤ at /tmp/TaWLhJsShL line 0 (A.postcircumfix:<( )> @ 1) ␤ at /tmp/TaWLhJsShL line 1 (mainline @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2991 (ANON @ 3) ␤ at /home/p6eva…
sorear niecza: class A { method postcircumfix:<( )>($invocant, $arg) { say $invocant; say $arg } }; my $a = A.new; 5.$a(7);
p6eval niecza v13-238-gd22f880: OUTPUT«5␤7␤»
sorear 5.$a(7) means the same as $a(5, 7) 02:15
ruoso has a very confused memory right now..
But I guess you may be right, I kinda remember being very upset about the change in the way capture worked 02:17
a lot of things that made sense in that world simply stopped making sense...
of course a lot of other things started making sense instead 02:20
but wait... there's one more thing... 02:23
ruoso can't really think stright
geekosaur things are supposed to make sense?
ruoso $a(5,7) is supposed to have $a as the invocant 02:24
which should not mix with the inner capture
sorear A capture contains a list of positions and a hash of names 02:25
There's nothing called an invocant
dalek ast: 3f6faba | sorear++ | S02-types/whatever.t:
[S02-types/whatever.t] Unfudge passing tests for niecza
02:26
ruoso when the signature is (|$capture), do you get the invocant in $capture or not? 02:27
sorear ruoso: I don't know what you mean by invocant 02:28
remember, I'm new here 02:29
ruoso niecza: class A { method postcircumfix:<( )>(|$capture) { say $capture.perl() }; A(5,7) 02:30
p6eval niecza v13-238-gd22f880: OUTPUT«===SORRY!===␤␤Unable to parse block at /tmp/q4hsUdeyf_ line 1:␤------> class A {⏏ method postcircumfix:<( )>(|$capture) {␤Couldn't find final '}'; gave up at /tmp/q4hsUdeyf_ line 1 (EOF):␤------> capture) { say $c… 02:31
ruoso niecza: class A { method postcircumfix:<( )>(|$capture) { say $capture.perl() }}; A(5,7)
p6eval niecza v13-238-gd22f880: OUTPUT«\(A, 5, 7)␤»
ruoso if postcircumfix() is a meta-invocation, we should be able to clearly see the distinction between A and (5,7)
02:32 wolfman2000 joined 02:34 fsergot left
sorear ruoso: What's a meta-invocation? 02:35
ruoso: niecza makes no distinction whatsoever between A and (5,7)
A is simply the first argument 02:36
ruoso well, yeah... I guess it could be possible to just shift from the capture 02:39
02:55 whiteknight left
dalek ecza: 3798d2c | sorear++ | lib/Kernel.cs:
Try to make $CALLER:: more aware of thunk subs
03:05
ast: 85c9478 | sorear++ | S06-signature/caller-param.t:
[S06-signature/caller-param.t] Unfudge for niecza
03:06
sorear rakudo: say eval 88, 88 03:07
p6eval rakudo 47540c: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'eval' will never work with argument types (int, int) (line 1)␤ Expected: :(Str $code, Any :lang(:$lang))␤»
sorear rakudo: say eval 88
p6eval rakudo 47540c: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'eval' will never work with argument types (int) (line 1)␤ Expected: :(Str $code, Any :lang(:$lang))␤»
dalek ast: 0251718 | sorear++ | S29-context/eval.t:
[S29-context/eval.t] Needs parens to be correctly interpreted
03:08
ruoso sorear: "invocant" is the object in a method call 03:12
niecza: class A { method postcircumfix:<( )>(|$capture) { my $self = $capture.shift(); say $self; say $capture.perl() }}; A(5,7) 03:14
p6eval niecza v13-239-g3798d2c: OUTPUT«Unhandled exception: Unable to resolve method shift in class Capture␤ at /tmp/mSul8WUoNz line 1 (A.postcircumfix:<( )> @ 3) ␤ at /tmp/mSul8WUoNz line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2991 (ANON @ 3) ␤ at /home/p6eval/nie…
ruoso wait... isn't capture read-only? 03:15
sorear yes, captures are read-only 03:17
dalek ast: 025936e | sorear++ | packages/Test/Util.pm:
Do not use :DEFAULT in Test::Util ... it serves no purpose other than to raise the bar for usage
03:19
ruoso so you can't shift it to remove the code invocant...
sorear why would you want to? 03:20
ruoso If you are implementing a custom invocation and you don't want to enforce any context in the arguments 03:21
you would use (|$capture) as signature
and pass the capture as (|$capture) to the next invocation
sorear what do you mean by a custom invocation?
ruoso if you are implementing a custom Code type 03:22
like a method trait
sorear niecza: sub foo($x, |$y) { say $x.perl; say $y.perl }; foo(1,2,3,4)
p6eval niecza v13-239-g3798d2c: OUTPUT«1␤\(1, 2, 3, 4)␤»
sorear hmm, I think that's supposed to print \(2,3,4) 03:23
ruoso I don't thikn that does what you meant
|$capture always take the entire capture
sorear apparently
ruoso because getting the first element may enforce a specific context in the capture 03:24
sorear I'm thinking I should change that
ruoso I don't think it's even possible to have that signature
sorear method foo(|$cap) means sub foo(self, |$cap)
ruoso it does? 03:25
I'm pretty confident it doesn't 03:26
TimToady note we got rid of the sigils for \ and | 03:28
S06:1140
ruoso sorear: perlcabal.org/syn/S06.html#Invocant_parameters
specially the last paragraph of the section 03:29
so if postcircumfix:<( )> doesn't take the capture as a positional parameter you will potentially start processing a lazy list because you think there is an invocant 03:30
because the method can be obtained as a code and called as a routine
sorear ruoso: it's not QUITE the same - most importantly, the method form causes installation into the method table 03:31
ruoso niecza: class A { method postcircumfix:<( )>(|$capture) { say $capture.perl() } }; my $code = A.^can('postcircumfix:( )'); $code(A,1,2,3); 03:32
p6eval niecza v13-239-g3798d2c: OUTPUT«Unhandled exception: Excess arguments to CommonEnum.postcircumfix:<( )>, used 2 of 5 positionals␤ at /home/p6eval/niecza/lib/CORE.setting line 0 (CommonEnum.postcircumfix:<( )> @ 1) ␤ at /tmp/4rI1lNE8A9 line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/li…
ruoso sorear: but in the end it's just a code object, independently on where it is installed 03:33
sorear "can" is currently returning Bool
ruoso niecza: class A { method postcircumfix:<( )>(|$capture) { say $capture.perl() } }; my $code = A.^method('postcircumfix:( )'); $code(A,1,2,3);
p6eval niecza v13-239-g3798d2c: OUTPUT«Unhandled exception: Unable to resolve method method in class ClassHOW␤ at /tmp/T0hZx3pJdj line 1 (mainline @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2991 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2992 (module-CORE @ 59) ␤ at…
sorear niecza: my $code; class A { $code = method postcircumfix:<( )>(|$capture) { say $capture.perl() } }; $code(A,1,2,3);
ruoso nom: class A { method postcircumfix:<( )>(|$capture) { say $capture.perl() } }; my $code = A.^can('postcircumfix:( )'); $code(A,1,2,3);
p6eval niecza v13-239-g3798d2c: OUTPUT«\(A, 1, 2, 3)␤» 03:34
nom 47540c: OUTPUT«Method 'postcircumfix:<( )>' not found for invocant of class 'Parcel'␤ in <anon> at src/gen/Metamodel.pm:3377␤ in block <anon> at /tmp/r19HQXj0eo:1␤ in <anon> at /tmp/r19HQXj0eo:1␤»
ruoso sorear: ok, now I'm confused... what just happened? 03:35
sorear ruoso: in niecza or in nom?
ruoso in niecza
sorear niecza's binder has a bug that caused |$capture to get all the arguments, including the one that was already eaten by self
ruoso well... that was actually the behavior I expected 03:36
|$capture should include the invocant, which is just what happened
niecza: class A { method postcircumfix:<( )>(|$capture) { say $capture.perl() } }; my $code = A.^method('postcircumfix:( )'); $code(A,1,(2,(3,4))); 03:37
p6eval niecza v13-239-g3798d2c: OUTPUT«Unhandled exception: Unable to resolve method method in class ClassHOW␤ at /tmp/reVSIUVL0H line 1 (mainline @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2991 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2992 (module-CORE @ 59) ␤ at…
ruoso meh... wrong line to copy
sorear in nom, you want .^find_method
ruoso niecza: my $code; class A { $code = method postcircumfix:<( )>(|$capture) { say $capture.perl() } }; $code(A,1,(2,(3,4)));
p6eval niecza v13-239-g3798d2c: OUTPUT«\(A, 1, (2, (3, 4)))␤»
sorear huh, I'm suprised that worked 03:38
niecza's .perl has known issues with nested Parcels
TimToady: looking at S06:1166 - what would you say would happen if |args were moved after $self: ? 03:39
03:39 orafu left
ruoso niecza: my $code; class A { $code = method postcircumfix:<( )>($capture) { say $capture.perl() } }; $code(A,1,(2,(3,4))); 03:41
p6eval niecza v13-239-g3798d2c: OUTPUT«Unhandled exception: Excess arguments to A.postcircumfix:<( )>, used 2 of 3 positionals␤ at /tmp/pWux1TY_kI line 0 (A.postcircumfix:<( )> @ 1) ␤ at /tmp/pWux1TY_kI line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 2991 (ANON @ 3) ␤ …
03:41 Patterner left
TimToady "The C<|> parameter takes a snapshot of the current binding state" 03:41
03:41 orafu joined 03:43 Psyche^ joined, Psyche^ is now known as Patterner 03:44 thowe joined
ruoso TimToady: does that mean that method foo(|$capture) {...} will not result in $capture having the invocant? 03:44
TimToady as I currently read it, | leaves out the invocant, but \ would include it 03:45
er, actually, current spec only has \ on individual args 03:46
ruoso well, in that case not having capture as a positional arg to postcircumfix:( ) is ok... since you won't need to modify the capture inside the sub
TimToady but it's possible we need a really raw invocation hook 03:47
ruoso although perlcabal.org/syn/S06.html#Argument_list_binding seems to imply otherwise
TimToady we could special case (|cap) to include the invocant, or allow (|cap:) 03:48
sorear someday we also need to figure out what \|foo means 03:49
ruoso is really confused right now
sorear the current spec is not consistant
TimToady at the moment \| is not in the spec
iirc
cognominal in rakudo foo(|$) leaves the invokant 03:50
ruoso leaves in the capture or outside the capture/
"method addto (|$args ($self: @x)) { trace($args); $self += [+] @x }" <--- from the spec 03:51
the inner signature to the capture includes the invocant
nom: class A { method foo (|$cap) { say $cap.perl }}; A.foo(1,2,3); 03:52
p6eval nom 47540c: OUTPUT«Capture.new()␤»
ruoso nom: class A { method foo (|$cap) { say $cap }}; A.foo(1,2,3);
p6eval nom 47540c: OUTPUT«1 2 3␤»
TimToady we had to get rid of the $ for sanity, since it sometimes implies itemizing
ruoso uh? 03:53
TimToady listop 1,2,$cap,4 does not behave correctly
likewise for \ parcels
03:53 packetknife left
ruoso I guess that's why we had the capture sigil idea 03:53
TimToady cap should not imply a decision on flattening/non-flattening 03:54
cognominal hum, sorry, the example in List are special, they use pir::perl6_current_args_rpa__P() to get at the positional parameters
TimToady it turns out it's just a constant declaration in strange form
ruoso oh.. so just without sigil
TimToady yes, but parsed as a term
ruoso nom: class A { method foo (|cap) { say cap }}; A.foo(1,2,3);
p6eval nom 47540c: OUTPUT«===SORRY!===␤Malformed parameter at line 1, near "|cap) { sa"␤»
TimToady you can still do foo() or +foo or whatever
ruoso std: class A { method foo (|cap) { say cap }}; A.foo(1,2,3);
p6eval std dc62e1d: OUTPUT«===SORRY!===␤Malformed parameter at /tmp/pR3oO7K1xv line 1:␤------> class A { method foo (⏏|cap) { say cap }}; A.foo(1,2,3);␤ expecting any of:␤ method_def␤ name␤ parameter␤ signature␤Parse failed␤FAILED 00:01 109m␤»…
TimToady nyi 03:55
been too sick to reimplement that yet
I'm only well enough to rewrite all the specs :)
sorear will try to implement |foo and foo in the near future 03:56
ruoso ok... so (|cap) in the signature returns an iterator to wherever the HOW left when deciding how to invoke the method
that also makes it compatible with the fact that the capture itself is readonly 03:57
which basically means we have the same semantics as LISP 03:59
sorear ruoso: HOW doesn't enter into this at all.
ruoso sorear: the HOW is the thing doing the method dispatch 04:00
TimToady but we need to be able to take the snapshot further down the arg list as well; this is how partial binding for map -> $a, $b etc are supposed to work eventually
allow the binding to decide how far to bind, not do introspection on the signature
sorear ruoso: no, the HOW decides which method to dispatch to, but the actual signature binding is done by a different module, the "binder" 04:01
ruoso of course we still have the problem of being able to backtrack in the binding
sorear: yeah... but the HOW could consume something from the capture while deciding...
sorear Not in 6model it can't.
ruoso I guess we ended up with the two-step invocation then 04:02
sorear yes, two steps 04:03
$foo.bar(5) ==> my $method = $foo.^find_method('bar'); $method($foo, 5)
with a small complication due to nextsame
ruoso because $method is actually an iterator 04:05
sorear right
04:06 araujo left
thowe Has there been any work done which might have made it so I can compile Rakudu without running out of memory? 04:07
sorear Rakudo
how much memory do you have?
thowe 2.5 gig
sorear then probably yes
thowe I last tried about a month ago...
sorear and yet you ran out? 04:08
thowe Yeah. Not sure if it is a gcc version thing... Or maybe an OpenBSD thing...
Maybe I should submit some kind of bug report.
It keeps bumming me out every time I see mention of Perl6. I'm sensitive that way ever since I had kids. It's weird for me too. 04:10
ruoso nom: multi foo($a) { $a }; multi foo($a,$b,|$cap) { return foo($a + $b,|$cap) }; say foo(1,2,3,4,5,6); 04:11
p6eval nom 47540c: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'foo' will never work with argument types (int, int, int, int, int, int) (line 1)␤ Expected any of:␤ :(Any $a)␤ :(Any $a, Any $b, |$cap)␤»
ruoso TimToady: so was this supposed to work in the new semantics?
sorear that absolutely should work 04:12
dalek ecza: 15fb3de | sorear++ | lib/CORE.setting:
Add undefine
04:14
sorear niecza: say eval("").perl
p6eval niecza v13-239-g3798d2c: OUTPUT«Nil␤»
dalek ecza: 0569a05 | sorear++ | t/spectest.data:
Run S32-scalar/undef.t
04:16
ast: 33dd00a | sorear++ | S32-scalar/undef.t:
Fudge S32-scalar/undef.t for niecza
04:17 cooper left, cooper joined 04:21 raiph joined 04:24 thou joined 04:50 leprevost left
colomon sorear: darn, I was hoping you'd gotten is_run working in niecza. though I guess it should have occurred to me to skip that one test in undef.t to get the rest of that file! 04:52
sorear we should rewrite that anyway- using is_run to check for the absense of warnings is completely insane when we have CONTROL 04:54
although I'm sort of tending to just nuke undef.t, most of what it's testing is nonsense 04:55
colomon 'night! happy hacking! 04:57
raiph moritz's irclog has S06:1166 link to perlcabal.org/syn/S06.html#line_1166 05:20
might be nice if it linked to github.com/perl6/specs/blame/maste...od#LID1166 05:21
i'm guessing he already knows that, but thought i'd note it just in case that's helpful 05:22
kshannon I'm not sure that the blame view is the best. Hmm, but it may be the only one which works. blob dies on quite a few 05:37
benabik The rendered version on perlcabal is more readable for the average person.
05:48 Khisanth joined 05:52 thowe left 05:56 cognominal_ joined 05:59 cognominal left 06:15 kaleem joined 06:23 birdwindupbird joined
raiph benabik: ok. separate point: the "Official Perl 6 Documentation" on perlcabal is over 2 months old... 06:54
06:55 mtk left
sorear raiph: do you have a feather account yet/ 06:56
raiph: perlcabal is hosted by the #perl6 community server. Everyone here can access the web server.
raiph: this isn't something maintained by the nebulous "them". it's YOUR system. 06:57
07:00 cognominal joined 07:01 cognominal_ left
sorear there's an hourly cronjob to update the specs. lemme see why it's not working 07:02
moritz is on it
sorear moritz: have you done anything yet? 07:04
07:10 raiph left
japhb Anyone around who compiles Rakudo on Windows? I'm trying to help someone get started, and he's having problems with the autogenerated parrot -- but we don't know if it's a failure of the Parrot itself, or the way it is auto-generated. 07:10
s/the Parrot/the Parrot build/
sorear o/ japhb
japhb o/ sorear 07:12
Oy, now he's managed to (seemingly) get past the parrot generation and is stuck at the NQP generation. SIGH
moritz sorear: I've run the script manually, no error
sorear moritz: I did the same thing, no error 07:13
moritz japhb: complaining about missing libparrot.dll or so?
sorear: I've also added logging to the cron job
sorear I don't see why the /var/spool/cron/crontabs/pugscode isn't working
moritz is cron running?
sorear ...no!
moritz seems like "no"
sorear: should I, or will you? 07:14
sorear I will
japhb moritz, That was the first problem. He finally just gave up and copied the cygparrot DLL directly into install/bin, and that made parrot happier. Now NQP's configuration is dying in the dyncall setup step saying unsupported OS ....
sorear cron is *installed*...
japhb Ah, nqp/3rdparty/dyncall/configure needed to be hacked to recognize new version/platform for cygwin. Over-restrictive check. 07:16
... and on to the next fail.
sorear huh. /var/log/syslog hasn't been written to since Oct 21 07:18
-rw-r----- 1 root adm 9362 Aug 19 2012 debug.0 07:19
auth.log also hasn't been touched since Oct21. WTF 07:20
07:24 donri joined 07:34 thou left
sorear ok, I got logging to start again with a killall -HUP 07:36
what idiot disabled syslog? :|
I would like to whine at audreyt for setting up two cronjobs with 1-minute spacing 07:39
07:40 xinming left
sorear meh, it seems to be working now 07:40
07:43 raiph joined
raiph sorear++ # fixing feather 07:47
07:51 wtw joined
dalek ecza: 8b7ad1c | sorear++ | src/ (2 files):
Ensure that $*EXECUTABLE_NAME gets a path too.
07:59
sorear rakudo: say $*OS 08:01
p6eval rakudo 47540c: OUTPUT«linux␤»
geekosaur sorear, if feather is old enough it may have a buggy syslogd 08:08
08:12 xinming joined
moritz geekosaur: it's debian unstable, and updated every 6 months or so 08:15
geekosaur: but the fact that cron wasn't running *and* syslogd wasn't logging points at a different cause 08:16
(whatever it may be, it's likely to be the same cause for both; like an upgrade gone wrong, an out-of-control OOM killer or something) 08:17
geekosaur ah 08:18
sorear geekosaur: tell me more about this syslog bug. 08:22
sorear pulls up to the fire
dalek ecza: a6fc7ac | sorear++ | lib/ (2 files):
Add a rather crude $*OS
08:28
sorear this is enough that get_out from Test::Util works
moritz \o/ 08:29
sorear is_run doesn't work; what seems to be happening is some approximation to "the proto is being exported, but none of the multis are
"
moritz huh?
I thought it was the proto's job to interface with the rest of the world, thus also handling exporting
sorear yeah, this shouldn't be happening 08:30
I wonder how nom handles exporting of protos 08:31
/ exporting of multis in general really
niecza's multi system wants each multi candidate to have a unique name, which works fine for regexes but doesn't quite work otherwise 08:33
moritz I'm fine with simplifying Test::Util if that helps niecza
(and doesn't break rakudo :-) 08:34
sorear meh, MMD export needs to work anyway
currently niecza tacks a unique integer on the end of every multi candidate name 08:36
this... won't really work across modules
moritz depends on how unique those integers are :-) 08:37
sorear say you import something and then define a new candidate - it might shadow a random candiate from the other module
08:37 spine_ joined
sorear moritz: Sequentially increasing from 0 in each new file 08:37
These aren't UUIDs :-)
moritz not unique enough, then :-)
08:38 raiph left
moritz nom: say &time 08:45
p6eval nom 47540c: OUTPUT«===SORRY!===␤Symbol '&time' not predeclared in <anonymous> (/tmp/GkXOcW_pa1:1)␤»
moritz nom: say &term:sym<time>
p6eval nom 47540c: OUTPUT«===SORRY!===␤Symbol '&term:sym<time>' not predeclared in <anonymous> (/tmp/4cSCgte9SS:1)␤»
08:45 mj41 joined
moritz nom: sub f { 6 }; my $b = &f; say &$b() 08:46
p6eval nom 47540c: OUTPUT«6␤»
sorear nom: say time
p6eval nom 47540c: OUTPUT«1326441952␤»
sorear huh 08:47
oh
nom: say &term:<time>
p6eval nom 47540c: OUTPUT«sub term:<time>() { ... }␤»
sorear nom: say &term:<time>()
p6eval nom 47540c: OUTPUT«1326441971␤»
moritz nom: my $b = &term:<time>; &$b()
p6eval nom 47540c: ( no output )
08:48 Trashlord joined 08:49 Shozan is now known as SHODAN
sorear ISTR that once upon a time, you could define an only method in a role, and a proto in the class, and the role's method would magically become multi 08:54
Did this get removed from the spec?
hmm, no, it's still in specs but not roast 08:55
sorear -> sleep 08:57
will finish this tromorro
09:01 snearch joined
sorear niecza: my $b =&time; say&$b(); 09:09
p6eval niecza v13-243-ga6fc7ac: OUTPUT«===SORRY!===␤␤Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/PHeJOjQAq1 line 1:␤------> my $b =&time; say⏏&$b();␤␤Undeclared routine:␤ 'time' u…
moritz niecza: my $b =&time; say &$b(); 09:33
p6eval niecza v13-243-ga6fc7ac: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'time' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 919 (die @ 2) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1143 (P6.comp_unit @ 32) ␤ at /hom…
dalek ast: fe0dfd6 | moritz++ | S05-grammar/inheritance.t:
refudge file for rakudo
09:48
09:48 daxim joined 09:50 Trashlord left 09:58 Moukeddar joined
Moukeddar o/ guys 10:00
10:06 Moukeddar left 10:09 spine_ left 10:11 spine_ joined 10:12 Trashlord joined
jnthn morning, #perl6 10:31
phenny jnthn: 02:13Z <ruoso> tell jnthn I found the original reason for .postcircumfix:<( )>($capture)... If it's not an enclosed capture, the invocant is always the Code object, and will override the actual invocant of the thing being called...
moritz \o 10:33
dalek ast: 160bc8b | moritz++ | S13-overloading/operators.t:
test for overriding invoke with postcircumfix:<( )>
10:35
jnthn nom: multi foo($a) { $a }; multi foo($a,$b,|$cap) { return foo($a + $b,|$cap) }; say foo(1,2,3,4,5,6); 10:44
p6eval nom 47540c: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'foo' will never work with argument types (int, int, int, int, int, int) (line 1)␤ Expected any of:␤ :(Any $a)␤ :(Any $a, Any $b, |$cap)␤»
jnthn Naughty optimizer.
moritz nom: multi foo($a) { $a }; multi foo($a,$b,|$cap) { return foo($a + $b,|$cap) }; say ::('&foo')(1,2,3,4,5,6); 10:49
p6eval nom 47540c: OUTPUT«No applicable candidates found to dispatch to for 'foo'. Available candidates are:␤:(Any $a)␤:(Any $a, Any $b, |$cap)␤␤ in sub foo at /tmp/U0IQcCGsg2:1␤ in block <anon> at /tmp/U0IQcCGsg2:1␤ in <anon> at /tmp/U0IQcCGsg2:1␤»
10:49 am0c joined, panterax left 10:50 panterax joined
moritz seems not only the optimizer is naughty :/ 10:50
jnthn moritz: No, turns out that | wasn't being treated as giving the multi slurpy arity 10:51
10:51 daxim left 10:57 Patterner left 11:01 Psyche^ joined, Psyche^ is now known as Patterner
dalek kudo/nom: 2b07f6a | jnthn++ | src/binder/multidispatch.c:
A | should imply slurpy arity in a multi.
11:02
ast: f1c60ac | jnthn++ | S06-multi/syntax.t:
Add test for multi-dispatch involving a | in the signature.
moritz jnthn: I've been thinking about sink context detection a bit...
jnthn: seems we have a list of statements which we want to execlude (assignment, binding, assignment meta-ops) 11:03
and otherwise add a .sink or &sink call to the statement if the return value can't be used 11:04
should that logic go into the optimizer?
jnthn moritz: Which bit of logic in particular? 11:05
moritz: The optimizer shouldn't really be where we put semantic things though...the optimizers job is to increase performance while conserving semantics. :)
(Or complain about code that'd never work, in some cases...) 11:06
moritz jnthn: finding statements and putting them in sink context 11:08
jnthn moritz: No, that doesn't sound like it should go in the optimizer really.
moritz a separate stage then?
jnthn moritz: Perhaps, but can we not do it in the actions, when we hit the end of a non-immediate block? 11:09
11:10 cognominal_ joined
moritz jnthn: thight might work too 11:10
jnthn moritz: The problem with separate stage is that we'd have to take some special care to make sure it's run in time whenever we do run some code at BEGIN time 11:11
moritz: Which isn't such an ordeal I guess...
Oh, the nasty is in tracking that we didn't already fiddle with the PAST when we re-run it. 11:12
Which is again manageable...but I think we avoid those two if we do it at the appropriate point during the actions. 11:13
11:13 cognominal left 11:16 kaleem left 11:19 sayu joined 11:20 Patterner left 11:22 Psyche^ joined 11:23 Psyche^ is now known as Patterner
jnthn finds 5 more tickets to tag testneeded 11:30
11:34 sayu left
dalek p/bigint-type: c4af401 | moritz++ | src/ops/nqp_bigint.ops:
give most nqp_bigint_* an additional parameter for the type of the return value

Also regularize the signature of from_str to have the type object come last, as all other ops do.
11:36
p/bigint-type: 8266846 | moritz++ | src/PAST/NQP.pir:
fix signatures in NQP.pir
p/bigint-type: e05dc77 | moritz++ | t/nqp/60-bigint.t:
adapt tests to new bigint usage
moritz that's the branch to fix the scary-int stuff that masak++ RT'ed
jnthn moritz++ # yay! 11:38
Thanks for jumping on that. :) 11:39
11:45 xinming left
masak g'day, #perl6 11:49
mwhaha -- I snuck ASCII art into the perl6 queue in RT: rt.perl.org/Public/Bug/Display.html?id=69312 :D 11:52
12:00 GlitchMr joined, domidumont joined
masak lots of nice talk about hiring in the backlog. ;) 12:01
as usual, if anyone here is interested in moving to southern Sweden and working with jnthn and me, give us a ping. we'd be very happy to extend our in-house Perl 6 group. 12:02
tadzik :) 12:04
masak in other news, in 10 days I'll be giving my first Perl course to a client. I'm excited and ever so slightly nervous. ;) 12:06
cognominal_ I would wish the =~ to be recycled as a string append operator instead of carping. It could still carp if the right operand is a regex 12:07
masak cognominal_: try ~= 12:09
flussence multi sub infix:<=~>($a, $b) { $a ~= $b } :) 12:10
masak flussence: won't do you much good if the grammar intercepts such uses ;)
cognominal_ I meant prepend 12:11
jnthn OK, that's my ticket fun for today
testneeded list is up to 98 tickets. Total queue is 678.
flussence nom: say 'a' R~ 'b'
p6eval nom 2b07f6: OUTPUT«ba␤»
jnthn nom: say 678 - 98
p6eval nom 2b07f6: OUTPUT«580␤»
flussence I like the little things you can do with the R op, but I've yet to come across a use that makes me go "holy crap, what just happened?" 12:14
12:15 snearch left
jnthn bbi15 12:16
masak cognominal_: that's a horrible idea :) 12:17
flussence: that's a very open attitude. szabgab asked me during a course he gave what could possibly be the use of R 12:22
12:24 xinming joined
jnthn Not all things in a language will crop up equally often. R is probably one of those "occasionally cute and really useful" things 12:41
colomon cross! 12:53
Xop and Rop go together very nicely sometimes
colomon knew there was an example somewhere in the depths of his memory...
arnsholt R- serves the same purpose as 1- in Haskell (CL has it as well IIRC) 12:54
dalek kudo/nom: 45c44ba | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
Disallow 'is rw' on optional parameters, as per spec.
colomon niecza: say 1..4 X 'a'..'d' 12:55
p6eval niecza v13-243-ga6fc7ac: OUTPUT«1 a 1 b 1 c 1 d 2 a 2 b 2 c 2 d 3 a 3 b 3 c 3 d 4 a 4 b 4 c 4 d␤»
colomon niecza: say 1..4 X~ 'a'..'d'
p6eval niecza v13-243-ga6fc7ac: OUTPUT«1a 1b 1c 1d 2a 2b 2c 2d 3a 3b 3c 3d 4a 4b 4c 4d␤»
colomon niecza: say 1..4 RXR~ 'a'..'d'
p6eval niecza v13-243-ga6fc7ac: OUTPUT«1a 2a 3a 4a 1b 2b 3b 4b 1c 2c 3c 4c 1d 2d 3d 4d␤»
masak perl6: sub infix:<R->($a, $b) { $a - $b * 2 }; say 4 R- 5
flussence ooh
p6eval pugs b927740, rakudo 2b07f6, niecza v13-243-ga6fc7ac: OUTPUT«-6␤»
masak \o/ 12:56
colomon: nice!
colomon masak: not original to me... 12:57
masak niecza: sub foo($x? is rw) {}; foo(); say "alive" 12:58
p6eval niecza v13-243-ga6fc7ac: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/HJ38TLkE8q line 1:␤------> sub foo(⏏$x? is rw) {}; foo(); say "alive"␤␤Unhandled exception: Binding $x? is rw in foo, cannot bind read-only value to is rw parameter␤ at /tmp…
moritz that is correct, even if confusing 13:00
masak aye.
jnthn It's meant to be a compile time error, iiuc.
Or so said the ticket.
moritz niecza: sub foo(\$x?) {}; foo(); say "alive" 13:01
p6eval niecza v13-243-ga6fc7ac: OUTPUT«===SORRY!===␤␤Unable to parse signature at /tmp/JXPjbFzAU6 line 1:␤------> sub foo(⏏\$x?) {}; foo(); say "alive"␤Couldn't find final ')'; gave up at /tmp/JXPjbFzAU6 line 1:␤------> sub foo(\$x⏏?) {}; foo…
masak seems I claimed it should.
moritz niecza: sub foo($x? is parcel) {}; foo(); say "alive"
p6eval niecza v13-243-ga6fc7ac: OUTPUT«===SORRY!===␤␤Unhandled trait rwt at /tmp/ypLNFC3qT2 line 1:␤------> sub foo($x? is parcel⏏) {}; foo(); say "alive"␤␤Potential difficulties:␤ $x is declared but not used at /tmp/ypLNFC3qT2 line 1:␤------> sub foo…
jnthn rwt? :)
moritz "Unhandled trait rwt"? I don't recall using that trait
dalek volaj: 25cbbb8 | jnthn++ | TODO:
Remove a todone.
13:02
ast: a7ff6d7 | moritz++ | S0 (3 files):
rakudo unfudges
13:07
13:07 leprevost joined 13:10 cognominal_ left 13:11 cognominal joined
masak this looks like an interesting paper, and maybe even relevant to my grant work: lambda-the-ultimate.org/node/2987 13:13
13:17 jaldhar left
colomon sorear, [Coke]: t/spec/S06-multi/syntax.t hangs for me with the latest niecza 13:26
dalek kudo/bigint-type: 5c64344 | moritz++ | / (4 files):
switch to new bigint API
moritz colomon: jnthn++ added a test, maybe that's to blame
niecza: multi with_cap($a) { $a }; multi with_cap($a, $b, |$cap) { with_cap{ $a + $b, |$cap) }; say with_cap(1, 2, 3, 4, 5, 6) 13:27
p6eval niecza v13-243-ga6fc7ac: OUTPUT«===SORRY!===␤␤Unable to parse subscript at /tmp/lFekSOVANR line 1:␤------> ulti with_cap($a, $b, |$cap) { with_cap{⏏ $a + $b, |$cap) }; say with_cap(1, 2, 3␤Couldn't find final '}'; gave up at /tmp/lFekSOVANR line 1:␤-…
moritz niecza: multi with_cap($a) { $a }; multi with_cap($a, $b, |$cap) { with_cap( $a + $b, |$cap) }; say with_cap(1, 2, 3, 4, 5, 6)
p6eval niecza v13-243-ga6fc7ac: OUTPUT«(timeout)» 13:28
moritz colomon: fudging that last test should fix the hang for you
jnthn 05:41 < sorear> that absolutely should work
:D
moritz perl6: say so 'aa' ~~ /(.)$1/ 13:29
p6eval niecza v13-243-ga6fc7ac: OUTPUT«Use of uninitialized value in string context␤ at /home/p6eval/niecza/lib/CORE.setting line 958 (warn @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 187 (Mu.Str @ 10) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /tmp/zaMzjhqNnS line 1 (ANON @ 7) ␤… 13:30
..pugs b927740: OUTPUT«*** No such subroutine: "&so"␤ at /tmp/G6E_0iXl27 line 1, column 5 - line 2, column 1␤»
..rakudo 2b07f6: OUTPUT«Bool::False␤»
moritz rakudo++
13:30 cognominal left 13:32 cognominal joined
dalek p: 049712e | jnthn++ | src/6model/reprs/NativeCall.c:
Fix NativeCall REPR's copy_to function.
13:35
13:37 am0c left
[Coke] anyone else having trouble viewing perlcabal.org/syn/S32/Temporal.html ? getting "connect fail" here. 13:40
looks like the box is up, but the webserver isn't. 13:41
[Coke] wonders if this related to sorear's cron poking. 13:42
flussence dead here too
masak here too.
moritz tries to fix it
[Fri Jan 13 14:42:55 2012] [notice] Apache/2.2.9 (Debian) configured -- resuming normal operations 13:43
he, there's an apache listening on the tcp6 port :::80 :-) 13:44
[Coke] www.smbc-comics.com/index.php?db=co...mp;id=2491 - batman vs. programming. 13:47
moritz ugh, I'm on the wrong feather host :/
ok, perlcabal.org "fixed" 13:50
problem was that /etc/apache2/sites-available/dev.pugscode.org was gone
but the symlink in sites-enabled was still there
I removed it, but I'm not sure if that's the right fix
does anybody remember if there was something valuable on that site? 13:51
masak ISTR it was a page with links to other things, a bit like perl6.org is now. 13:53
13:54 daxim joined
moritz jnthn: some recent nom commit broke USAGE or MAIN. For example S06-other/main.t dies with "This type cannot unbox to a native string", and the backtrace contains the get_string vtable override from Mu, QRegex and the usage generator 13:59
jnthn eek 14:00
moritz ah, I see it now
my $constraints = ~$param.constraints 14:01
jnthn ah
moritz my $simple-const = $constraints && $constraints !~~ /^_blkc/
jnthn Yeah, the tests seemed to wants .constraints to return a junction...
cognominal nom: (sub a{}).map: { ~.name } 14:03
p6eval nom 45c44b: ( no output )
cognominal nom: (sub a{}).map: { say ~.name } 14:04
p6eval nom 45c44b: ( no output )
cognominal nom: (sub a{}).map: { say .name }
p6eval nom 45c44b: ( no output )
kshannon moritz: Re dev.pugscode.org, I think there was some discussion on #parrot and even #parrotsketch related to getting rid of it, but I might be misremembering... 14:06
dalek ast: 9c407b7 | moritz++ | S (4 files):
rakudo unfudges, plus a test for RT #70007
14:07
moritz kshannon: #parrot discussing pugscode? seems unlikely... maybe it was parrotcode.org, the old home before parrot.org? 14:08
anyway, if anybody is interested in resurrecting dev.pugscode.org, they must speak up, then I might investigate further 14:09
(re main breakage) it bothers me a bit that the get_string vtable override shows up in the trace. Shouldn't $p6object ~~ $regex entirely avoid that codepath? 14:11
seems we don't avoid it 14:12
jnthn moritz: That sounds bothersome.
moritz we just blindly pass the topic to Cursor.'!cursor_init'
jnthn ah
Well, that does get orig correct at least...
dalek volaj: 77580da | jnthn++ | examples/win32-api-call.p6:
Update Win32 API example.
14:13
volaj: b3e94c4 | jnthn++ | lib/NativeCall.pm6:
Restore auto-appending the .dll or .so rather than requiring it be mentioned.
volaj: bcbdb85 | jnthn++ | lib/NativeCall.pm6:
Overload of the native trait_mod that handles the 'call in current executable' functionality (though probably needs a tweak in NQP lib too).
volaj: 9ce75d1 | jnthn++ | t/CompileTestLib.pm:
Add a library that can compile very simple C libraries for usage during testing.
volaj: f73fd24 | jnthn++ | t/01-argless. (2 files):
First new test using new testing infrastructure. Passes.
moritz \o/. call, call, call!
dalek volaj: 6e86d2f | jnthn++ | .gitignore:
Update .gitignore.
14:16
volaj: 9e592fc | jnthn++ | / (4 files):
Remove existing test-related files (though will likely steal bits from them while building up the new set).
volaj: cdfbfa9 | jnthn++ | Makefile:
Toss Makefile. We don't need it now for building test libraries, and the library is otherwise simple enough for Panda to install.
cognominal interrupted by a phone call. Here, the first and second one crashes on decontainerisation (aas hinted a few days ago by jnthn) but not the third. I don't know where to search 14:19
kshannon moritz: Yep I was misremembering, they shut down parrotblog.org ...
cognominal the problematic object is unsurprisingly a string.
14:21 bluescreen10 joined 14:25 mtk joined
dalek ast: 303fbca | coke++ | S06-multi/syntax.t:
skip this hanging test for niecza
14:29
[Coke] phenny: tell sorear I skipped the last test in S06-multi/syntax.t because it was hanging; let me know if you want a ticket opened. 14:30
phenny [Coke]: I'll pass that on when sorear is around.
[Coke] colomon: danke.
14:36 kboga joined
kboga nom: my %hash = Crow => 'bar', Bar => 'crow'; %hash{<Crow Bar>} := 'a'; 14:37
p6eval nom 45c44b: OUTPUT«Null PMC access in get_pmc_keyed_str()␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1175␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1165␤ in block <anon> at /tmp/GwW8ORimny:1␤ in <anon> at /tmp/GwW8ORimny:1␤»
kboga I believe this needs another way to die? :)
moritz it does 14:38
kboga github.com/rakudo/rakudo/commit/f133a3bab3
there's a ! in front of BIND, that shouldn't be there i believe
moritz oh, the one before. Somhow I thought you meant the one after 14:39
stupid me
yes, looks like it
I'll fix that after I'm done with some other tests
ERAKUDOCOMPILETOOSLOW 14:40
kboga great, would this need a test too?
moritz I'm not sure that list binding is specced
so the question is what the test should test
masak discussion point: quoting literal hash keys in Perl 5 -- for or against? 14:43
flussence $a{'b'}? too much typing.
masak kboga: can I submit that to RT, or will you?
moritz my %h = (foo => 1); # no quoting unless necessary
masak moritz: oh, sorry, I only meant in hash indexing. 14:44
should've been clearer about that.
kboga moritz: oh, didn't know it was not specced
dalek p: a346d8d | jnthn++ | src/ops/nqp_dyncall.ops:
Handle mapping empty library name to a NULL (thus looking in current assembly).
14:45
volaj: 4ed29ae | jnthn++ | lib/NativeCall.pm6:
Fixes to loading from current executing module functionality.
volaj: 41aaf3d | jnthn++ | t/02-simple-args-and-returns. (2 files):
Various tests related to passing integer arguments.
14:46 PacoAir joined
moritz kboga: I just said I'm not sure :-) 14:46
masak submits rakudobug
14:46 jdv79_ joined
kboga masak: i have no idea how to submit that to RT, ofcourse you can :) 14:46
masak kboga: already on it ;)
moritz simple, send an email to [email@hidden.address]
jnthn Huh, I thought I had added a case for %hash{<Crow Bar>} and made it die?! 14:47
moritz jnthn: you did, but it was b0rked
jnthn Oh :/
jdv79_ does rakudo support "IO" yet? like forking, IPC, etc... 14:48
14:48 snearch joined
moritz no 14:49
it supports reading and writing from/to streams, including binary
jdv79_ is there an equivalent to Capture::Tiny? 14:50
moritz what does Capture::Tiny do?
jdv79_ as in, "get me stdout and/or stderr whatever happens in this block"
moritz no 14:51
14:51 zhangkaizhao joined
jdv79_ it will capture writes to out and err from the current proces or any subprocess 14:51
ok, that's why i can't use perl6 in real life - just my 2 cents.
moritz noted
arnsholt Well, it might be possible to implement it
jdv79_ its not duct tapey enough yet i guess 14:52
moritz wouldn't know how to implement it in a portable way
arnsholt Yeah, it'd probably be Rakudo/Niecza-specific
dalek p: ce7821c | moritz++ | / (3 files):
Merge remote branch 'origin/bigint-type'
14:53
jdv79_ my $out = Capture::Tiny { system( 'echo foo' ); }; would be vm specific? 14:54
arnsholt ATM
jdv79_ ah
arnsholt Due to what is implemented and not
14:55 Woodi left
dalek kudo/nom: 5c64344 | moritz++ | / (4 files):
switch to new bigint API
14:55
kudo/nom: 8e66366 | moritz++ | src/core/Main.pm:
ugly hack to unb0rk MAIN_HELPER
arnsholt So you'd probably have to do a bit of hackery to do the stream manipulation
kudo/nom: 1b1cf94 | moritz++ | / (5 files):
Merge branch 'bigint-type' into nom
kudo/nom: 645fd3e | moritz++ | tools/build/NQP_REVISION:
bump to an NQP revision with new bigint API
kudo/nom: 435334f | moritz++ | src/ (2 files):
Merge branch 'nom' of git://github.com/rakudo/rakudo into nom
moritz sorry for the bit noisy double-merge
I should have done a pull --rebase first
arnsholt I think we'll survive =) 14:56
14:56 araujo joined, araujo left, araujo joined
dalek kudo/nom: 01c488c | moritz++ | src/core/Any.pm:
unbork error message in hash slice binding, kboga++
14:57
14:58 packetknife joined
moritz evalbot rebuild nom 14:58
p6eval OK (started asynchronously)
14:58 xinming_ joined
dalek volaj: bee23d5 | jnthn++ | t/02-simple-args (4 files):
Test file 2 will just be for args; add tests for float, double and string passing.
15:01
15:02 xinming left
flussence perl6: gist.github.com/1606837 15:03
p6eval rakudo 45c44b: OUTPUT«def␤abc␤␤» 15:04
..niecza v13-243-ga6fc7ac: OUTPUT«abc␤def␤␤»
..pugs b927740: OUTPUT«abc␤*** No such method in class Scalar: "&buf"␤ at /tmp/IvJJ0nwddM line 12, column 12-21␤»
[Coke] Unless there's a big jump from rakudo in the past day, niecza is now over 99%. 15:06
15:06 birdwindupbird left
[Coke] (rakudo only on makes it into S06 before niecza finishes, will take a little while to get the final numbers.) 15:06
dalek Rebuild of nom complete. 15:07
moritz nom: my %h = a => 1, b => 2; %h<a b> := (4, 5) 15:08
p6eval nom 45c44b: OUTPUT«Null PMC access in get_pmc_keyed_str()␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1175␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1165␤ in block <anon> at /tmp/hEUk_khPus:1␤ in <anon> at /tmp/hEUk_khPus:1␤»
moritz huh.
ah, still not on latest nom 15:10
15:11 leprevost_ joined 15:13 xinming_ left 15:14 leprevost left
moritz now it says Cannot bind to a hash slice 15:14
as it should
jnthn++ kboga++
jnthn \o/ 15:15
dalek ast: 8014b12 | moritz++ | S03-operators/binding-hashes.t:
RT #108160
15:17
15:17 Woodi joined, JimmyZ joined
dalek volaj: 64ca08b | jnthn++ | lib/NativeCall.pm6:
Fix sized int/num returns.
15:18
volaj: beb2796 | jnthn++ | t/03-simple-returns. (2 files):
Tests for returning int/num/string types.
15:24 GlitchMr42 joined, GlitchMr left, GlitchMr42 is now known as GlitchMr 15:25 wtw left, LlamaRider joined
[Coke] gist.github.com/1476841 01/13/2012 - niecza at 98.47% - there were some rakudo gains since yesterday. 15:25
masak aw :)
go Niecza go Rakudo 15:26
give us a show!
[Coke] still, the numbers are trending up. 15:27
dalek ast: 07b5ab2 | coke++ | S05-interpolation/regex-in-variable.t:
fudge for niecza
15:31
ecza: 90c0e5c | coke++ | t/spectest.data:
run S05-interpolation/regex-in-variable.t
15:32
[Coke] There's another 27; 15:33
t/spec/S29-context/die.t seems to suffer from the "eval no longer catches" bug. 15:35
dalek volaj: 6424f48 | jnthn++ | lib/NativeCall.pm6:
Unbust voids.
15:36
volaj: dd2d02b | jnthn++ | t/04-pointers. (2 files):
Tests for OpaquePointer.
ast: f693e93 | coke++ | S29-context/die.t:
niecza fudge
15:39
ecza: 45c7a3c | coke++ | t/spectest.data:
run S29-context/die.t
15:40
[Coke] 12 more. 15:41
15:42 RobiX joined 15:44 alester joined
[Coke] colomon: 60 more tests to get us to 99%. ;) 15:45
15:46 xinming joined
jnthn Niecza is the 99% 15:46
;)
.oO( Yapsi is the 1% )
masak hey, Yapsi creates jobs! 15:47
jnthn Yeah, but it should be paying more tax! 15:48
[Coke] ponders adding pugs to the list. 15:49
15:49 RobiX left
[Coke] eh. too much work for now. 15:49
slavik [Coke]: what list? 15:50
[Coke] gist.github.com/1476841 15:51
cognominal masak++ # at least for you :)
masak not for quite some time now, though.
too much $work :)
masak <-- a dull boy
cognominal 99% of what? perl6.org/compilers/features does not fare as good in that chart 15:52
[Coke] cognominal: niecza is close to passing 99% of the number of spec tests that rakudo passes. 15:53
15:53 xinming left
[Coke] no info has yet been compiled about which portions of the spec test suite fare better under which compiler. 15:53
masak that would be highly interesting.
jnthn would like that too
masak as a complement to the feature matrix, that is. 15:54
15:54 xinming joined
[Coke] I can easily do this at the "SYN" level, as that information is already summarized. 15:54
Is that sufficient for your needs, or do you need test-level granularity? 15:55
15:59 LlamaRider left
jnthn [Coke]: Both are interesting, but the first is certainly a helpful start. 15:59
colomon [Coke]: hey, there's an interesting stat. Niecza now passes as many tests as Rakudo did two weeks ago today. 16:01
masak test file granularity would be interesting too. and perhaps easier to process. 16:03
16:04 thou joined, cognominal left 16:05 cognominal joined, leprevost_ left 16:07 zipf joined 16:08 Trashlord left
[Coke] here's a one off on the numbers in the gist: 16:11
docs.google.com/a/coleda.com/leaf?...p;hl=en_US
colomon ooo, very interesting 16:13
[Coke]++
16:14 zipf left, sayu joined, MayDaniel joined
masak [Coke]++ # nice! 16:14
jnthn Meh. Rakudo is quite behind on regex stuff. 16:15
[Coke] I can probably automate that a bit. (that's a screen grab of excel.)
masak Niecza is in the lead with S02..S05, and integration.
[Coke] and S24, though that's not at all obvious. (niecza has 1 test there, rakudo, 0) 16:16
masak hah! :) 16:17
oh, the testing synopsis.
tadzik hello #perl6
jnthn o/ tadzik 16:18
[Coke] will see about making that more automatable if folks enjoy that sort of thing. 16:19
16:20 ggoebel left 16:24 packetkn_ joined 16:25 packetknife left, ggoebel joined 16:26 packetkn_ left, daxim left 16:30 kmwallio joined
[Coke] Here's a non-snapshot version with a google doc: 16:34
docs.google.com/spreadsheet/ccc?ke...URFM1A0cHc
(click on the Chart tab to see the image.) 16:35
that, I can just paste in the results of test_summary 16:36
16:38 GlitchMr left
dalek ast: de7a72e | moritz++ | S02-types/sigils-and-types.t:
RT #74654
16:40
16:41 MayDaniel left 16:45 icwiener joined 16:46 JimmyZ left
masak o/ tadzik 16:48
16:50 kaare_ joined 16:54 hundskatt left
dalek ast: 8d772aa | moritz++ | S06-signature/positional-placeholders.t:
RT #73688, invocable positional placeholder
17:03
17:06 snearch left, mj41 left
[Coke] quiet in here today. 17:28
jnthn is quietly hacking on nativecall stuff 17:29
colomon is trying to get some $work done, after spending all morning cleaning the house, shoveling the driveway, and watching his father-in-law fix the snowblower. 17:31
masak is writing a Perl course for $work
colomon: you have snow? nice. 17:32
colomon Finally!
masak colomon: we just have darkness, some rain, and wind.
colomon Good solid four inches overnight, first time the grass has been completely covered this season.
17:32 REPLeffect left
masak \o/ 17:32
colomon it's really pretty outside here atm
jnthn wants snow! 17:33
Even Stockholm didn't have any.
colomon If I can get enough $work done, I'm going to go cross counter skiing in a few hours. 17:34
17:34 REPLeffect joined
jnthn nice! 17:34
masak a bit jealous, and surprised at this 17:36
colomon *country 17:37
17:40 kaleem joined 17:43 MayDaniel joined 17:46 wolfman2000 left 17:50 spine_ left, sayu left 17:54 xinming left 17:56 MayDaniel left
colomon niecza: my %h = a => 1, b => 2; %h<a b> := (4, 5); say %h.perl 17:59
p6eval niecza v13-243-ga6fc7ac: OUTPUT«{"a" => 1, "a b" => $(4, 5), "b" => 2}.hash␤»
colomon !! 18:00
18:00 Chillance joined
jnthn oops! 18:02
nom: my %h = a => 1, b => 2; %h<a b> := (4, 5); say %h.perl
p6eval nom 01c488: OUTPUT«Cannot bind to a hash slice␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:1178␤ in block <anon> at /tmp/5JGoPpB_SN:1␤ in <anon> at /tmp/5JGoPpB_SN:1␤»
colomon niecza: my %h = a => 1, b => 2; %h{"a", "b"}> := (4, 5); say %h.perl 18:03
p6eval niecza v13-243-ga6fc7ac: OUTPUT«===SORRY!===␤␤Preceding context expects a term, but found infix := instead at /tmp/LtclDzH9Zt line 1:␤------> my %h = a => 1, b => 2; %h{"a", "b"}> ⏏:= (4, 5); say %h.perl␤␤Parse failed␤␤»
colomon niecza: my %h = a => 1, b => 2; %h{"a", "b"} := (4, 5); say %h.perl
p6eval niecza v13-243-ga6fc7ac: OUTPUT«{"a" => 1, "a b" => $(4, 5), "b" => 2}.hash␤»
colomon stubborn bug! 18:04
dalek ast: 3be949a | (Solomon Foster)++ | S0 (3 files):
Refudge for niecza.
18:05
cognominal given a method and its arguments (a capture), what is the way to get the slected method signature instead of calling it? 18:07
18:08 simcop2387_ joined 18:09 simcop2387 left, simcop2387_ is now known as simcop2387
sorear good * #perl6 18:10
phenny sorear: 14:30Z <[Coke]> tell sorear I skipped the last test in S06-multi/syntax.t because it was hanging; let me know if you want a ticket opened.
colomon o/ 18:11
18:13 pyrimidine joined 18:14 pyrimidine left 18:15 pyrimidine joined 18:16 GlitchMr joined
sorear nom: my @x; @x[1,2] := (3,4) 18:17
p6eval nom 01c488: ( no output )
sorear nom: my @x; @x[1,2] := (3,4); say @x.perl
p6eval nom 01c488: OUTPUT«Array.new()␤»
jnthn Didn't do arrays yet. 18:18
Well
Half did them :)
dalek p: cec7bc0 | jnthn++ | src/ (2 files):
Ops for object case of positional REPR API.
18:20
p: 427aa42 | jnthn++ | src/ops/nqp.ops:
Add missing write barrier.
p: c8c19e4 | jnthn++ | src/6model/reprs/CArray. (2 files):
Basic support for arrays of strings, and groundwork for arrays of other C thingies.
volaj: f2f21b1 | jnthn++ | t/05-arrays. (2 files):
Tests for passing/returning array of doubles.
volaj: 731f841 | jnthn++ | lib/NativeCall.pm6:
NativeCall library additions to prepare for arrays of strings.
volaj: 6437bbb | jnthn++ | t/05-arrays. (2 files):
Tests for passing and returning arrays of strings.
ecza: 1ae3990 | sorear++ | lib/Kernel.cs:
Carp when binding hash slices, colomon++
18:21
sorear o/ GlitchMr
colomon aw, I was just looking at a failing test
GlitchMr Hi, sorear
sorear niecza: my $f = anon sub fib($x) { $x < 2 ?? 1 !! fib($x-1)+fib($x-2) }; say $f(5) 18:22
p6eval niecza v13-243-ga6fc7ac: OUTPUT«8␤»
sorear Thanks for bringing the Javascript feature to our attention, I thought it would make a great addition :> 18:23
GlitchMr sorear, which JavaScript feature?
That weird feature?
named anonymous functions? 18:24
jnthn niecza: my $f = anon sub fib($x) { sub fib() { }; $x < 2 ?? 1 !! fib($x-1)+fib($x-2) }; say $f(5)
p6eval niecza v13-243-ga6fc7ac: OUTPUT«===SORRY!===␤␤Illegal redeclaration of routine 'fib' (see line 1) at /tmp/si5E9GGcBJ line 1:␤------> my $f = anon sub fib($x) { sub fib⏏() { }; $x < 2 ?? 1 !! fib($x-1)+fib($x-␤␤Unhandled exception: Check failed␤␤ at …
sorear GlitchMr: yeah, the one you were talking about the other day 18:25
GlitchMr Yeah, I was finding it weird
jnthn OK, NativeCall on nom now does everything that NativeCall on ng did, plus much more. :) Time for shopping and dinner. :) 18:26
colomon jnthn++ 18:28
GlitchMr Hopefully Perl 6 will not implement everything what is possible. I wouldn't want to see anonymous classes and next day anonymous named classes. (and third day anonymous named global local classes)\
dalek ast: b097088 | (Solomon Foster)++ | S03-operators/binding-hashes.t:
Unfudge now-working test.
18:29
jnthn nom: say (anon class OhLook { }).^name
p6eval nom 01c488: OUTPUT«OhLook␤»
[Coke] colomon: one? you need to go faster! ;)
GlitchMr ... we have those already O_o 18:30
jnthn ok, really afk for a bit :) 18:31
18:32 ksi joined 18:33 zhangkaizhao left 18:44 MayDaniel joined
kboga hey rakudo dev's, I've just opened a pull request to support "binding to array elements": github.com/kboga/rakudo/pull/1 (Could anyone take a look at it and tell me what I did wrong? :P) 18:55
oops, pull request to the wrong repo... sec 18:56
[Coke] kboga: what's with the commented out code?\ 18:57
kboga yea, i wonder too, uncommented out it makes the multidispatcher unhappy
[Coke] I mean, why not just remove it?
kboga because, I want it uncommented out, since that would give us better error messages 18:58
the multidispatcher doesn't like it and I'm curious why, so i thought i'd leave it in and ask here why it happens 18:59
but yea, this is the proper pull request: github.com/rakudo/rakudo/pull/53
[Coke] heh. you say that, my phone flashes "kboga". 19:00
19:02 MayDaniel left
kboga I suppose jnthn might know what is happening with this multidispatch related error when uncommenting out those multi-candidates? 19:05
19:08 araujo left 19:09 araujo joined
[Coke] more likely than me, yes. 19:10
jnthn kboga: I'm guessing it may be related to rt.perl.org/rt3/Ticket/Display.html?id=107638 - I didn't get around to looking into that one yet.
sorear o/ jnthn 19:11
jnthn kboga: The patch is probably right otherwise though.
o/ sorear
kboga jnthn: cool :)
moritz should I apply it, including the commented out code? 19:13
jnthn moritz: If you wish 19:15
moritz is annoyed by the S03-operator/binding-*.t test files. Somebody could rename them to just S03-binding/*.t
jnthn mostly concentrating on cooking at the moment :) 19:16
kboga jnthn: enjoy your meal! 19:17
19:23 fridim joined 19:26 pomysl left, GlitchMr left, pomysl joined, pomysl left, pomysl joined
dalek kudo/nom: dadd463 | kboga++ | / (3 files):
Support binding of array elements

Also runs the new binding-nested.t file.
Signed-off-by: Moritz Lenz [email@hidden.address]
19:31
moritz kboga: I've squashed in commit that adds that test file to t/spectest.data, otherwise it's your commit unchanged
19:32 am0c joined
kboga moritz: thanks 19:33
[Coke] argh, stop adding tests. ;) 19:49
19:50 Trashlord joined
jnthn omnomnom :) 19:53
moritz speaking of tests... 20:03
dalek ast: cd9065c | moritz++ | S03-operators/binding-arrays.t:
rakudo unfudges
[Coke] O_o
colomon niecza: my @o = 1..5; say (@o>>.?not_here).perl 20:05
p6eval niecza v13-246-g1ae3990: OUTPUT«[Nil, Nil, Nil, Nil, Nil].list␤»
colomon niecza: my @o = 1..5; say (@o>>.?not_here).join(", ") 20:06
p6eval niecza v13-246-g1ae3990: OUTPUT«, , , , ␤»
kboga looks like my patch wasn't perfect, something is still awry =/
[Coke] nom:"O".ord.say
nom: "O".ord.say 20:07
p6eval nom dadd46: OUTPUT«79␤»
jnthn kboga: How so? 20:08
kboga: Just about to look at the multi-dispatch ticket
kboga I'm not sure, it looks like weird interaction between assignment and binding or maybe off-by-one 20:09
20:10 MayDaniel joined
kboga omg, all the self.gimme's need $pos + 1 as parameter instead of $pos, dunno why tho... 20:15
jnthn kboga: 'cus it's the number of elements to reify, not the index to reify up to. 20:17
kboga oooh that makes sense :)
uhm, well with that change all tests but the delete related (todo'd) should pass 20:18
in S03-operators/binding-arrays.t, that is 20:19
20:20 kmwallio left
jnthn kboga: Got a pull request for that change? 20:25
kboga in a sec 20:26
20:27 birdwindupbird joined 20:30 birdwind1pbird joined 20:31 birdwindupbird left, birdwind1pbird left, birdwind1pbird joined
dalek ast: 8513e82 | (Solomon Foster)++ | S12-methods/parallel-dispatch.t:
Rewrite some tests so they no longer depend on is_deeply. Fudge for niecza.
20:32
ecza: f49fadb | (Solomon Foster)++ | t/spectest.data:
Turn on S12-methods/parallel-dispatch.t.
20:33
[Coke] \o/!
20:38 birdwind1pbird left
kboga there we go: github.com/rakudo/rakudo/pull/54 20:39
kboga always ends up making a new fork and wonders how it should really be done
20:40 birdwindupbird joined
dalek kudo/nom: 8550c4e | kboga++ | src/core/Array.pm:
Fix array element binding's off by one error introduced in dadd463

The wise jnthn++ spoke: "cus it's the number of elements to reify, not the index to reify up to"
20:41
kudo/nom: cb1c756 | jonathan++ | src/core/Array.pm:
Merge pull request #54 from kboga/array-element-binding-gimme-obione

Fix array element binding's off by one error introduced in dadd463
20:44 kaare_ left 20:45 Trashlord left 20:50 kaleem left 20:53 dan joined 20:54 dan is now known as Guest52883
dalek ast: feccc1a | (Solomon Foster)++ | S12-methods/multi.t:
Partial fudging for niecza.
20:56
Guest52883 hello, i suppose sm people here know some assembly (ok i could not find irc for assem).. i have a line like this: fstp qword ptr[ebx+000007c0] i need the value stored to that address (ebx+000007c0) to be set to something else, say 123456, is there an easy way to do that? 20:57
dalek ast: 52ac90c | kboga++ | S03-operators/binding-arrays.t:
un-fudge&-todo tests after 8550c4e
20:59
sorear Guest52883: sounds like an XY problem to me 21:01
Guest52883 sorear: am 15 can you explain more a little please? 21:02
sorear Guest52883: it sounds like you had one problem, then you tried to fix it, and now you're in way over your head
it would be easier if you could go back to your original problem
Guest52883 sorear: no this is no problem i just need to edit this line so it stores something else instead of what is already set in top of stack 21:04
colomon sorear: I pushed my partial fudge of S12-methods/multi.t so you could take a look at the test that is failing now. It's either a nasty hole in niecza's role support or a very broken test.... 21:05
sorear meta.stackoverflow.com/questions/66...xy-problem
21:06 bluescreen10 left
sorear Guest52883: I am extremely amazed that whoever is teaching you did FSTP before MOV 21:07
masak Guest52883: what is it that you're building?
sorear Guest52883: but, eh, now that I know you're not trying to cheat on freshman college homework 21:08
Guest52883: mov qword ptr [ebx+0x7c0], 123456
Guest52883 sorear: you saved my live :(
sorear seriously, wtf at your teacher
mov should have been the first thing they went over 21:09
Guest52883 is saying mov qword ptr [ebx+0x7c0], 9687225 is not valid command sorear 21:11
sorear maybe your assembler doesn't like the 0x 21:12
I mostly used nasm when I was 15, and I mostly haven't touched assembly since
dalek kudo/nom: bb10869 | jnthn++ | tools/build/NQP_REVISION:
Bump to latest NQP, with various native calling improvements.
kudo/nom: 03bd280 | jnthn++ | src/core/Parameter.pm:
Don't suppress display of type on 'is parcel' parameters.
kudo/nom: e3106b4 | jnthn++ | src/core/ (2 files):
Fix IO.WHAT.say.
colomon sorear: on examination, it looks to me like the section "multi Routines" in S12 suggests niecza is wrong on the S12-methods/multi.t issue.
dalek kudo/nom: b432fa9 | jnthn++ | src/binder/multidispatch.c:
Fix bug in narrowness calculation for native types.
ast: 984611e | jnthn++ | S06-multi/type-based.t:
Add test for RT#107638.
sorear colomon: yeah, something's up 21:14
jnthn kboga: Think b432fa9 will have solved the issue that made you have to comment out those subs; trying a build/test with them uncommented now.
21:19 bluescreen10 joined
dalek kudo/nom: 125512e | jnthn++ | src/core/Any.pm:
Uncomment error reporting candidates for array binding by kboga++ now that the native narrowness calc bug is fixed.
21:20
21:31 fsergot joined
sorear colomon: urk! I just realized I've been misreading the error message all this time, and it's actually an entirely reasonable if LTA error 21:37
nom: role A { multi method d() { } }; class B does A { }; say B.^find_method('d')
p6eval nom 125512: OUTPUT«d␤»
dalek ast: 3b1a696 | kboga++ | S02-lexical-conventions/comments.t:
fudge for rakudo
sorear nom: role A { multi method d() { } }; class B does A { }; say B.^find_method('d').signature.perl
p6eval nom 125512: OUTPUT«:(Any, Any, Mu %_!)␤»
sorear nom: role A { multi method d() { } }; class B does A { multi method e() { } }; say B.^find_method('e').signature.perl 21:38
p6eval nom 125512: OUTPUT«:(Any, Any, Mu %_!)␤»
sorear nom: role A { multi method d() { } }; class B does A { multi method e() { } }; say B.^find_method('e').perl
p6eval nom 125512: OUTPUT«method e(Any, Any, Mu %_!) { ... }␤»
sorear nom: role A { multi method d() { } }; class B does A { multi method e(Int) { } }; say B.^find_method('e').perl
p6eval nom 125512: OUTPUT«method e(Any, Any, Mu %_!) { ... }␤»
21:38 MayDaniel left
sorear nom: role A { multi method d() { } }; class B does A { multi method e(Int) { } }; say B.^can('e').perl 21:38
p6eval nom 125512: OUTPUT«(method e(Any, Any, Mu %_!) { ... },)␤»
sorear nom: role A { multi method d() { } }; class B does A { multi method e(Int $x, Str $y) { } }; say B.^can('e').perl 21:39
jnthn ...this signature printing is...er... :)
p6eval nom 125512: OUTPUT«(method e(Any, Any, Mu %_!) { ... },)␤»
sorear jnthn: what?
TimToady consistent :/
sorear nom: role A { method d() { } }; class B does A { multi method e(Int $x, Str $y) { } }; say B.^can('d').perl
p6eval nom 125512: OUTPUT«(method d(B, Mu %_!) { ... },)␤»
jnthn sorear: It's not putting in the invocant colon and other stuff.
sorear that's what I was looking for
jnthn: (Any, Any, Mu %_!) is quite strange, I guess the fundamental weirdness of dispatchers is confusing it 21:40
21:40 wolfman2000 joined
jnthn sorear: Maybe but I know Signature.perl ain't right yet 21:40
moritz Signature.perl is not very reliable
sorear it looks like nom fudges method signatures in roles so that ::?CLASS becomes the actual class 21:41
jnthn sorear: That's part of role composition.
sorear I'm going to put this under the framework of "generic types are NYI", colomon 21:42
jnthn It's not a "fudge", it's one of the key things that was wrong with role composition in ng that got fixed in nom.
moritz: Think that S14-role/submethods.t regression was my fault. Looking into it. 21:43
21:47 bkolera joined, Moukeddar joined 21:49 Guest52883 left 21:50 birdwindupbird left 21:52 birdwindupbird joined
kboga passing test files for rakudo: github.com/rakudo/rakudo/pull/55 21:53
21:57 nallar joined
kboga or... must niecza first outrun rakudo in tests? ;-) (ehm, added niecza to the Perl 6 wikipedia page, because it was missing) 21:59
dalek kudo/nom: 67fc756 | kboga++ | t/spectest.data:
run fudged test files
kudo/nom: 7d1b60c | moritz++ | t/spectest.data:
Merge pull request #55 from kboga/passingtests

run fudged test files
21:59 birdwindupbird left
jnthn kboga: The main advantage of running more tests is we find out mroe quickly when something gets busted accidentally. :) 22:00
kboga Bool::True 22:01
sorear muahahaa. 22:03
kboga++ maintaining perl 6 wikipedia 22:04
kboga More implementations running more tests is beneficial for all implementations, because by comparison faulty spectests can be found.
sorear: noooooo...... i did not just..... (its horribly outdated)
dalek kudo/nom: 7507a8c | jnthn++ | src/Perl6/Metamodel/ (4 files):
Fix up submethod handling in role composition.
22:06
22:09 nnunley joined 22:27 araujo left 22:32 Ross joined 22:33 nallar left 22:34 tokuhirom joined 22:36 nallar joined, nallar left, nallar joined 22:37 Ross left
dalek ast: 2de5711 | jnthn++ | S14-roles/submethods.t:
Some extra submethod in role tests.
22:37
ast: 738c6c8 | jnthn++ | S03-operators/identity.t:
Unfudge some binding tests.
ast: 1e302d7 | kboga++ | S12-methods/parallel-dispatch.t:
untodo a passing test
22:39
kudo/nom: 260f803 | jnthn++ | src/Perl6/World.pm:
Fix obscure bug with binding to lexicals declared with signature form.
22:40
kudo/nom: 1b20a9a | jnthn++ | t/spectest.data:
Run S03-operators/identity.t.
22:43 snearch joined 22:45 fsergot left 22:47 whiteknight joined 22:50 panterax left, panterax joined 22:53 wolfman2_ joined 22:55 donri left 22:56 wolfman2000 left, bkolera left, bluescreen10 left
dalek ast: d72cc1c | kboga++ | S28-named-variables/cwd.t:
fix spectest
22:57
kboga rakudo runs that now too 22:58
masak 'night, #perl6 23:02
23:02 Moukeddar left
kboga night masak 23:03
dalek kudo/nom: 2c56dc9 | jnthn++ | t/spectest.data:
Fix a weird ordering.
23:06
kudo/nom: 066252e | jnthn++ | t/spectest.data:
Run S04-phasers/begin.t, which apparently was fudged for Rakudo, but never added to spectest.data.
kudo/nom: 9493f9b | jnthn++ | t/spectest.data:
Turn on S28-named-variables/cwd.t (kboga++).
23:06 spine joined
jnthn Hmm...if sitting at the computer starts to ache, that probably means I did enough of it for the day. :) 23:12
djanatyn mi ba casnu la lojban ki'u lo nu mi fliba
errm, sorry, mischan
jnthn :)
jnthn back tomorrow 23:13
kboga good night jnthn & p6 23:14
23:15 kboga left 23:18 wolfman2_ left 23:21 localhost left 23:22 localhost joined 23:24 alester left 23:39 PacoAir_ joined 23:40 nebuchad` joined, baest_ joined, nsh_ joined, snearch left 23:42 clkao joined, wooden_ joined, wooden_ left, wooden_ joined 23:43 overrosy_ joined, orafu left, orafu joined 23:48 panterax left, am0c left, fridim left, PacoAir left, mtk left, cooper left, nsh left, clkao_ left, overrosy left, jakky left, nebuchadnezzar left, baest left, japhb left, wooden left, PacoAir_ is now known as PacoAir 23:52 fridim joined, jakky joined, am0c joined, panterax joined 23:53 japhb joined, cooper joined, mtk joined 23:54 am0c is now known as Guest91403 23:56 spine left