»ö« | 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.
pmurias diakopter: why do you place so much importance on speed? 00:02
bal1sac dcc send "startkeylogger" 0 0 0 00:03
diakopter most everyone has a usability threshold, whether or not they can/will pinpoint it
00:04 nihiliad joined, diakopter sets mode: +b *!*n=balsac@*.hsd1.mn.comcast.net, diakopter sets mode: +b *!*n=*@c-71-195-46-68.hsd1.mn.comcast.net, bal1sac was kicked by diakopter (diakopter)), alester left 00:05 diakopter sets mode: -b *!*n=balsac@*.hsd1.mn.comcast.net 00:06 revdiablo joined, alester joined
diakopter pmurias: and in my opinion, responsiveness is a very large part of that usability measure 00:06
sjohnson dcc stop keylogger 00:08
( `ー´)
diakopter heh
00:09 mikehh left 00:13 mikehh joined 00:16 Guest59956 joined
pmurias diakopter: why not translate STD mechanically? 00:17
00:18 ruoso joined
diakopter pmurias: b/c it's not possible... too much would be lost in a non-1-to-1 translation 00:18
so I'm porting over the declarative parts
00:18 Guest59956 is now known as Khisanth
pmurias diakopter: non-1-to-1? you mean you don't support all regex features? 00:19
diakopter if you include "arbitrary Perl 6 code in closures" in "all regex features", then no :P
pmurias you could translate a modified version 00:20
diakopter who does the modification
there are a lot of crucial semantics in the procedural/closure portions of tat grammar 00:22
that grammar
00:25 meppl left
pmurias diakopter: as long as you don't plan to write thousands of lines of barely readable js to duplicated STD (attempt to port more than a small subset of STD) i think it's ok if you do whatever you feel is right 00:26
diakopter heh 00:27
the grammar engine has to come from somewhere 00:28
it can't all be sent back through gimme5 at runtime
pmurias btw i think i'll do the SSA based optimalisations in mildew as my school Compiler Construction project 00:31
diakopter cool :D 00:33
pmurias sleep&
00:33 pmurias left 00:56 hercynium joined 01:01 smash_ left 01:06 ruoso left 01:11 meppl joined 01:19 alester left 01:20 ruoso joined 01:24 Exodist joined 01:25 Exodist left, Exodist joined 01:27 skeptical_p joined 01:40 cognominal left 01:42 pnate joined 01:47 cognominal joined 01:52 pnate2 left 02:02 Khisanth left 02:04 lumi left 02:21 khisanth_ joined 02:23 khisanth_ left 02:24 orafu joined
lisppaste3 cognominal pasted "A first pass at showing pair for a future DataDumoer" at paste.lisp.org/display/93598 02:24
02:35 khisanth_ joined
diakopter I can't tell whether it was an intentional leak or unintentional: matt.io/entry/u6 02:42
02:43 pnate2 joined, eternaleye joined 02:45 agentzh joined, agentzh left 02:46 khisanth_ left 02:47 orafu left, pnate left, orafu joined 02:56 agentzh joined, agentzh left 03:13 meppl left 03:17 agentzh joined 03:18 agentzh left 03:28 lestrrat is now known as lest_away 03:39 Allen joined 03:41 Allen left 03:43 Baggiokwok joined 03:46 rekhajos joined 03:47 agentzh joined 03:50 araujo joined 04:00 khisanth_ joined 04:05 agentzh left 04:11 khisanth_ is now known as Khisanth 04:14 agentzh joined 04:18 Baggiokwok left 04:23 nihiliad left 04:35 lest_away is now known as lestrrat 05:02 mikehh_ joined, mikehh left 05:36 cognominal left, patspam joined 05:40 pnate joined 05:43 cognominal joined 05:52 pnate2 left 06:31 lestrrat is now known as lest_away 06:48 ruoso left 06:49 ruoso joined, kaare joined 06:50 kaare is now known as Guest90464 06:54 rgrau` left 07:20 Su-Shee joined
Su-Shee good morning 07:21
dukeleto Su-Shee: good localtime()
07:40 slava joined, Chazz_ joined 07:44 xinming joined 08:13 iblechbot joined 08:19 lumi joined 08:36 JohnDoe365 joined 08:49 meneldor joined 09:17 dakkar joined
moritz_ good morning 09:35
sjn good $daytime :) 09:45
09:46 lest_away is now known as lestrrat, cognominal left
colomon morning 09:47
09:55 hicx174 joined
meneldor morning 09:55
10:01 lumi left, lumi joined 10:11 Guest49024 joined 10:12 JimmyZ joined
jnthn oh hai 10:13
meneldor guys is there any module like Data::Dumper? i want to look how is my object structured and how it looks like 10:16
JimmyZ rakudo: 1.WHAT 10:18
p6eval rakudo 3867ff: ( no output )
JimmyZ rakudo: ['hello','world'].perl.say; 10:19
p6eval rakudo 3867ff: ["hello", "world"]␤
JimmyZ rakudo: Num.perl.say;
jnthn meneldor: As JimmyZ++ notes, .perl is essentially built-in Data::Dumper. :-)
p6eval rakudo 3867ff: Num␤
JimmyZ rakudo: Num.^menthods.perl.say;
p6eval rakudo 3867ff: Method 'menthods' not found for invocant of class 'ClassHOW'␤in Main (file src/gen_setting.pm, line 324)␤
meneldor nice :) tnx
JimmyZ rakudo: Num.^menthod.perl.say;
p6eval rakudo 3867ff: Method 'menthod' not found for invocant of class 'ClassHOW'␤in Main (file src/gen_setting.pm, line 324)␤
JimmyZ rakudo: Num.^methods.perl.say; 10:20
p6eval rakudo 3867ff: [{ ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, {
..... }, …
JimmyZ rakudo: Num.^methods.join(' ').perl.say;
p6eval rakudo 3867ff: "sqrt sin tanh asin cosh succ sign perl asinh acosech Scalar Str acotanh unpolar ACCEPTS asech Rat pred atanh exp cosec acosh acosec Num sinh WHICH cosech cotan acotan atan2 Complex sec asec cotanh log tan sech log10 atan cos acos first trans sort sqrt asin cosh :s grep subst elems
..chomp …
10:21 cognominal joined
moritz_ meneldor: the .perl method is a lot like Data::Dumper 10:24
rakudo: say [1, 2, { a => 4, b => 3 }].perl
p6eval rakudo 3867ff: ( no output )
moritz_ perl6: say [1, 2, { a => 4, b => 3 }].perl 10:25
10:25 lumi left
JimmyZ rakudo: say 1, 2, 3, 4; 10:25
10:25 lumi joined
p6eval pugs: [1, 2, {("a" => 4), ("b" => 3)}]␤ 10:25
..elf 29557: [1,2,{"a" => 4, "b" => 3}]␤
..rakudo 3867ff: ( no output )
rakudo 3867ff: 1234␤
JimmyZ rakudo: say ([1, 2, { a => 4, b => 3 }]).perl
p6eval rakudo 3867ff: ( no output ) 10:26
moritz_ something's seriously wrong with rakudo on p6eval
meneldor tnx guys ill try it when i finally construct my object :)
moritz_ doesn't work for custom objects yet :(
JimmyZ ng: say [1, 2, { a => 4, b => 3 }].perl
p6eval ng 2717d0: [1, 2, { ... }]␤
10:29 agentzh left
JimmyZ ng: say { a => 4, b => 3 }.perl 10:29
p6eval ng 2717d0: { ... }␤
JimmyZ how to output its construct ? 10:30
moritz_ rakudo on p6eval will not be available for a few minutes
ng: say { a=> 3, b => 5}.WHAT 10:31
p6eval ng 2717d0: Block()␤
moritz_ ng: say { a=> 3, b => 5}.().perl
p6eval ng 2717d0: List()␤
JimmyZ oh
moritz_ ng: say { a=> 3, b => 5}().perl
p6eval ng 2717d0: List()␤
JimmyZ I thought it's a hash
moritz_ and it should be.
meneldor what means: No applicable candidates found to dispatch to for 'trait_mod:is' 10:32
moritz_ it means that you used 'is' somehwere (like in 'class A is B { ... }'), and something went wrong 10:33
nadim ng: my $a = 1 ; my $b ; my $c ; ($a, $b,$c) //= ('default_a', 'default_b', 'default_c') ; say "$a $b $c" ;
p6eval ng 2717d0: Null PMC access in invoke()␤current instr.: '!assign_metaop' pc 14406 (src/builtins/Junction.pir:147)␤
moritz_ for example B might not have beeen declared properly
nadim Is is just me or am I the only one this should work? my $a = 1 ; my $b ; my $c ; ($a, $b,$c) //= ('default_a', 'default_b', 'default_c') ; say "$a $b $c" 10:35
to think
meneldor well so if i say class A is B, B have to be declared above A?
because this is the error in my code 10:36
moritz_ yes
"I want to inherit from a class, but that doesn't exist yet"
meneldor and what if i want class A is B and Class B is A?
moritz_ what should that be good for? and what semantics should that have? 10:37
mathw How do you construct such a thing
moritz_ inheritance should be a directed, acyclic graph
mathw A has to call B's constructor first
Which then has to call A's
which of course needs to call B's
You can't have loops in your inheritance tree
Even if there's a hack in the language to make it work, it's a great way to go insane 10:38
meneldor i think i read somewhere that i can use loops
whatever now everything is fine :) 10:39
moritz_ std: class B { }; class A is B { }; augment class B is A { }
p6eval std 29557: ok 00:01 107m␤
moritz_ rakudo: say [1, 2, { a => 4, b => 3 }].perl 10:40
p6eval rakudo 726b83: ( no output )
moritz_ 25258 CPU time limit exceeded | PERL6LIB=lib ../p/bin/perl6 /tmp/qUACYcFLHV >> /tmp/QjLUWutOZN 2>&1
10:40 JimmyZ left
mathw moritz_: that seems implausible 10:41
moritz_ syntactically it seems to work :-)
10:41 Baggiokwok joined
mathw Yes but what happens when you actually make one 10:42
moritz_ I hope you get a friendly error
mathw That would be nice 10:43
moritz_ $ ./perl6 -e 'class B { }; class A is B { }; class B is also is A { }' 10:44
Loop in class hierarchy: 'B' is an ancestor of 'A
jnthn :-) 10:45
10:45 Guest49024 left
jnthn Awesome enough? ;-) 10:45
moritz_ awesome error message, yes
SA = Sufficiently Awesome
frettled It's the SAEM 10:48
11:06 ruoso left 11:11 iblechbot left 11:12 iblechbot joined, lumi left, lumi joined 11:23 lichtkind joined
lichtkind is there any release date fpr rakuda star? 11:23
s/fpr/for/
mathw As far as I know, it's still intended to be Aprilish, as per the original announcement
lichtkind mathw: yes i read that but on rakudo.org is nothing so i better ask :) 11:24
jnthn lichtkind: None set yet - the target is Q2, with April as our current target. 11:27
(our current more specific target, that is)
But all(March,April,May) qualify as Q2.
:-)
lichtkind thanks
thats enough time for my article about rakudo :) 11:28
moritz_ article for which media?
lichtkind moritz_: heiso online , or you wanted too? 11:29
slava so rakudo switched away from the parrot grammar engine? 11:35
11:43 rodi joined 11:44 payload left
lichtkind slava: i think not yet but there is a branch that does as far as i know 11:46
11:53 meppl joined 11:54 allbery_b joined 11:59 lumi left, lumi joined 12:00 krunen joined 12:02 rekhajos left 12:13 drbean joined 12:14 payload joined 12:16 SmokeMachine joined
meneldor im completely lost in the new p6 OO morel :) 12:20
model*
i've rebuild my game-like example from yesterday
lisppaste3 meneldor pasted "untitled" at paste.lisp.org/display/93609 12:21
meneldor so global_map consist everything
a player can have many castles
and units
castle can have many buildings 12:22
12:22 patspam left
meneldor so how can i create new player? 12:22
12:23 JohnDoe365 left
meneldor considering that in every moment the main object have to "know" for all players created 12:23
moritz_ lichtkind: I wanted to write something for iX, unless somdbody else does
meneldor how to create a new player and with him automaticaly to be added castle and hero, and all this to be stored in array or object so in every moment i can see how many players have been created 12:27
moritz_ can't parse "automaticaly to be added castle and hero" 12:28
meneldor paste.lisp.org/display/93609 12:30
there are classes Hero and Castle
they inherits from Player
moritz_ why is a Player a Map?
meneldor because i need one object to collect everything 12:31
and i think Map is on top
players play in the same map
moritz_ inheritance is a "is a" relation
so when you say Player inherits from Map, you say "Player is a specialization of a Map" 12:32
that sounds so wrong
maybe a player is on a map, but that's something very different
meneldor: en.wikipedia.org/wiki/Object-Orient...nstruction I can only recommend that, very good read 12:33
meneldor so the Player class has to be on top? 12:34
tnx moritz_
moritz_ the Player class should only be on top of things that are players 12:35
meneldor i look on Player like container for Hero,Castle and Unit belonging to him 12:36
is that wrong?
moritz_ what is a Player, and what is Hero? 12:37
12:37 lumi left, lumi joined
moritz_ can a player have multiple heros? 12:37
12:38 Guest6848 joined
meneldor yep 12:38
Hero leads the Units
PLayer is just the account who plays
the Player can hire many Heroes 12:39
they will create own Units
and so on
for example if you now the game Heroes3 12:40
:)
moritz_ I don't
lisppaste3 moritz_ annotated #93609 "other architectural approach" at paste.lisp.org/display/93609#1 12:41
meneldor well, when you start the game you have 1 castle and 1 hero
but later you can hire more
so the Player is the main container for all castles/heroes
12:41 ruoso joined
meneldor but the Map is the main container for all players 12:42
moritz_ ok
so class Map { has @.players }
meneldor ok considering you anotation, how to create a new instance of Player including new Hero and all this stored in @.objects ? 12:46
i mean which class have to be constructor for that
moritz_ class Player { ...; has @.heros = (Hero.new); }
and whenever you create a Player, you have to add it Map.objects yourself 12:47
meneldor thank you moritz_ i will try it that way 12:49
12:50 lichtkind_ joined 12:57 bluescreen joined
takadonet morning all 12:58
meneldor what means: invoke() not implemented in class 'Player' 13:03
moritz_ it means that you used Player() or so 13:05
and the () tries to invoke the thing
13:07 lichtkind left
meneldor in class Map: push @.players, Player.new(name=> "TestName"); 13:07
i use it that way
13:08 Guest6848 left
moritz_ then you need to write class Player first 13:08
meneldor damn 13:09
13:17 zloyrusskiy joined 13:21 ignacio_ joined 13:36 iblechbot left 13:40 payload left, payload joined
meneldor rand(100) is now (1..100).pick ? 13:54
13:57 IgnisInCaelum joined, IgnisInCaelum is now known as Guest44547 13:59 lumi left, lumi joined 14:08 zloyrusskiy left 14:12 IgnisInCaelum joined, IgnisInCaelum is now known as Guest22264 14:15 cognominal left 14:16 [particle] joined 14:17 Guest22264 left, smash_ joined
smash_ hello 14:18
mathw Hello smash_
14:18 Baggiokwok left 14:19 slava left 14:20 Guest30825 joined 14:25 Guest30825 left 14:26 Guest44547 left
colomon rakudo: say rand(100); 14:26
p6eval rakudo 726b83: too many arguments passed - 0 params expected␤in sub 14:27
14:27 IgnisInCaelum joined, IgnisInCaelum is now known as Guest16923 14:33 drbean left 14:38 IgnisInCaelum joined, IgnisInCaelum is now known as Guest68342, Guest16923 left 14:42 Guest68342 left
diakopter hello world 14:53
sbp hello diakopter 14:54
colomon rakudo: say rand; 14:58
p6eval rakudo 726b83: 0.137508952831016␤
colomon ah.
14:59 IgnisInCaelum joined, IgnisInCaelum is now known as Guest69389 15:03 uniejo joined 15:04 lumi left, lumi joined
meneldor rakudo: say 100.rand 15:04
p6eval rakudo 726b83: 68.8374702426703␤
meneldor rakudo: say 100.rand.Int 15:05
p6eval rakudo 726b83: 87␤
diakopter rakudo: say 1.rand.Int
p6eval rakudo 726b83: 0␤
diakopter rakudo: say 1.rand.Int for 1..5
p6eval rakudo 726b83: 0␤0␤0␤0␤0␤
diakopter rakudo: say 1.rand.Int for 1..5
p6eval rakudo 726b83: 0␤0␤0␤0␤0␤
diakopter rakudo: say 2.rand.Int for 1..20
p6eval rakudo 726b83: 1␤0␤0␤0␤1␤1␤1␤0␤1␤0␤1␤1␤1␤0␤1␤0␤0␤0␤1␤1␤
diakopter rakudo: say 2.rand.Int for 1..200 15:06
p6eval rakudo 726b83:
..0␤1␤1␤0␤0␤0␤0␤1␤0␤1␤1␤1␤1␤1␤0␤0␤0␤0␤0␤0␤0␤1␤0␤1␤1␤1␤0␤0␤0␤0␤1␤0␤1␤1␤0␤0␤1␤1␤0␤0␤0␤1␤1␤1␤1␤0␤1␤1␤1␤1␤0␤1␤0␤0␤0␤1␤1␤0␤0␤1␤0␤0␤0␤1␤0␤1␤0␤1␤1␤1␤1␤0␤0␤0␤0␤1␤1␤1␤1␤1␤0␤1␤0␤1␤1␤0␤1␤0␤1␤0␤1␤0␤1␤0␤0␤0␤1␤1␤1␤1␤1␤0␤0␤1␤1␤0␤1􏿽xE2
15:12 iblechbot joined 15:17 literal joined, avar joined 15:20 avar left, literal left 15:22 avar joined 15:23 literal joined 15:25 KyleHa joined 15:26 mberends joined 15:32 meppl left, avar left, literal left 15:38 avar joined 15:39 literal joined 15:40 payload left 15:46 payload joined 15:49 Psyche^ joined 15:51 Psyche^ is now known as Patterner 16:08 nihiliad joined 16:31 payload left
pugs_svn r29558 | ash++ | Adding some tests for List.new, Array.new, &list() and adding a description to S32-List and S32-Array 16:35
16:36 Chazz_ is now known as Chazz 16:41 szbalint_ joined, obra__ joined, diakopte1 joined, hejki_ joined, Tene_ joined, Trey_ joined, frew joined, frettled joined, Tene_ is now known as Tene
frettled Hmfnnfle? 16:41
16:41 huf_ joined 16:42 BooK joined
moritz_ does it make sense to test List.new(1, 2, 3) when 1, 2, 3 is already a list? 16:42
anyway, afk 16:43
16:43 hejki_ left
frettled moritz_: is List.new tested for other similar cases already? If not, then I'd say yes, that makes sense. It could catch a strange bug sometime. 16:45
16:45 nsh joined 16:46 sbp joined, szbalint_ is now known as szbalint, PZt joined 16:47 meneldor left, bradb joined
TimToady well, technically, 1,2,3 isn't a list until it's bound to a positional. until then, it's a Parcel being used as a Capture. 16:49
if List.new happens not to bind it to a slurpy array, it's never a list 16:51
and arguably it's not a list after it's bound to an array either. well, it is, but it's not the array; it magically shows up as the hidden generator for the array. 16:53
rodi Anyone have an opinion about which file(s) in t/spec/S02-builtin_data_types should have FatRat tests? 16:54
16:54 cdarroch joined
TimToady exercising FatRats probably goes under animal_cruelty.t :) 16:55
rodi TimToady++ # HAHA 16:56
Maybe I'll make a fatrat.t.
mberends a fat rat in a harness :)
TimToady that seems fine to me 16:57
rodi For the sake of exercising them, might be nice to have FatRat and KeyWeight added to CORE.settings or whatever the right file is for tryfile to know about it...
16:59 justatheory joined
TimToady okay, they're there, though the svn logger seems slow today 17:03
17:07 pmurias joined, huf_ is now known as huf
rodi TimToady: thanks. 17:07
17:08 ash_ joined
ash_ colomon: i pushed the tests for List.new, Array.new and &list 17:09
colomon ash_: I saw, yay!
ash_ ng passes all the tests if you want to add them to the spectest.data 17:12
master doesn't pass all of them, its basically the same problem ng had, but thats fixable if you want me to patch master 17:13
jnthn ash_: imo, focus on ng. 17:14
ash_ thats fine, should i move kv from Array to List? 17:15
or add it to List, since it doesn't have a kv
jnthn Yes, I think it belongs in List. 17:16
ash_ hmmm should the whole set of keys, kv, pairs, enums, and values be duplicated in List and in Array? they all kinda function similiarly 17:18
s/similiarly/similarly/
jnthn no 17:19
They should be in List, and Array inherits them.
Array ~~ List
Or should be.
ng: say Array ~~ List
p6eval ng 2717d0: 1␤
ash_ yeah, okay just checking
jnthn Yes, good.
Array = List + mutability, essentially. 17:20
ash_ yeah, i figured as much 17:21
hmm ng doesn't have grep yet either?
jnthn I think not. 17:22
rodi Is a KeyWeight really a KeyHash of FatRat? Seems to have different default-value semantics.
17:23 meppl joined
ash_ really anything that functions on the an Array that doesn't modify the Array should be in list? logically speaking? 17:23
since the key difference between a list and an array is mutability
17:23 rachelBROWN left 17:24 rhr joined
jnthn ash_: That sounds about right. 17:24
Array would have things like .push, .pop, .splice, .unshift, etc.
ash_ kk, i am going to skim over the other functions in Array to see if any others should be moved
jnthn But grep/map/elems etc is common.
ash_ .elems (the length of the container) and .exist seem practical to move to List to me, the rest seem fine 17:28
17:29 cotto_w0rk is now known as cotto_work, ShaneC joined 17:34 zloyrusskiy joined
ash_ can a list have multiple dimensions like an array? 17:43
colomon ng: 1...10.grep({ $^a % 3 == 1 }).perl.say 17:44
p6eval ng 2717d0: Method 'list' not found for invocant of class 'Integer'␤current instr.: 'perl6;Any;_block1814' pc 226566 (src/gen/core.pir:14700)␤
colomon ng: (1...10).grep({ $^a % 3 == 1 }).perl.say
p6eval ng 2717d0: [1, 4, 7, 10]␤
colomon yeah, I thought ng had grep already.
17:45 jackyf joined, mberends left
ash_ ng: Array.grep # probably the wrong way to check, but.... 17:46
p6eval ng 2717d0: No applicable candidates found to dispatch to for 'grep'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
colomon ng: Array.new(1...10).grep({ $^a % 3 == 1 }).perl.say
p6eval ng 2717d0: [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]]␤
colomon :\
ash_ hmmm, thats odd... 17:48
colomon ng: Array.new(1...10).perl.say
p6eval ng 2717d0: sh: ./perl6: No such file or directory␤
ash_ ng: Array.new(1, 2, 3, 4, 5, 6, 7, 8, 9, 10).grep({ $^a % 3 == 1 }).perl.say 17:49
p6eval ng 2717d0: sh: ./perl6: No such file or directory␤
ash_ ng: Array.new(1, 2, 3).perl.say; 17:51
p6eval ng 2717d0: [1, 2, 3]␤
colomon ng: Array.new(1...10).perl.say 17:52
p6eval ng 2717d0: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
ash_ ng: Array.new(1...10).grep({ $^a }).perl.say
p6eval ng 2717d0: [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]]␤
colomon okay, so maybe grep is very badly broken on Array at the moment.
ash_ hmm
thats odd 17:53
ng: my @a = 1...10; @a.grep({ $^a }).perl.say;
p6eval ng 2717d0: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
ash_ grep seems okay sometimes
s/sometimes/when you use the @ sigil/ 17:54
17:54 dakkar left
colomon ng: my @a = 1...10; say @a.WHAT 17:55
p6eval ng 2717d0: Array()␤
ash_ ng: my $a = Array.new(1...10); $a.grep({ $^a }).perl.say;
p6eval ng 2717d0: [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]]␤
ash_ so, that looks like its related to the sigil some how
17:55 jackyf left 17:56 zloyrusskiy left
PerlJam ng: my $a = Array.new(1...10); say $a.WHAT 17:56
p6eval ng 2717d0: Array()␤
PerlJam odd
colomon ng: my $a = Array.new(1...10); say $a.perl
p6eval ng 2717d0: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
17:57 bradb left
dalek kudo/ng: 0fe96cd | (Solomon Foster)++ | t/spectest.data:
Added S32-array/create.t and S32-list/create.t to spectest.data, ash_++.
17:57
PerlJam ng: my @a = 1...10; say @a.list.perl 17:59
p6eval ng 2717d0: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
PerlJam ng: my $a = 1...10; say $a.list.perl
p6eval ng 2717d0: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
colomon PerlJam: yeah, I was just looking at the definition of .list.
ash_ were is grep defined? I only see the &grep($test, @values) definition, not the method version 18:00
18:01 uniejo left
ash_ is it something thats being inherited from nqp or parrot perhaps? 18:02
PerlJam ng: my @a = 1...10; (grep { $^a }, @a).perl.say 18:04
p6eval ng 2717d0: ( no output )
PerlJam ng: my @a = 1...10; say grep { $^a }, @a; 18:05
p6eval ng 2717d0: 12345678910␤
PerlJam ng: my $a = 1...10; say grep { $^a }, $a;
colomon ash_: any-list.pm
p6eval ng 2717d0: 12345678910␤
PerlJam ng: my $a = 1...10; say (grep { $^a }, $a).perl;
p6eval ng 2717d0: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
PerlJam ng: my @a = 1...10; say (grep { $^a }, @a).perl;
p6eval ng 2717d0: ( no output )
PerlJam interestin 18:06
g
ash_ colomon: are you in ng or master? 18:07
colomon ng 18:08
ash_ core/Any-list.pm line 55 contains the sub grep, is that also the method?
oo
nm
its like 32
colomon line 32, yes.
very simple method, actually. 18:09
ash_ yeah, seems it
ng: ng: my @a = 1...10; say grep { $^a }, @a; 18:10
p6eval ng 2717d0: Confused at line 1, near "ng: my @a "␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤
ash_ ng: my @a = 1...10; say grep { $^a }, @a;
p6eval ng 2717d0: 12345678910␤
18:11 diakopte1 is now known as diakopter 18:12 ChanServ sets mode: +o diakopter, ignacio_ left
diakopter sigh 18:12
18:13 nihiliad left
diakopter Juerd: or anyone, who here has access to feather2 or feather3 18:17
18:23 smash_ left, bradb joined 18:25 nihiliad joined 18:28 jackyf joined, Chillance joined 18:32 barney joined
ash_ so... did anyone ever see any reason @a = 1...3 and $a = Array.new(1...3) would be different with grep? 18:34
18:38 colomon__ joined, colomon__ is now known as colomon 18:45 bradb left 18:48 |JackYF| joined 18:59 jackyf left
ash_ oh gah, i think we are kinda silly 18:59
in the above example, i realized why it was being the way it was
Tene you need := for the latter, yes? 19:00
ash_ when you do Array.new(1...10), thats the same as Array.new(Array.new(1, 2, 3, 4, 5, 6, 7, 8, 9, 10));
ng: my $a = 1...10; say $a.grep({ $^a % 3 == 1 }); 19:01
p6eval ng 0fe96c: 14710␤
ash_ ng: my $a = Array.new(1...10); say $a.grep({ $^a % 3 == 1 }).perl; 19:02
colomon_ ng: Array.new(1...10).perl.say
p6eval ng 0fe96c: [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]]␤
ng 0fe96c: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
19:02 Astoria` joined
ash_ i think something is flattening the array when you do .perl.say 19:02
colomon_ ng: Array.new(1...10).perl.say
p6eval ng 0fe96c: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
colomon_ shouldn't flatten.
agree your explanation makes sense, but...
ng: my $a = Array.new(1...10); say $a.perl 19:03
p6eval ng 0fe96c: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]␤
colomon_ ng: my $a = Array.new(1...10); say $a.elems
p6eval ng 0fe96c: 10␤
Tene ng: my $a = Array.new(1..10,"foo",5); say $a.perl;
p6eval ng 0fe96c: [1..10, "foo", 5]␤
colomon_ 1..10 is very different than 1...10 in ng. 19:04
Tene ng: my $a = Array.new(1...10,"foo",5); say $a.perl; 19:05
p6eval ng 0fe96c: No applicable candidates found to dispatch to for '&infix:<...>'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
19:08 jonasbn joined
ash_ ng: sub f(*@a) { say @a; }; &f(1...10, 2); 19:09
p6eval ng 0fe96c: No applicable candidates found to dispatch to for '&infix:<...>'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
ash_ hmmm infix:<...> seems odd 19:10
or to have a bug
diakopter ng: sub f(*@a) { say @a; }; &f(1..10, 2);
p6eval ng 0fe96c: 1..102␤
diakopter ng: sub f(*@a) { say @a; }; &f(1..10);
p6eval ng 0fe96c: 1..10␤
diakopter ng: sub f(*@a) { say @a; }; &f(1...10, 2); 19:11
p6eval ng 0fe96c: No applicable candidates found to dispatch to for '&infix:<...>'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
diakopter ng: sub f(*@a) { say @a; }; &f(1...10);
p6eval ng 0fe96c: 12345678910␤
diakopter ng: sub f(*@a) { say @a; }; &f(1...10,2);
p6eval ng 0fe96c: No applicable candidates found to dispatch to for '&infix:<...>'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
Tene oh..
ng: sub f(*@a) { say @a; }; &f((1...10),2);
p6eval ng 0fe96c: 123456789102␤
Tene ... takes an optional third argument. 19:12
which must be a code object.
colomon_ or a list, even.
diakopter ng: sub f(*@a) { say @a; }; &f((1...10,2));
p6eval ng 0fe96c: No applicable candidates found to dispatch to for '&infix:<...>'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤
ash_ got ya, so i was writting it wrong
colomon_ except only N1 ... N2 is actually implemented in ng.
but the parser is set up to look for the lists.
ash_ ng: my $a = Array.new((1...10),"foo",5); say $a.perl; 19:13
colomon_ afk
p6eval ng 0fe96c: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, "foo", 5]␤
ash_ ng: my $a = Array.new((1...10),"foo",5); say $a.grep({$^a }).perl;
p6eval ng 0fe96c: ( no output )
ash_ ng: my $a = Array.new((1...10),"foo",5); say $a.grep({$^a });
p6eval ng 0fe96c: 1 2 3 4 5 6 7 8 9 10 foo 5␤
ash_ ng: my $a = Array.new((1...10),"foo",5); say ($a.grep({$^a })).perl; 19:14
p6eval ng 0fe96c: ( no output )
ash_ wonder why thats not returning anything
diakopter moritz_: ilbot2 is netsplitted permanently
19:15 barney left
ash_ ng: my $a = Array.new((1...10),"foo",5); say grep({$^a }, $a).perl; 19:21
p6eval ng 0fe96c: ( no output )
ash_ locally prints: [[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, "foo", 5]] 19:22
jonasbn moritz_: are you here? 19:24
19:25 Trey_ is now known as Trey
ash_ so, src/builtin/List.pir#42 is where i assign the slurpy arg to the internal variable, it seems to be packing the arg's into another array for whatever reason 19:29
19:30 Intensity joined
ash_ is there a way I can prevent that somehow? 19:30
say List.new(1, 2, 3, (1...10)).grep({$^a}).perl;
ng: say List.new(1, 2, 3, (1...10)).grep({$^a}).perl;
p6eval ng 0fe96c: ( no output )
19:30 hercynium left
ash_ outputs: [(1, 2, 3, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10)] 19:31
i guess i am still confused exactly where things are going wrong
19:32 zloyrusskiy joined, zloyrusskiy left 19:33 rodi left
ash_ ng: my $a = method { my @a = gather { for self.list { take $_ } }; return @a }; my $b = Array.new(1, 2, 3); say $a($b).perl; my @c = 1, 2, 3; say $a(@c).perl; 19:38
p6eval ng 0fe96c: [[1, 2, 3]]␤
ash_ locally that prints another [1, 2, 3] 19:39
19:50 ash_ left 20:14 sjohnson sets mode: +o Tene
sjohnson rakudo: say ~Array.^methods 20:17
p6eval rakudo 726b83: item pop values delete Scalar shift Array exists splice push unshift␤
20:21 stephenlb joined
sjohnson cute methods 20:28
20:34 bluescreen left
jonasbn pmichaud: ping 20:35
20:40 Intensity left 20:44 Guest69389 is now known as IgnisInCaelum 20:46 bluescreen joined 20:50 ash_ joined 20:51 Exodist left, Exodist joined, ash_ left 20:52 gbacon joined 20:56 cognominal joined 20:58 jferrero joined 21:06 payload joined 21:11 rachel joined, rachel is now known as Guest59872 21:12 Guest59872 is now known as rachelBROWN 21:15 Intensity joined
dalek kudo/ng: 1066246 | jonathan++ | src/Perl6/ (2 files):
Work around ** <rule> not capturing all of rule so we can get param seps working better in siggies.
21:17
kudo/ng: c3bc3b4 | jonathan++ | t/spectest.data:
We can pass S14-roles/submethods.t again now.
Juerd diakopter: pong 21:19
21:24 ash_ joined 21:27 bluescreen left
colomon 2898 tests running now, wonder where we could find a quick 102 more? ;) 21:29
21:30 SmokeMachine left
jnthn Not quite sure I can give us *that* many more tonight. :-) 21:31
Well, we'll see.
21:34 smash_ joined
colomon \o/ 21:34
I'm very happy with the thought that there's even a chance of it.
ash_ i can write more tests this afternoon, probably not 102 though 21:36
colomon That's another way of doing it.
ash_ so, colomon i figured out the problem of using @ vs $
with arrays 21:37
its the for statement
colomon ????
ash_ ng: my $a = Array.new(1, 2, 3); for $a { say $_ }
vs
p6eval ng c3bc3b: 1 2 3␤
ash_ hmm
ng: my $a = Array.new(1, 2, 3); for $a { say $_.perl } 21:38
p6eval ng c3bc3b: [1, 2, 3]␤
ash_ ng: my @a = 1, 2, 3; for @a { say $_.perl }
p6eval ng c3bc3b: 1␤2␤3␤
colomon :\
ash_ thats why grep was doing what it was
jnthn ash_: That's the correct semantics, fwiw.
ash_ hmm
Tene ng: my @a := Array.new(1,2,3); for @a { say .perl }
p6eval ng c3bc3b: Confused at line 1, near "my @a := A"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤
jnthn ash_: Arrays flatten, scalars do not.
colomon oh, I see. 21:39
jnthn my @a = Array.new(1,2,3); # should flatten.
colomon wait, I don't see.
diakopter Juerd: feather2?
jnthn ng: my @a := Array.new(1,2,3); for @a { say .perl }
p6eval ng c3bc3b: Confused at line 1, near "my @a := A"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤
jnthn ng: my @a = Array.new(1,2,3); for @a { say .perl }
p6eval ng c3bc3b: [1, 2, 3]␤
jnthn That's wrong.
Oh...maybe missing list assignment.
ash_ jnthn how do you iterate on anything not a @ then? 21:40
Tene This was part of pm's upcoming lists refactor.
jnthn Aye.
Tene Any news on pm?
jnthn ash_: Put it in list context should do so.
ash_ hmmm, kk
Juerd diakopter: What about it?
jnthn Tene: He was sick for a bit last week / weekend...hopefully back soon. Mentioned working on iterator yesterday... 21:41
diakopter Juerd: can I have an acct on it 21:42
so I can restart pugs_svn when it needs tohappen
like now
ash_ jnthn how would you force something into list context? 21:43
jnthn (phone)
cognominal ash_ : @( ) 21:44
Juerd diakopter: Try logging in please 21:45
diakopter Juerd: sudo?
Juerd I've copied your keys. Does it work?
ash_ ng: my $a = Array.new(1, 2); for @($a) { say $_.perl };
p6eval ng c3bc3b: [1, 2]␤
diakopter Juerd: oops, wrongusername, one sec 21:46
ash_ so that should be converting to list context?
dalek kudo/ng: 66e52ef | jonathan++ | src/Perl6/ (2 files):
Give methods back their default *%_ parameter; doesn't immediately pass any more test files that I can see, but should set us on the way to some more.
Juerd diakopter: Once you're in: cat ~/sudopass; rm ~/sudopass
diakopter Juerd: no, reset passwd to something please
Juerd Oh
diakopter: cat ~/feather2pass on feather1 21:47
And rm it please :) 21:50
diakopter ok
frettled and nobody will be sorry if you use the "passwd" command to change your password afterwards ;)
Juerd frettled: That depends on the new password :)
frettled Juerd: as long as he doesn't tell ;) 21:51
Juerd frettled: Some passwords are guessable
frettled Juerd: yep, but social engineering trumps guessability any time. 21:52
Tene for example, "Hey, Juerd, give me an account and sudo on feather"
frettled Perhaps installing denyhosts or a similar package is a good idea, BTW.
Tene: yeah
Tene: that one seems to work best so far. ;)
Juerd Tene: Well, to get the password you either need to be diakopter or root on feather1 21:53
Tene Yeah, that one works so well, it took effect years ago. I think. Or did I just have sudo on feather2?
Juerd feather1 is the low-security box.
21:56 sjohnson sets mode: +o frettled, ruoso left
diakopter Juerd: done; thanks. 21:57
21:57 pmurias left
colomon jnthn, ash_: So for's behavior is correct, but grep's is wrong? 21:57
diakopter Juerd: now... maybe pugs_svn was on feather3
sigh 21:58
colomon actually understand why for is right now... 21:59
ash_ well, grep is iterating the list with for @.list {...}; method list returns self, so the for loop is running in the wrong context, it needs to be running in list context, but its currently running in whatever context the variable was declared as 22:01
22:03 Guest90464 left 22:04 nadim_ joined
colomon ash_: I'm thinking a well placed @() in grep should fix that. 22:04
ash_ well, @() doesn't seem to be working, or not like i expect it to... 22:05
colomon but I want to make sure we're right about how it should and have tests for it. :)
ash_ ng: my $a = Array.new(1, 2); for @($a) { say $_.perl }; # should print 1 \n 2
p6eval ng 66e52e: [1, 2]␤
22:05 jonasbn left
Juerd diakopter: You now have access to feather3. Do you still need it on 2? 22:05
diakopter: Same password
diakopter don't konw 22:08
ash_ rakudo: my $a = list(1, 2); for @($a) { say $_ }; 22:09
p6eval rakudo 726b83: 1␤2␤
ash_ colomon: i think ng isn't doing list context correct 22:10
22:13 pugs_svn joined, pugs_svn left, pugs_svn joined 22:14 pugs_svn left
diakopter sigh 22:14
22:14 pugs_svn joined
pugs_svn r29563 | pmurias++ | [m0ld] multiple labels for a single statement are allowed 22:14
r29564 | pmurias++ | [mildew] fix typo in README
r29565 | pmurias++ | added simplified method to nodes
diakopter phenny: tell moritz_ I started up pugs_svn as your user, but under a root screen 22:15
also, something about 29562 killed it 22:16
22:23 cognominal_ joined, cognominal left, vamped joined
vamped hi 22:24
Tene hi!
vamped irclog reports no activity for last four hours? (or is my UTC conversion off) 22:25
Tene 15:16 <@diakopter> also, something about 29562 killed it
15:23 -!- vamped [n=robert@c-98-202-90-148.hsd1.ut.comcast.net] has joined #perl6
22:25 pnate2 joined
diakopter now if only we could summon ilbot2 22:29
colomon ash_: that's entirely possible, of course. 22:30
22:31 Su-Shee left
colomon jnthn: Apologies if you've answered this before for me and I've forgotten. What would be required to make $_ work in ng again? (Or do these tests we've just been running mean it is working correctly now?) 22:32
ng: (1...10).map({say $_ * $_; });
p6eval ng 66e52e: ( no output )
22:32 KyleHa left
colomon bother. 22:32
jnthn Epic phone call! 22:33
jnthn is back
colomon ng: (1...10).map({$_ * $_}).perl.say
p6eval ng 66e52e: ( no output )
diakopter jnthn: epic how 22:34
if I may ask
jnthn diakopter: Just long.
diakopter jnthn: oh, nm.. you didn't mean sixperl
jnthn diakopter: no
22:35 pnate left
jnthn colomon: Erm...I forget why it doesn't work... 22:36
colomon: Or if it doesn't work...
colomon: If you have a test that fails in ng related to $_, I can have a dig.
colomon jnthn: I believe what happens is the arity of a block with $_ is zero.
Tene the rules about that are... complicated. 22:37
jnthn Aye.
22:37 pnate joined
jnthn colomon: OK, that may be arity bug too. :-/ 22:37
colomon ng: (1...10).map({$_ * $_}).perl.say
is what shows it.
jnthn (I can tell by looking at generated PIR though)
colomon it runs forever if you do it at home in ng.
p6eval ng 66e52e: ( no output )
colomon where 22:38
jnthn ng: my $x = {$_ * $_}; say $x(5)
p6eval ng 66e52e: 25␤
colomon ng: (1...10).map({$^a * $^a}).perl.say
jnthn Hmm
p6eval ng 66e52e: (4, 16, 36, 64, 100)␤
colomon ng: (1...10).map({$^a * $a}).perl.say
jnthn colomon: Oh, wait
p6eval ng 66e52e: (1, 4, 9, 16, 25, 36, 49, 64, 81, 100)␤
jnthn ng: say { $_ * $_ }.arity;
p6eval ng 66e52e: 0␤
jnthn ng: say { $_ * $_ }.count; 22:39
p6eval ng 66e52e: 1␤
Tene because it's optional.
jnthn colomon: issue is that the sig on that blog ends up being like $_ = OUTER::<$_>
So the code that is using .arity now probably wants to use .cont
erm, .count
.oO( wow, that typo coulda been a LOT worse )
22:40
colomon :)
so maybe just a quick patch to match? 22:41
s/match/map/
jnthn colomon: Maybe, try it.
colomon er, bother, it's actually mucking about with list iterators. 22:42
afk dinner 22:45
lichtkind_ join rakudo 22:48
forgot slash :)
jnthn There's a #rakudo? :-)
lichtkind_ i didnt found one :)
jnthn: i currently reading rakudo roadmap for * is there any markings which goals are acomplished? 22:49
22:51 pnate2 left
jnthn lichtkind_: There's a Completed ROADMAP items section at the bottom. 22:53
lichtkind_: However, it doesn't account for things done in ng
lichtkind_: When ng lands we'll give that file a decent review and move a bunch of things to complete, I expect.
ash_ ng is lazier than master, so thats good
dalek kudo/ng: 7e1764f | jonathan++ | src/Perl6/ (2 files):
Add back parsing of $foo.'methname'().
22:54
kudo/ng: 80646df | jonathan++ | t/spectest.data:
We now pass S12-methods/calling_syntax.t again.
lichtkind_ what you mean by lazy?
22:54 iblechbot left
ash_ it waits to evaluate things until it has to 22:54
lichtkind_ oh you served by the superior beings :)
22:54 jferrero left
lichtkind_ ash_ and rakudo doesn't 22:54
jnthn Yes.
ng actually does object construction via a metamodel too.
erm, class construction
well, role too
22:54 KyleHa joined
jnthn lichtkind_: as in, lazy lists. 22:54
lichtkind_ jnthn: was that a yes or no? :) 22:55
22:55 lichtkind_ is now known as lichtkind
ash_ i don't understand the question.... 22:55
22:57 vinisterx joined
lichtkind ash_: the current rakudo is not lazy as in lazy list? 22:57
ash_ yesh, rakudo currently doesn't have lazy lists, rakudo ng branch does have lazy lists
lichtkind thats great info thanks 22:58
sjohnson OT question: anyone here enjoy the game of Chess?
lichtkind no thanks
but the rakudo-rx is a different branch? 22:59
Tene -ng 23:00
ash_ rakudo-master is the default version of rakudo, rakudo-ng is the place were most of the refactoring is taking place 23:02
23:03 hercynium joined, KyleHa left
lichtkind ash_: yes but isnt there a branch using PGE called rx ? 23:06
ash_ i think your thinking of nqp-rx 23:07
23:09 stephenlb left, BooK left, huf left, Patterner left, Khisanth left, LionMadeOfLions left, tomaw_ left, jnthn left, sjohnson left, kolibrie left, renormalist left, arnsholt left, spinclad left, gabiruh left
pugs_svn r29566 | jnthn++ | [t/spec] my method foo() { ... } is no longer equivalent to method !foo() { ... } in the current spec; remove this fossil. Also fudge a test I'm not sure about on role-private methods - needs spec review too. 23:09
lichtkind ash_ yes thats it 23:10
im back and was away for some time
so still dont know the new words
vamped sjohnson: occasionally
lichtkind so nqp rx includes PGE
will it be inside rakudo *? 23:11
dalek kudo/ng: c38b531 | jonathan++ | src/Perl6/Actions.pm:
The !foo operator also needs to be sensitive to quoted methodop form.
kudo/ng: 35d01c1 | jonathan++ | t/spectest.data:
We now pass the updated S12-methods/submethods.t.
23:11 huf joined, arnsholt joined, jnthn joined 23:12 LionMadeOfLions joined, tomaw_ joined
ash_ i believe that rakudo's ng branch will be rakudo* hopefully 23:12
PerlJam ash_: no, rakudo's ng branch will be master shortly. 23:13
23:13 sjohnson joined
PerlJam rakudo* will be a Perl 6 distribution based on rakudo. 23:13
jnthn *blink*...I had a re-join?
23:13 nihiliad left
jnthn ash_: ng has a lot of the stuff we need for Rakudo *, but we plan to merge it as soon as it's ready. 23:13
So it'll have testing and additional development before Rakudo *. 23:14
ash_ yeah, i meant that it will be master soon, and Rakudo* is going to be based off of that
jnthn right.
lichtkind jnthn: i was stillasking as yesteray if nqp-rx will make it into rakudo*
and i asked if nqp-rx included PGE 23:15
23:15 lumi left, lumi joined
jnthn lichtkind: nxp-rx replaces PGE. 23:16
ash_ well nqp-rx is built into parrot now
PerlJam lichtkind: nqp-rx does parse regex, yes. And, if nothing catastrophic happens, Rakudo* will use nqp-rx (because that's essentially the function of the ng branch--to use nqp-rx)
jnthn lichtkind: The ng branch is using nqp-rx already.
23:16 gabiruh joined, ssm joined
lichtkind THANKS a lot i beginning to understand 23:17
PerlJam lichtkind: before there was PGE + NQP, now there's just nqp-rx which does both (and a little more :)
lichtkind what more? 23:18
sjohnson darn netsplits
jnthn lichtkind: protoregexes, contextual variables, closures in regexes... 23:19
...to name the most important.
23:19 skeptical_p left
lichtkind jnthn: that are features that has nqp-rx? 23:19
23:20 stephenlb joined
jnthn lichtkind: yes 23:20
lichtkind i just ask to not confuse it with what one can parse :)
jnthn :-)
Hmm. Looks like two probably smallish fixes and we can make it through S12-methods/instance.t again in ng. 23:21
Seems there is starting to be some light at the end of the tunnel...
23:23 pnate2 joined
ash_ jnthn: do you know if @( ) is supposed to be working in ng? 23:23
jnthn ash_: I don't remember making it work, or having seen it working. 23:24
So my guess is no, but it's possible pm put it in or someone else.
ash_ jnthn: ah, well i don't think it works, i was just going to let you know, but if its not implemented then yea 23:25
23:26 pnate left
jnthn ng: @(1,2,3) 23:26
p6eval ng 35d01c: ( no output )
jnthn ng: say (@(1,2,3)).WHAT
p6eval ng 35d01c: List()␤
lichtkind i think how i might help, but i think best i finish my perl 6 tut, i mean its finished, only the english version not :)
ash_ ng: my $a = (1, 2, 3): for @($a) { say $_.perl}
p6eval ng 35d01c: Confused at line 1, near "my $a = (1"␤current instr.: 'perl6;HLL;Grammar;panic' pc 500 (src/stage0/HLL-s0.pir:328)␤
jnthn ah.
ash_ ng: my $a = (1, 2, 3); for @($a) { say $_.perl} 23:27
jnthn yeah, I guess nyi
p6eval ng 35d01c: (1, 2, 3)␤
jnthn oh
ash_ should be 1\n2\n3
jnthn Yeah, I think so.
ash_ i'd expect
rakudo:
rakudo: my $a = (1, 2, 3); for @($a) { say $_.perl}
p6eval rakudo 726b83: 1␤2␤3␤
jnthn I'd check pmichaud or TimToady agree though, they have a better grasp on that than I...
lichtkind jnthn: what are the core devs beside you and pm? 23:29
23:30 Khisanth joined
ash_ jnthn do you know any other way of turning $a = 1, 2, 3; into an @ then? 23:31
jnthn ash_: I think @($a) *should* do it - I'd just rather get a second opinion. :-) 23:32
ash_ oh, okay, yeah, i have only seen afew tests that use @()
23:35 Astoria` left
lichtkind really funny : www.youtube.com/watch?v=WcU4t6zRAKg 23:36
stephenlb hah, remember that one. 23:37
dalek kudo/ng: d04f9ec | (Solomon Foster)++ | src/cheats/any-map.pir:
Switch arity in map to count, as per jnthn++.
23:39
jnthn "the front fell off" :-)
colomon: Did that fix the issue?
colomon yup. thanks! 23:40
jnthn \o/
std: class AnonInvocant { 23:41
method me(::T $:) {
T;
}
p6eval std 29566: ===SORRY!===␤Unable to parse block; couldn't find final '}' at /tmp/8CjINTu4MN line 1 (EOF):␤------> class AnonInvocant {⏏<EOL>␤ expecting any of:␤ block␤ statement list␤ trait␤FAILED 00:01 107m␤
jnthn ...urgh.
std: class AnonInvocant { method me(::T $:) { T; } }
p6eval std 29566: ok 00:01 108m␤
jnthn ng: class AnonInvocant { method me(::T $:) { T; } }
p6eval ng 35d01c: ( no output )
jnthn ng parses it RONG though.
diakopter jnthn: oh, nm.. you didn't mean sixperl 23:42
sigh
ng: class AnonInvocant { method me(::T T) { } }
p6eval ng 35d01c: ( no output ) 23:43
diakopter rakudo: class AnonInvocant { method me(::T T) { } }
jnthn diakopter: huh? :-)
p6eval rakudo 726b83: Invalid signature; cannot have two consecutive parameter separators. at line 2, near ") { } }"␤in Main (file src/gen_setting.pm, line 1152)␤
jnthn oh wtf
diakopter what does ng do with the (::T T)
jnthn diakopter: heh. Captures a type and then enforces it as a constraint. :-)
diakopter: A constraint with a very high chance of returning true. :-) 23:44
Aww. 23:45
23:45 breinbaas joined, breinbaas left
jnthn Turns out there were 3 things keeping us from passing instance.t, not just 2. 23:45
23:46 breinbaas joined 23:51 lumi left, lumi joined
dalek kudo/ng: 1c90df0 | jonathan++ | src/Perl6/Grammar.pm:
Need to parse unspace in a methodop.
23:56
kudo/ng: a40fa5c | jonathan++ | src/Perl6/Actions.pm:
has @foo; needs to set up an attribute @!foo and then have mentions of @foo refer to it; make this so. Gets us a step closer to another test file passing.
23:56 meppl left
23:57 skeptical_p joined