Camelia, the Perl 6 bug

IRC log for #parrot, 2008-11-08

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:03 magnachef joined #parrot
00:05 jonathan pmichaud: Yeah, use mem_sys_allocate_typed instead of mem_sys_allocate
00:05 jonathan chromatic mentioned it yesterday, just not had chance to do it yet
00:06 jonathan Just reviewing my talk for tomorrow then need rest...
00:06 pmichaud jonathan: I also updated the spectest_regression graphs
00:07 jonathan pmichaud: Curious why http://www.pmichaud.com/perl6​/rakudo-tests-2008-11-07.png shows a drop at the end!
00:07 pmichaud I think some tests were removed from spectest_regression.data
00:07 jonathan Ah, OK.
00:07 pmichaud because they weren't passing and didn't have much hope of passing anytime soon.
00:08 jonathan Yes, but the green (number of passing) drops.
00:08 bacek joined #parrot
00:08 pmichaud oh, I think they were incorrect tests.
00:08 jonathan Ah.
00:08 pmichaud had to do with junctions.
00:08 jonathan ok
00:08 * jonathan wonders how many we pass now
00:09 pmichaud I can find out.
00:09 pmichaud the next update won't be for six more hours.
00:09 pmichaud (i.e., a graph update)
00:09 jonathan ok
00:09 johbar joined #parrot
00:09 nopaste "bacek" at 123.243.38.218 pasted "Shut compiler warning in perl6.ops (for pmichaud)" (11 lines) at http://nopaste.snit.ch/14509
00:09 particle1 210 test files                                        6126 6344 4435    4  407 1498
00:10 pmichaud looks like we're passing 4435
00:10 bacek hi again :)
00:10 pmichaud probably closer to 4450, since we have some spectests to release.
00:11 pmichaud I don't know if you got my message, but 'is also' would be the next really useful thing to have implemented.
00:11 jonathan OK.
00:11 pmichaud I don't need attributes or to worry about existing instances.
00:11 jonathan Will try and do it next week.
00:11 pmichaud really all we need is that the class-creation-code gets suppressed.
00:11 jonathan Maybe Rakudo day on Tuesday will work.
00:11 pmichaud that works well for me.
00:11 jonathan Yes, we'll just not emit that.
00:12 pmichaud I'm thinking prelude-in-p6 will be a nice target for the summit.  :-)
00:12 jonathan Yes.
00:12 jonathan I'll use some of the time to get my grant application finalized too - can get you and particle to review in in person, which will be faster.
00:12 jonathan And then mail it in.
00:12 pmichaud absolutely.
00:13 pmichaud bacek:  jonathan says to use mem_sys_allocate_typed ... your patch doesn't do that?
00:13 bacek pmichaud: no, just cast
00:14 jonathan bacek: Use mem_sys_allocate_typed, it's cleaner and more standard.
00:14 jonathan I shoulda used it in the first place. Just didn't think to.
00:14 bacek jonathan: ok,
00:14 jonathan Was my first Parrot guts code for over a month. ;-)
00:15 jonathan pmichaud: Trying to get the lex stuff a bit more sorted out while everyone's around could be good too.
00:16 pmichaud jonathan: yes.  I'm pretty comfortable with the approach -- I'll just need people to review the changes to see where I've done any Parrot no-nos
00:16 pmichaud the new design is *far* cleaner than what we have -- I've been ripping out ugly code.
00:17 pmichaud gotta run some errands -- bbiaw
00:19 bacek I can't find mem_SYS_allocate_typed. May be it should be just mem_allocated_typed?
00:21 chromatic Yes, it should b e.
00:22 chromatic mem_allocate_typed, anyway.
00:22 bacek chromatic: :)
00:22 chromatic It does the cast and sizeof for you automatically, so you don't have to worry about breaking C++ compiles.
00:22 chromatic Not that I do.
00:22 chromatic Because I use it!
00:23 jonathan :-P
00:23 * jonathan sleeps
00:28 Tene pmichaud: weekend and week off coming up. Can I talk you into requesting things from me?
00:30 chromatic That resumable exceptions bug might be nice to fix.
00:30 Tene Okay.  Thanks. :)
00:31 Tene I'll start on that tonight or on the plane.
00:32 chromatic I don't remember the ticket number, but it's one of the unclosed tickets filed in the past fortnight.
00:35 masak chromatic: http://rt.perl.org/rt3/Tic​ket/Display.html?id=57610
00:36 masak there oughta be an RT search bot.
00:52 Tene I got started on it. The .handlers on the context is getting set to PMCNULL
00:54 bsb joined #parrot
01:16 Aisling joined #parrot
01:21 bacek rakudo: class Foo {}; my $a = Foo.new; my $b = Foo.new; $a = $b
01:21 polyglotbot RESULT[Method 'perl' not found for invocant of class 'Foo'␤current instr.: '_block11' pc 25 (EVAL_12:12)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 866 (src/PCT/HLLCompiler.pir:501)␤called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1141 (src/PCT/HLLCompiler.pir:631)␤called from Sub
01:21 polyglotbot ..'parrot;PCT;HLLCompiler;command_line' pc 1320 (src/PCT...
01:22 bacek rakudo: class Foo {}; my $a = Foo.new; my $b = $a
01:22 polyglotbot RESULT[Method 'perl' not found for invocant of class 'Foo'␤current instr.: '_block11' pc 25 (EVAL_12:12)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 866 (src/PCT/HLLCompiler.pir:501)␤called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1141 (src/PCT/HLLCompiler.pir:631)␤called from Sub
01:22 polyglotbot ..'parrot;PCT;HLLCompiler;command_line' pc 1320 (src/PCT...
01:23 Aisling joined #parrot
01:26 bacek interesting...
01:26 bacek rakudo: class Foo {}; my $a = Foo.new; my $b = $a; say $b.WHAT
01:26 polyglotbot OUTPUT[Foo␤]
01:26 Aisling joined #parrot
01:36 Ademan joined #parrot
01:37 Tene I propose a "fix .HLL" hackathon activity at the summit, if anyone else is interested.
01:37 Tene Whiteknight: ping
01:38 Whiteknight Pong!
01:50 masak joined #parrot
01:51 bacek joined #parrot
02:19 Infinoid hrm.  it would be much nicer to work on parrot offline if git-svn didn't segfault on my laptop...
02:25 bacek can anyone close #58302? It's actually resolved.
02:26 Tene chromatic: 0xdeadbeef means GC'd, right?
02:28 chromatic When we GC a PMC, we set its vtable to 0xdeadbeef.
02:28 Tene if you break on src/scheduler.c:759 and run pmichaud's x.pir EH demo and look at it after it prints 'ok 2' you'll see context->handlers->{struct,pmc,string}_val are all 0xdeadbeef
02:29 Limbic_Region in perl 5, is there a portable way to determine if the architecture you are running on is 32bit or 64bit?
02:29 chromatic src/gc/dod.c:688:    PMC_pmc_val(pmc) = (PMC     *)0xdeadbeef;
02:29 chromatic Looks like something collected the PMC already.
02:30 chromatic is context->handlers->vtable also 0xdeadbeef?
02:31 Tene no
02:31 Tene the vtable is still there
02:32 chromatic That's strange.
02:32 chromatic Limbic_Region, I usually look at $Config{intsize}.  If it's 4, then you have 32-bit integers.
02:33 Limbic_Region chromatic - I was thinking about that, but doesn't that just tell you want perl was compiled as - not necessarily what the platform is?
02:33 chromatic Yes.
02:33 Limbic_Region while 64 bit perl wouldn't run on 32 bit arch, the other way isn't a far stretch
02:33 Limbic_Region I am interested in the underlying architecture
02:33 chromatic bacek, I just closed it.
02:33 Infinoid isn't USE_64_BIT_INT also valid on 32 bit architectures (it just uses "long long")?
02:33 bacek chromatic: thanks
02:33 chromatic Infinoid, I believe so.
02:34 Infinoid there's also $Config{archname}, but you'd need a big lookup table I guess
02:34 Limbic_Region but it is OT for the channel, I just asked cause folks over in #perl are stumped
02:34 Limbic_Region yeah, I already suggested that
02:34 * Tene bbl, flying
02:34 chromatic PMC_pmc_val(_class)    = (PMC  *)0xdeadbeef;
02:35 chromatic from create_class_pmc()
02:48 nopaste "bacek" at 87.250.243.86 pasted "perl6.ops patch" (13 lines) at http://nopaste.snit.ch/14510
02:49 bacek chromatic: can you apply http://nopaste.snit.ch/14510?
02:49 bacek it's about mem_allocate_typed
03:08 Infinoid msg masak RT #60178 is fixed, right?  If so, we can close it.  (And probably #60286 too.)
03:08 purl Message for masak stored.
03:12 Infinoid chromatic: when I see an open ticket that has a "Fixed in rNNNNN." reply from you, should I just close them?
03:19 chromatic Yes please.
03:20 cout joined #parrot
03:22 dalek r32443 | chromatic++ | trunk:
03:22 dalek : [Rakudo] Fixed a C++ compilation error (Vasily Chekalkin).
03:22 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32443
03:26 bacek hey! Where is my karma?! :)
03:30 chromatic bacek++
03:30 chromatic bacek++
03:30 bacek :)
03:31 davidfetter joined #parrot
03:40 Infinoid davidfetter: gonna be staying in richmond tomorrow night.  know any good sushi joints in your area?
03:41 davidfetter richmond...that's a ways off from where i live. would you be down with berkeley and/or oakland?
03:41 * davidfetter gets back wednesday
03:41 davidfetter <-- beijing atm
03:43 Infinoid yep, anywhere northeast bayish is fine
03:43 Infinoid (compared to the drive from tahoe, all that stuff is "local" to me)
03:44 Psyche^ joined #parrot
03:45 dalek r32444 | chromatic++ | trunk:
03:45 dalek : [src] When escaping non-ASCII characters in a string, increment the length of
03:45 dalek : the result string for each ASCII character encountered (fixes RT #60396,
03:45 dalek : reported by Patrick Michaud, and RT #58820, reported by ihrd).
03:45 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32444
03:54 Infinoid I can reproduce #60190 in -rHEAD
03:55 chromatic I think it's a 64-bit problem.
03:57 Infinoid hmm.  actually, it still crashes in TGE, but in src/hash.c (the reported backtrace had it crashing in the callsignature pmc).
03:57 chromatic Sounds like memory corruption.
03:57 Infinoid doughera's advice about finding a shorter test case still seems valid, I'll see what coretest comes up with.
03:59 chromatic If you can find a short coretest, Valgrind may help.
04:00 Infinoid looks like segfaults in t/op/gc and t/pmc/bigint so far... still running
04:00 Infinoid valgrind's a good tip, will do.
04:02 elmex_ joined #parrot
04:05 Infinoid well, t/compilers/pge/perl6regex/context_14.pir is short, but the stuff it loads isn't.
04:07 Infinoid its a choice between that, t/pmc/bigint_26.pir or t/op/gc_17.pir
04:10 bacek joined #parrot
04:16 Infinoid recommended valgrind arguments?
04:16 nopaste "Infinoid" at 75.5.244.72 pasted "script -c 'valgrind ./parrot t/pmc/bigint_26.pir' bigint_26-valgrind-output.txt" (1227 lines) at http://nopaste.snit.ch/14511
04:16 Infinoid eew, my linefeeds were busted.
04:37 Tene chromatic: I lied.  It's not GC.  New PMCs are initialized to 0xdeadbeef there too.
04:52 johbar_ joined #parrot
05:00 chromatic Infinoid, it looks like the CallSignature PMC is invalid.
05:48 magnachef joined #parrot
05:50 magnachef__ joined #parrot
06:16 integral joined #parrot
06:33 integral joined #parrot
07:44 apeiron joined #parrot
08:23 iblechbot joined #parrot
08:24 idemal joined #parrot
08:39 bsb left #parrot
09:16 dalek r32445 | chromatic++ | trunk:
09:16 dalek : [t] Made t/harness exit with a non-zero value if any tests in the run failed.
09:16 dalek : Now make will stop at a test failure for any rule which depends on a test run
09:16 dalek : (see RT #60116, reported by David Golden).
09:16 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32445
09:47 bacek joined #parrot
09:51 bacek msg moritz http://irclog.perlgeek.de/perl6/today is broken...
09:51 purl Message for moritz stored.
10:30 barney joined #parrot
10:32 bacek joined #parrot
11:07 dalek r32446 | jonathan++ | trunk:
11:07 dalek : [rakudo] When you use a type in a signature that was captured earlier in the signature, need to fix up the scope.
11:07 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32446
11:26 mkelly32 joined #parrot
11:43 bacek joined #parrot
11:49 dalek r32447 | fperrad++ | trunk:
11:49 dalek : [m4]
11:49 dalek : oops
11:49 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32447
12:09 barney fperrad++
12:16 bacek jonathan: around?
12:27 pjcj joined #parrot
12:28 r0bh joined #parrot
12:37 bacek rakudo: sub is($a,$b) { $a eq $b }; say is(42,42)'
12:37 polyglotbot OUTPUT[Statement not terminated properly at line 1, near "'"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤called from Sub 'parrot;Perl6;Grammar;eat_terminator' pc 26705 (src/gen_grammar.pir:3187)␤called from Sub 'parrot;Perl6;Grammar;statementlist' pc 25361
12:37 polyglotbot ..(src/gen_grammar.pir:2654)␤called from Sub 'par...
12:38 bacek rakudo: sub is($a,$b) { $a eq $b }; say is(42,42)
12:38 polyglotbot OUTPUT[1␤]
12:38 bacek rakudo: sub is($a,$b) { $a eq $b }; say is (42,42)
12:38 polyglotbot OUTPUT[too few arguments passed (1) - 2 params expected␤current instr.: 'is' pc 89 (EVAL_13:37)␤called from Sub '_block11' pc 42 (EVAL_13:16)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 866 (src/PCT/HLLCompiler.pir:501)␤called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1141
12:38 polyglotbot ..(src/PCT/HLLCompiler.pir:631)␤called from Sub 'parrot;PCT;HLLCo...
12:38 bacek interesting... How that?
12:52 bacek rakudo: sub foo($x) { $x/=2 }; my $a=84; foo($a); say $x
12:52 polyglotbot OUTPUT[No handler to delete.␤current instr.: 'parrot;PAST;Compiler;as_post' pc 6052 (src/PAST/Compiler.pir:1651)␤called from Sub 'parrot;PAST;Compiler;post_children' pc 1779 (src/PAST/Compiler.pir:367)␤called from Sub 'parrot;PAST;Compiler;call' pc 3191 (src/PAST/Compiler.pir:841)␤called from Sub
12:52 polyglotbot ..'parrot;PAST;Compiler;post_children' pc 1779 (src...
12:52 bacek rakudo: sub foo($x) { $x/=2 }; my $a=84; foo($a); say $a
12:52 polyglotbot OUTPUT[42␤]
13:06 dalek r32448 | jonathan++ | trunk:
13:06 dalek : [rakudo] Add spectest file for generic subs to spectest_regression.
13:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32448
13:07 barney It looks like 'our' variables are lost when using the   my $past := $( $/{$key} );      syntax
13:09 bacek rakudo: say (all((4|5|6) + 3) == one(7|8|9))
13:09 polyglotbot OUTPUT[1␤]
13:12 bacek looks like one of my local patches broke rakudo...
13:26 Hunger joined #parrot
13:31 dalek r32449 | bernhard++ | trunk:
13:31 dalek : RT#60412: [PATCH] comment typos, C<parrot/compilers/imcc> case
13:31 dalek : Courtesy of Brad Bowman
13:31 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32449
13:54 bacek joined #parrot
13:58 masak joined #parrot
14:02 Whiteknight joined #parrot
14:19 bacek joined #parrot
14:23 jonathan re sub foo($x) { $x/=2 } - we so need to actually compile that one to the same as $x = $x / 2...not use the inplace Parrot ops, I suspect
14:23 jonathan same with other similar things
14:27 masak jonathan: aye, probably the last four tests in S03-operators/autoincrement.t, which were changed yesterday, and now fail.
14:30 masak Infinoid: yes, RT #60178 is definitely fixed. I see you closed it already, good. I can't tell if #60286 is a duplicate.
14:44 jonathan masak: yes, I saw some fails there
14:44 masak I think they are about approximately the same thing
14:44 jonathan On the up side, I fixed a bug and added 7 new pasing tests today. :-)
14:44 jonathan auto-increment is harder to fix.
14:44 masak jonathan++
14:45 masak aye, I noticed that when I tried :)
14:45 jonathan oh, actually....maybe not, I know how...
14:45 masak great!
14:45 jonathan will try it sometime
15:06 Ademan joined #parrot
15:15 bacek joined #parrot
15:17 Zaba 7 new passing spectest?
15:17 * masak sees [perl #60408]
15:17 masak oh noes!
15:18 masak if not even the butt-ugly workaround to #58392 works anymore, we're screwed.
15:26 pmichaud jonathan: (re :: sigil)  -- despite S02, I don't think that :: is a "true sigil"
15:26 pmichaud it certainly isn't being treated as one in STD.pm (as you note)
15:26 pmichaud plus, I think that something like "my ::T = Int"  is somewhat incorrect, as the leading :: already implies "my"
15:27 pmichaud otoh, writing "::T = Int"   might be perfectly valid.  :-)
15:47 bacek joined #parrot
16:01 apeiron joined #parrot
16:08 Theory joined #parrot
16:17 iblechbot joined #parrot
16:23 bacek joined #parrot
16:45 nopaste "pmichaud" at 76.183.97.54 pasted "action methods in Rakudo (for masak)" (21 lines) at http://nopaste.snit.ch/14512
16:45 dmknopp joined #parrot
16:54 particle pmichaud++ # that's an excellent example!
16:59 Whiteknight oh wow, that's pretty hot
17:00 Whiteknight But what if we only call Language::TOP("hello world hello hello) without :actions(Actions)?
17:01 masak Whiteknight: then nothing happens, perhaps?
17:01 masak only the match, which doesn't print anything.
17:01 Whiteknight Well, something has to happen when {*} is invoked
17:04 particle no
17:04 particle what does a bare {*} mean in perl 6?
17:04 particle it's a closure with Whatever inside
17:05 particle when executed, it does nothing by default
17:05 particle only when tied to the special Action class does it mean something different
17:05 particle and magical
17:06 pmichaud if the match invocation doesn't provide an :action option, then the {*}'s become no-ops.
17:07 masak as they should.
17:28 nopaste "pmichaud" at 76.183.97.54 pasted "token no longer requires semicolon (RT #57874, for masak)" (7 lines) at http://nopaste.snit.ch/14513
17:33 particle pmichaud: let me know if you have other refactors in mind for rakudo that i can help with. create cage tickets and i'll take them as i can
17:34 pmichaud particle: will do.
17:34 pmichaud there will be a bunch as we start re-doing things in p6 :-)
17:35 dalek r32450 | pmichaud++ | trunk:
17:35 dalek : [rakudo]:  Closing } in regex/token/rule can terminate statements (RT #57874)
17:35 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32450
17:35 masak pmichaud: also speaking of tickets, did you have time to take a look at #60382 ?
17:36 pmichaud not yet, will do that.
17:36 pmichaud (will have to be after lunch, though -- I'm being sent out to pick up lunch now.)
17:36 masak no prob.
17:38 pmichaud oops -- looks like my commit might've broken some tests.
17:38 szabgab After upgrading Ubuntu to 8.10 I was trying to build Parrot::Embed and failed again
17:38 szabgab http://sial.org/pbot/33102
17:39 szabgab I am at r32449, and just built parrot after make realclean
17:39 pmichaud I'll have to check it again after lunch.
17:40 szabgab pmichaud: if you said that to me then thanks
17:45 szabgab actually it seems that the build was succesful and those were warnings only
18:10 magnachef joined #parrot
18:38 masak if no-one else is working on it, I could add the required tests against #60404.
19:03 sgt joined #parrot
19:35 dalek r32451 | fperrad++ | trunk:
19:35 dalek : [parrot_compiler]
19:35 dalek : - fix syntax
19:35 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32451
19:35 dalek r32452 | fperrad++ | trunk:
19:35 dalek : [chitchat]
19:35 dalek : - fix syntax (.namespace)
19:35 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32452
19:38 dalek r32453 | fperrad++ | trunk:
19:38 dalek : [forth]
19:38 dalek : - fix syntax
19:38 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32453
19:58 masak pmichaud: re #60404, which I'm writing tests for right now: is ihrd's second call really wrong? it sends in an array ref, not an array. shouldn't the result of that be 'onlt one 1'?
20:01 jonathan pmichaud: I don't get what you mean by "the leading :: implies my"
20:01 jonathan S02 talks about it in terms of a binding at declaration IIRC.
20:05 jonathan I think :: makes sense as a sigil myself.
20:06 masak whoa! does anyone else get a stacktrace in the S12-class spectests?
20:06 jonathan "Within a signature or other declaration, the :: sigil followed by an identifier marks a type variable that also declares the visibility of a package/type name without the sigil within the scope of the declaration"
20:06 jonathan masak: Haven't seen that.
20:07 masak I have a dirty working copy, so it might just be me.
20:19 masak nope, the problem persists even after a clean recompile.
20:19 masak what do I do? ignore it? submit a parrotbug? paste the stacktrace here?
20:19 jonathan Is it a C stacktrace or a Parrot one?
20:20 jonathan If it's a Parrot one is _should_ happen for everyone. :-S
20:20 masak jonathan: a C one, I think.
20:20 masak src/inter_call.c:390: failed assertion 'PObj_is_PMC_TEST(sig_pmc)'
20:20 jonathan Oh. C.
20:20 masak OIC.
20:20 jonathan That sucks.
20:20 purl The rock is now off.
20:21 masak ok.
20:21 jonathan Do you get a full backtrace?
20:21 jonathan Or run it under gdb if not.
20:22 masak good news: I can reproduce it just by running the test file in question :)
20:22 jonathan Good.
20:22 masak so it doesn't depend on the test harness.
20:22 jonathan If you know how, use gdb to get a trace up to that point.
20:22 masak jonathan: oki.
20:22 jonathan Thanks.
20:25 * jonathan enjoyed Twin City Perl Workshop
20:28 nopaste "masak" at 130.238.45.242 pasted "backtrace from running t/spec/S12-class/declaration-order.t (for jonathan)" (166 lines) at http://nopaste.snit.ch/14514
20:30 masak jonathan: or should I do --trace=1 ?
20:30 jonathan masak: Oh, you mean *just* that test?
20:30 jonathan Or you mean many tests?
20:30 masak jonathan: just that test file.
20:31 jonathan oh, sorry
20:31 jonathan I thought you menat many
20:31 jonathan that one fails for me too, but that's good info - I hadn't got a backtrace yet
20:31 jonathan please send it to the list
20:31 jonathan or ticket
20:31 * masak tickets it
20:31 jonathan gotta go - bbitf
20:31 masak rakudobug or parrotbug?
20:32 chromatic joined #parrot
20:32 bacek good morning
20:38 bacek masak: I reimplemented succ/pred handling. succ_pred3.patch in #59596
20:38 masak bacek: great!
20:40 bacek btw, comment from #60290 looks wrong for me. Why Bool.pick should return Bool::True or Bool::False?
20:40 masak bacek: because the spec says so?
20:41 bacek I can't find it in spec...
20:41 masak bacek: look harder. :)
20:41 bacek our List multi method pick ( @values: Int $num = 1, Bool :$repl )
20:41 bacek our List multi method pick ( @values: Whatever, Bool :$repl )
20:41 bacek our List multi pick ( Int $num, Bool :$repl, *@values )
20:41 bacek our List multi pick ( Whatever, Bool :$repl, *@values )
20:41 masak is that S29?
20:41 bacek yes
20:41 masak it's out-of-date.
20:41 bacek yak, howzat?
20:41 * masak puts it on his TODO list to update S29 in this regard.
20:42 bacek what should return Array.pick?
20:42 masak bacek: I don't know.
20:42 bacek hmm...
20:42 masak but there's an important difference between Bool and Array.
20:42 masak Bool is an enum type.
20:43 bacek rakudo: my Bool $b = 5; say $b
20:43 polyglotbot OUTPUT[Type check failed␤current instr.: 'parrot;Perl6Object;infix:=' pc 60 (src/gen_builtins.pir:52)␤called from Sub '_block11' pc 80 (EVAL_12:38)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 866 (src/PCT/HLLCompiler.pir:501)␤called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1141
20:43 polyglotbot ..(src/PCT/HLLCompiler.pir:631)␤called from Sub 'parrot;PCT...
20:43 bacek rakudo: my Bool $b = Bool::True; say $b
20:43 polyglotbot OUTPUT[1␤]
20:44 masak bacek: http://groups.google.com/group/perl.perl6.la​nguage/browse_thread/thread/7355d54d033877fb
20:44 bacek rakudo: enum Foo<a b c>; my Foo $f = 'a'; say $f
20:44 polyglotbot OUTPUT[Type check failed␤current instr.: 'parrot;Perl6Object;infix:=' pc 60 (src/gen_builtins.pir:52)␤called from Sub '_block17' pc 80 (EVAL_15:38)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 866 (src/PCT/HLLCompiler.pir:501)␤called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1141
20:44 polyglotbot ..(src/PCT/HLLCompiler.pir:631)␤called from Sub 'parrot;PCT...
20:44 bacek rakudo: enum Foo<a b c>; my Foo $f = a; say $f
20:44 polyglotbot OUTPUT[too few arguments passed (0) - 1 params expected␤current instr.: '_block49' pc 534 (EVAL_15:163)␤called from Sub '_block17' pc 76 (EVAL_15:36)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 866 (src/PCT/HLLCompiler.pir:501)␤called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1141
20:44 polyglotbot ..(src/PCT/HLLCompiler.pir:631)␤called from Sub 'parrot;P...
20:47 bacek rakudo: enum Foo<a b c>; my Foo $f = Foo::a; say $f
20:47 polyglotbot OUTPUT[0␤]
20:47 bacek rakudo: enum Foo<a b c>; my Foo $f = Foo::c; say $f
20:47 polyglotbot OUTPUT[2␤]
20:47 bacek rakudo: enum Foo<a b c>; my Foo $f = Foo.pick; say $f
20:47 polyglotbot OUTPUT[Type check failed␤current instr.: 'parrot;Perl6Object;infix:=' pc 60 (src/gen_builtins.pir:52)␤called from Sub '_block17' pc 92 (EVAL_15:41)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 866 (src/PCT/HLLCompiler.pir:501)␤called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1141
20:47 polyglotbot ..(src/PCT/HLLCompiler.pir:631)␤called from Sub 'parrot;PCT...
20:47 bacek rakudo: enum Foo<a b c>; my $f = Foo.pick; say $f
20:47 polyglotbot OUTPUT[␤]
20:48 bacek rakudo: enum Foo<a b c>; say Foo.pick.WHAT
20:48 polyglotbot OUTPUT[List␤]
20:48 bacek masak: looks like Enum.pick not implemented correctly
20:49 masak bacek: no, the spec addition is too new.
20:52 bacek implementing Enum.pick is not easy task for rakudo... There is no "Enum" class. They just register values in own namespace.
21:13 dalek r32454 | Whiteknight++ | calling_conventions:
21:13 dalek : [calling_conventions] Add "Pi" to the front of a call signature when we have an invocant. No other functions use this yet.
21:13 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32454
21:33 masak I just want to note that RT #60304 is annoying from an app developer's perspective.
21:34 masak instead of catching spelling errors early, they're caught late -- and no clues are given as to where they are.
21:36 nopaste "bacek" at 123.243.38.218 pasted "Fix for #60304 for masak :)" (15 lines) at http://nopaste.snit.ch/14515
21:36 masak haha :)
21:36 bacek $ ../../parrot perl6.pbc -e '$x'
21:36 bacek Scope not found for PAST::Var '$x'
21:37 masak bacek: care to attach that to the ticket as well?
21:37 bacek I have a problem with ISP. I can't update RT...
21:37 masak bacek: ah, what the heck, cancel that. I'll apply it immediately.
21:37 masak I can't imagine that this one is wrong.
21:37 masak running spectests before just to make sure.
21:37 bacek masak: you very welcome :)
21:38 masak bacek: sposibo :)
21:38 bacek masak: pozhaluista :)
21:38 masak sechas mi govorim po ruski.
21:43 masak bacek: I can't make with your patch applied.
21:44 masak can you?
21:44 bacek masak: I don't have commit bit.
21:44 masak bacek: what I mean is:
21:44 masak apply your own patch locally.
21:44 masak can you run make after that?
21:44 bacek yes.
21:44 masak I can't.
21:44 bacek what error says?
21:45 masak there are lots of other 'goto scope_error' in the sub
21:45 masak and the patch removed that label
21:45 bacek no,
21:45 masak I see.
21:45 masak but that's what it says.
21:45 bacek I added another one 'scope_error_ex'
21:45 masak I see.
21:45 bacek oh shit. I forgot last line from patch!
21:45 masak http://nopaste.snit.ch/14515
21:46 masak ok.
21:46 masak that's why patch didn't want to apply it for me
21:46 masak I had to do it by hand
21:46 nopaste "bacek" at 123.243.38.218 pasted "Fix for #60304 for masak :)" (19 lines) at http://nopaste.snit.ch/14516
21:47 * bacek will never paste patches from vim window directly...
21:47 masak bacek: you should make a vim macro that creates nopastes instead.
21:49 bacek hmm. This is idea.
21:50 masak do it!
22:07 bacek masak: does second version of patch works for you?
22:08 masak bacek: Result: PASS
22:08 masak bacek: committing.
22:08 bacek masak: good :)
22:08 masak horosho.
22:11 dalek r32455 | masak++ | trunk:
22:11 dalek : [PAST] fixed bug that caused variables not to be recognized at compile-time [RT #60304]
22:11 dalek : patch courtesy of Vasily Chekalkin (bacek++)
22:11 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32455
22:12 nopaste "bacek" at 123.243.38.218 pasted "Compiler.pir.vcs" (19 lines) at http://nopaste.snit.ch/14517
22:12 bacek Ho! It works!
22:13 bacek masak++ # for good ideas :)
22:13 masak bacek++ # for attempting them :)
22:13 TiMBuS joined #parrot
22:13 masak automation++ # that's what computers are for!
22:16 bacek rakudo: say pick("1")
22:16 polyglotbot OUTPUT[␤]
22:16 bacek rakudo: say pick(("1"))
22:16 polyglotbot OUTPUT[␤]
22:17 bacek hmm...
22:17 bacek rakudo: say pick(("1", "2"))
22:17 polyglotbot OUTPUT[␤]
22:17 bacek rakudo: say pick("1", "2")
22:17 polyglotbot OUTPUT[2␤]
22:22 masak those first three outputs look like a bug.
22:23 chromatic They look more like hoes than picks.
22:23 pmichaud rakudo: say pick(5, 1..100);
22:23 polyglotbot OUTPUT[6184653188␤]
22:23 pmichaud rakudo: say pick(5, 1..100).join(' ');
22:23 polyglotbot OUTPUT[58 47 56 5 79␤]
22:24 pmichaud they all look correct to me.  :-)
22:24 masak ar.
22:24 masak aye.
22:28 Limbic_Region joined #parrot
22:39 Theory joined #parrot
22:40 bacek joined #parrot
22:43 dalek r32456 | pmichaud++ | trunk:
22:43 dalek : [rakudo]:  spectest-progress.csv update: 210 files, 4439 passing, 4 failing
22:43 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32456
22:48 dalek r32457 | fperrad++ | trunk:
22:48 dalek : [forth]
22:48 dalek : - fix syntax
22:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=32457
23:02 silug joined #parrot
23:04 bacek joined #parrot
23:05 Psyche^ joined #parrot
23:16 bacek karma bacek
23:16 purl bacek has karma of 75
23:16 bacek little bit more
23:17 Whiteknight bacek.needs(commit_bit);
23:18 bacek Whiteknight: I promised myself that will no ask for commit bit before karma 100 :)
23:19 masak heh
23:19 masak bacek++
23:19 bacek masak: cheating! Look at #59596 :)
23:20 masak :)
23:20 masak bacek: I'm not PIR-savvy enough yet to judge such code.
23:20 masak even I submit things like that through RT for review.
23:44 bacek joined #parrot
23:46 bacek my ISP really suck for last few days...
23:48 bacek anyone know how "add_method" works?
23:49 chromatic Magic.
23:49 bacek ETOOMUCHMAGIC
23:53 chromatic Basically the Class PMC adds subs into the appropriate NameSpace.
23:55 nopaste "bacek" at 123.243.38.218 pasted "add_method.pir" (15 lines) at http://nopaste.snit.ch/14518
23:56 bacek chromatic: I've got Method 'foo' not found for invocant of class 'Role'
23:56 bacek what I doing wrong?
23:57 chromatic Something in whatever r is, I suppose.
23:58 bacek r is just Role.

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

Parrot | source cross referenced