Parrot 0.8.1 "Tio Richie" Released | parrot.org | 588 RT | 11 trac
Set by moderator on 5 December 2008.
pmichaud another advantage of the recursive approach is that it very quickly short-circuits on an empty list 00:00
if any of the arguments are empty, we don't create many wasted sublists.
jonathan Yes, it'll do better in those cases.
Anyway, I'll likely be gone for sleep before you return 00:02
So have a nice couple of days trip, wherever it is. :-)
dalek r33736 | pmichaud++ | trunk:
: [rakudo]: Refactor infix:<X> to avoid numeric list indices.
pmichaud it's for work -- down to visit with PerlJam
dalek diff: www.parrotvm.org/svn/parrot/revision?rev=33736
pmichaud I'll try to be online as much as I can 00:03
I'm eager to keep doing stuff here.
jonathan Yes, same.
I'm hopeful for some news on my grant soon. :-)
er, grant application
pmichaud it took a few weeks for me to get news on mine 00:04
jonathan Plus want to get more done on bytecode annotations soon.
pmichaud and even longer before it was "official"
jonathan *nod*
pmichaud but I'm sure you'll be able to have an early start date
bytecode annotations would be really good.
00:04 bacek_ joined
pmichaud actually, I think my blog post will be "It's beginning to look a lot like Christmas..." 00:05
jonathan :-) 00:06
pmichaud and yes, thank you very much for giving me the stage for list assignment and slices 00:07
those are nice milestones 00:08
okay, time for me to go play daddy for a while.
bbl
jonathan have fun :-)
dalek r33737 | Whiteknight++ | calling_conventions: 00:15
: [calling_conventions] update to trunk r33736
diff: www.parrotvm.org/svn/parrot/revision?rev=33737
00:16 allison joined
davidfetter pmichaud, yay for christmas :) 00:20
Alias_ Regarding the spec tests 00:22
I've watched the graph growing, and I've seen some of chromatic's posts on it
But the graph just gives numbers, it doesn't show anything as a percentage 00:23
There's no mention of how many there are total...
Could this be added? It feels really weasel'y/sneaky to talk about spec test PASS growth in glowing terms without actually giving a basis for the number 00:24
I've had a similar comment from a few other people too
chromatic We'd have to measure the total number somehow, but it would make a nice burnup chart.
Alias_ Is there a way to just globally turn them all on 00:25
Disable todo or something
(Or however it's done)
chromatic I'm not sure. Some of them are parsefails.
00:25 Limbic_Region joined
jonathan Alias_: Do you mean a percentage of the spectests that we pass out of those in existence? 00:25
chromatic A static parse of the test files themselves could add up all of the plan numbers.
Alias_ Estimate by file average test count for the parsefails?
jonathon: Yes 00:26
I didn't have an issue with it till we aquired a graph :)
jonathan Alias_: That's a moving target, if that's not clear.
I believe but may be wrong that if you see
www.pmichaud.com/perl6/rakudo-tests...-12-08.png
Then the grey line is the total number of spectests. 00:27
Alias_ "Your organisation's Internet use policy restricts access to this Web Page at this time. "
Stupid nanny filters
jonathan Though it's not clear from the label. :-)
Alias_ has discovered all new levels of "The internet does not look like what you think it looks like" lately
OK, on the VPN 00:31
So the grey line is the number of spectests that don't parsefail?
jonathan No, I think that's the total number of spectests. 00:33
Alias_ So you are writing the spectests as you go?
How does that relate to the pugs tests?
jonathan The process is along the lines of, review pugs tests against the spec as it stands today (because there are plenty of out of date or just wrong ones) and move them into t/spec, cleaning them up along the way. 00:34
A lot of the time today when I implement or fix something, I'm not writing a new test, but rather unfudging something already in t/spec
Sometimes I'll write some new ones, if I don't feel there are already ones that cover the feature or fix in question (or exercise it enough). 00:35
And we often get bug reports, which lead to tests being added. We unfudge the tests on closing the ticket.
(So we don't regress on that bug.)
Infinoid from that graph, seems like people are adding more tests that pass under rakudo than ones that fail 00:36
jonathan So yes, we are acquiring new spec tests all the time.
Infinoid it's a beautiful thing
Whiteknight if you had to take a guess in the dark, about what percentage complete is Rakudo? 00:37
and I know that the spec is a moving target
jonathan Is the question, how complete is Rakudo as in what percentage of the spec does it implement? 00:42
Or how complete are we in terms of the work that needs to be done to get a working implementation of Perl 6? 00:43
Those have very different answers.
Like, I'm not sure we can even claim to do 25% of the spec yet.
But if you factor in Parrot too, which is a dependency for Rakudo, we've certainly done a lot more than that amount of the work! 00:44
mugwump how about enough of the perl 6 features that there are no important perl 5 idioms which don't work 00:45
00:45 apeiron joined
jonathan I think we took a huge step forward on that in the last few days with slices and list assignment... 00:46
It's hard to guess that too - depends on what your set of Perl 5 idioms are and how you choose to translate them to Perl 6. :-)
particle without smartlinks in the spectests to give us at least a visual representation of spec coverage, we have little way of judging any coverage
jonathan If that could be done right, it'd be a help in assessing that, yes. 00:47
particle it can be done right, but requires many hands
jonathan Yes.
Hopefully we'll attract more and more of those. :-) 00:48
mugwump eg, if all of the code fragments in the first three chapters of the camel work ... That could be a 1.0
by "work" here, I mean "translate well and work" :)
particle get those code fragments into files in the pugs repo, and we'll have a start at it 00:49
mugwump true, why not
jonathan mugwump: One of *the* most useful things is people actually writing stuff using Rakudo and pointing out what they miss. 00:50
mugwump sure
jonathan That gives some hints to those implementing features as to what's needed.
Or what's wanted most.
There's some things that are just plain hard or have dependencies and aren't going to be done within a few days. But there are others that if people ask for, can be dropped in within a short timeframe too. 00:51
Whiteknight well, I guess my question isn't one of spec coverage but of man hours. How much work has gone into Rakudo compared to the total amount it's going to take for a 1.0 release
jonathan I don't know, because I haven't sat down with the spec and spent much time going through "we do X, we don't do Y" etc. 00:52
Whiteknight As more ground work gets laid, I'm sure spec coverage will start coming in a flood
mugwump ok. the hard things.
purl the hard things are possible in PHP
Whiteknight purl forget the hard things 00:53
purl Whiteknight: I forgot hard things
Whiteknight damn straight you did
jonathan S12 is maybe the one I've got the best idea of our coverage on.
mugwump what things need to actually be right to stop a bunch of Perl 6 users from being turned off from it
I'm thinking Objects and Classes, threading etc and MMD 00:54
method signatures
jonathan Like, if you take every section in S12, there are 5-6 of them that I'd say we have nothing done on yet.
mugwump that's the OO one isn't it? What's missing? 00:55
Whiteknight I think that Rakudo is progressing marvelously, and the fact that it can support things like November is inspiring
thats my view as an outsider looking in
jonathan mugwump: That'd be quite a list...
mugwump can you summarise or exemplify?
Whiteknight (i think he's looking for a job to do) 00:56
particle i don't think we have metaclass methods yet
mugwump hmm. 00:57
particle our $count; method ^count { return $count }
00:57 MagnusShortwave joined
jonathan submethods, parallel dispatch, parametric roles, filling out some of the metaclass stuff for introspection, a bunch of construction order stuff 00:57
declaring traits
chromatic Construction order is probably the most important.
jonathan "is instead" 00:58
particle ~80% of the stuff you'll do with p6oo in day-to-day code is done
jonathan chromatic: BUILD submethod depends on submethods, so in that sense they are kinda important.
particle: I think I'd agree with you on that.
mugwump I think that good and thorough introspection is also very important to have rock solid from the beginning
chromatic I go back and forth whether you NEED submethods to get BUILD working for now. 00:59
mugwump actual metaclass methods ... well that's an advanced feature
jonathan We have what we need in Parrot to handle the introspection, I think.
It's just filling out the various methods in the metaclass.
particle i agree with that.
mugwump how complete is the method signature support? 01:00
Whiteknight what's funny is that I first joined parrot to support perl6, and I dont understand a thing that you just said needs to get done
jonathan Common stuff is pretty complete. The whole list/object unpacking stuff is non-existent yet, but that's in the realm of advanced stuff.
We're doing good on multiple dispatch.
particle Whiteknight: so, i just did a trace on the cc $key lex failure 01:01
Whiteknight particle, anything good?
particle sure enough, it's not finding it in the hash.
jonathan And signatures are introspectable too.
mugwump MMD would really be a point of distinction of the object system, good to hear
Whiteknight so what does that mean? 01:02
jonathan Whiteknight: Which bit?
purl Which bit is probably the time part? Anyone?
mugwump Whiteknight: that's when you have a method with multiple invocants
particle Whiteknight: it means i have to trace even closer this time, and find out why it's not set in the hash O_o
jonathan Oh, Whiteknight was talking to particle. :-) 01:03
particle Whiteknight: here's what i did:
bacek_ jonathan: what is expected behavior for "class A { has $.a = { die }; }; my $a=A.new(a=>42); my $b = A.new"?
particle add 'trace 7' just before .lex "$key", param_97 in languages/perl6/src/gen_actions.pir (~line 214) 01:04
bacek_ wants mandatory attributes in classes.
particle c:\\Users\\particle\\dev\\parrot\\calling_conventions\\languages\\perl6>C:\\usr\\msvs-9.0\\Common7\\IDE\\devenv.exe /debugexe ..\\..\\parrot.exe perl6.pir --target=pir --output=Test.pir Test.pm
NOTE: use gdb or whatever, but use perl6.pir and not perl6.pbc to get the changes to gen_actions.pir 01:05
set a breakpoint at src/ops/core.ops line 1007 (trace op)
then tiptoe through the code 01:06
jonathan bacek_: I *think* that would give you $.a holding a block.
We're meant to make a closure of the thing on the RHS, but ain't doing that yet.
lathos Yeah, I would expect that to be $self->{a} = sub { die }; 01:07
jonathan As far as I follow the spec, that's what you'd get.
So has $.x = rand; we currently get wrong 01:08
But I think has $.x = { die } we probably get right...
rakudo: class Foo { has $.x = { die } }; say "ok"; my $y = Foo.new; say "ok 2"; say $y.a.WHAT; say $y.a() 01:09
polyglotbot OUTPUT[ok␤ok 2␤Method 'a' not found for invocant of class 'Foo'␤current instr.: '_block11' pc 96 (EVAL_13:33)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 892 (src/PCT/HLLCompiler.pir:508)␤called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1216 (src/PCT/HLLCompiler.pir:669)␤called from Sub
..'parrot;PCT;HLLCompiler;command_line' pc 1392 (sr...
jonathan rakudo: class Foo { has $.x = { die } }; say "ok"; my $y = Foo.new; say "ok 2"; say $y.x.WHAT; say $y.x()
polyglotbot OUTPUT[ok␤ok 2␤Block␤_block20␤]
jonathan Hmm.
rakudo: class Foo { has $.x = { die } }; say "ok"; my $y = Foo.new; say "ok 2"; say $y.x.WHAT; say $y.x.()
polyglotbot OUTPUT[ok␤ok 2␤Block␤_block20␤]
jonathan rakudo: class Foo { has $.x = { die } }; say "ok"; my $y = Foo.new; say "ok 2"; my $z = $y.x; $z(); 01:10
polyglotbot OUTPUT[ok␤ok 2␤Died␤␤current instr.: 'die' pc 13559 (src/builtins/control.pir:168)␤called from Sub '_block20' pc 283 (EVAL_12:96)␤called from Sub '_block11' pc 127 (EVAL_12:41)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 892 (src/PCT/HLLCompiler.pir:508)␤called from Sub
..'parrot;PCT;HLLCompiler;evalfiles' pc 1216 (src/PCT/HLLCompiler.pir:669...
01:10 ChrisDavaz joined
jonathan Curious. 01:10
purl hands jonathan a dead cat
jonathan There's a bug in there somewhere, I suspect.
But it doesn't look to be in the initialization.
bacek_ rakudo: class A { has $.a = die }; 01:11
polyglotbot OUTPUT[Died␤␤current instr.: 'die' pc 13559 (src/builtins/control.pir:168)␤called from Sub '_block14' pc 98 (EVAL_12:44)␤called from Sub 'parrot;PCT;HLLCompiler;evalpmc' pc 830 (src/PCT/HLLCompiler.pir:475)␤called from Sub 'parrot;PCT;HLLCompiler;compile' pc 428 (src/PCT/HLLCompiler.pir:301)␤called
..from Sub 'parrot;PCT;HLLCompiler;eval' pc 862 (...
bacek_ it doesn't look good...
Why it died?
afk # lunch 01:13
jonathan bacek_: No idea, I suspect on creating the protoobject. 01:14
oh 01:15
No, probalby earlier than that
As I said, needs to be transformed into a closure on the RHS yet.
(But that needed changes to WHENCE stuff too, I suspect...) 01:16
lathos $.a = die should die. 01:18
(And does.)
$.a = { die } shouldn't die (and doesn't). 01:19
jonathan lathos: It should die on instantiation.
We're dieing too young at the moment, if I understand the spec correctly. 01:20
Infinoid must die harder.
lathos Which one should die on instantiation? 01:21
mugwump hey are there enough hooks in Rakudo to write a functional debugger? 01:22
jonathan lathos: class Foo { has $.x = die; }
We should transform that to method { die } and invoke this anonymous method. 01:23
(Invoke it per instantiatoin)
lathos Ah, yeah.
jonathan But I expect that to play out interestingly (as in, be more than a few minutes work to sort out) with WHENCEs. 01:25
01:25 chromatic joined
jonathan And I wanted to give people at least soemthing for the basic cases. 01:25
01:46 DietCoke joined
DietCoke moritz: any reason not to put trac.parrot.org/parrot/wiki/PerlSixTesting in pugs with the other syn? 01:47
01:49 jimmy joined
dalek will@coleda.com | Field Guide to Parrot Porters: 01:49
link: www.perlfoundation.org/parrot/index...ot_porters
will@coleda.com | useful_rt_queries: 01:50
link: www.perlfoundation.org/parrot/index...rt_queries
Whiteknight just ran a make fulltest to practice for the release, a few tests are UNEXPECTEDLY SUCCEEDING 01:56
that's better then failures
Coke ponders the fun of trying to track down a GC bug. 01:58
Whiteknight what's the bug? 01:59
purl i heard the bug was www.cbttape.org/funny/bug3.jpg or img227.imageshack.us/img227/2596/featureiu1.jpg
Coke TT#10 02:00
cotto Is the last test in t/pmc/exceptions.t still failing on Darwin/PPC?
Whiteknight purl++
cotto it'd be nice to get that unTODOd so make test stops complaining that it passes
seen kid51 02:02
purl kid51 was last seen on #parrot 12 hours, 54 minutes and 32 seconds ago, saying: smolder.plusthree.com/app/public_pr...tails/8487 reports all tests passing on Linux.
cotto guess not 02:04
dalek r33738 | coke++ | trunk: 02:08
: Stop opening RTs; use trac's milestone instead.
: Also, some untested updates to the release verbage JSON templates. Whiteknight++ beware!
diff: www.parrotvm.org/svn/parrot/revision?rev=33738
tewk coke I thought I would look again 02:17
Method 'slurp' not found for invocant of class 'FileHandle' 02:18
current instr.: '_main' pc 200 (src/tclsh.pir:134)
I'll try readall 02:21
Coke tewk: you probably want partcl's parrot_io branch. 02:34
(makes all the changes required for the pdd mergeback)
Whiteknight I feel like the test harness should never "complain" when a test unexpectedly passes 02:38
Alias_ It should, however, note it at the end 02:42
Didn't this argument go back and forth a few times around the discoball? 02:43
Unexpected-pass-as-error vs unexpected-pass-as-curiosity
s/discoball/mirrorball/ 02:46
pmichaud (test size) -- I suspect the concepts in my post of July 1 are still valid, although the numbers certainly arent 02:52
www.rakudo.org/2008/07/wheres-the-goal-line.html
we can also provide some interesting statistics on the synopses -- one moment 02:54
nopaste "pmichaud" at 72.181.176.220 pasted "some synopses statistics" (14 lines) at nopaste.snit.ch/14888 02:55
pmichaud the list of tests there is the number in the rakudo regression suite, not the total number of tests.
I have a script that gives me the total number of tests... 02:56
oh, I _had_ a script. :-( 02:57
03:00 allison joined 03:29 MariachiElf joined 03:33 Hadi joined 03:34 Hadi left
dalek r33739 | jkeenan++ | testparrottest: 03:34
: Begin developing tests for $ENV{POSTMORTEM}.
diff: www.parrotvm.org/svn/parrot/revision?rev=33739
lathos t/spec/S12-class/declaration-order just exploded at me. Failed assertion. 03:46
particle lathos: that's been a known failure for weeks
lathos Ah, OK. 03:47
particle if it's not fixed soon, it'll be a regression for the release
chromatic I've secretly hoped that the calling conventions branch would fix that, or at least make the fix trivial. 03:49
Coke msg Whiteknight I added a 0.8.2 milestone for tickets on trac for you.
purl Message for whiteknight stored.
Coke chromatic: I peeked at the GC bug attached to the 0.8.2 milestone; it's stringses, not pmcs.
chromatic Strings are easier to debug. 03:50
Is there a ticket number?
Coke trac.parrot.org/parrot/ticket/10 03:51
svn bisect says it's caused by this: svn.perl.org/viewvc/parrot?view=rev...sion=33351 03:53
If you can fix it, I'll throw five bucks into the next salvation army bucket I see. =-) 03:54
chromatic What if you revert the changes to the NameSpace PMC from that commit?
pmichaud oh geezum, declaration-order only has _two_ tests in it? 03:56
pmichaud regresses it.
Coke chromatic: segfault goes away. 03:59
chromatic sub->method_name is weird in Tcl Subs, I guess. 04:00
Coke since I have a PIR override of .Sub, that doesn't surprise me.
chromatic Do you know what type of PMC you're sticking in the namespace here? 04:01
Coke s/override/subclass/
dalek r33740 | pmichaud++ | trunk:
: [rakudo]: Remove declaration-order.t from spectest.data for now.
: It causes a failed assertion in Parrot (which is proving stubborn
: to fix), and would only give us two passing tests for now anyway.
Coke No, but I'm guessing it's a TclProc
dalek : Perhaps it'll clear up when we refactor signatures and class construction.
diff: www.parrotvm.org/svn/parrot/revision?rev=33740
chromatic Ahh, so the PMC is an object, not a Sub PMC.
04:01 elmex_ joined
chromatic Poking into its guts directly here with PMC_sub(pmc) is going to give us the wrong answer. 04:02
Coke surprised it's a GC error. 04:03
chromatic We should add some introspection magic into the Sub PMC and use that instead.
It's not a GC error.
Coke but it goes away with -G.
chromatic That doesn't make it a GC error.
That just changes the layout of memory.
If you never recollect garbage GCables, you're going to have the error in a different memory location. 04:04
Coke chromatic: thanks for the confirmation on the cause of the bug. 04:08
chromatic I'll have a patch for you shortly. 04:09
Coke that would be most appreciated.
particle .lex "$key", param_97 04:11
find_lex $P2, "$key"
no store_lex needed, right?
particle wonders if the errors on the calling_conventions branch are msvc only 04:13
Coke particle: I'll see if it builds on osx/intel 04:16
particle coke: it's building rakudo's Test.pm where i get the problem
Lexical '$key' not found
either the LexPad isn't attached to the context properly, or the .lex entry doesn't make its way into the pad 04:17
i'm at a loss for debugging
chromatic: any hints? 04:18
purl NONE
Coke ok, I thought you meant a parrot issue.
particle coke: it is a parrot issue
it's the single bug preventing the merge of the calling_conventions branch to trunk
Coke really? I get manifest errors trying to build the branch. 04:19
particle hrmm, i wonder if i need to update, someone might have merged trunk to the branch today....
Coke though, oddly, the failed manicheck no longer aborts configure. 04:20
->
chromatic particle, none immediately come to mind.
particle chromatic: how can i check that .lex actually worked?
it's not an op, so i can't trace 04:21
chromatic You should be able to dump the Sub PMC within the debugger and look at its lex pointer.
particle breakpoint in imcparser.c didn't trigger
hrmm
nopaste "chromatic" at 69.64.234.10 pasted "(untested) Patch for Coke" (161 lines) at nopaste.snit.ch/14889 04:22
chromatic No guarantees, but see what that does. 04:23
PGE fails to build for me with that (I think), but it's reasonably solid. 04:25
Andy particle rushes to my rescue! What a sweeetie! 04:32
particle *swak* 04:33
mugwump mail.pm.org/pipermail/wellington-pm...00973.html 04:38
particle mugwump++ 04:47
pmichaud particle: still chasing the lex error? 04:51
PerlJam pm: shouldn't you be getting some rest for your journey tomorrow? :-) 05:00
pmichaud PerlJam: have a few things I need to get done here first
also, I normally fly out on little sleep :-| 05:01
PerlJam have you looked at the spectests for the min method?
pmichaud no
PerlJam I don't understand why the first test is ok. 05:03
my @array = <5 -9 7 0 1 -3>; is @array.min, -3, "basic method form of min works";
it not -9 the min?
s/it/is/
pmichaud it is not.
PerlJam or am I missing something obvious?
pmichaud you're missing something obvious. :-)
hyphen comes before 0 05:04
PerlJam oh, it's not numeric comparison
duh
too much dwimmy stuff makes me expect it everywhere :)
I was going to look for some indexes that should be iterators and change them before going to sleep tonight and I've already gotten sidetracked looking at other things. 05:06
pmichaud you mean in the source?
PerlJam yes
pmichaud er, PIR source?
it's easy to get sidetracked these days
PerlJam What's the difference between foo.'iterator'() and iter foo? The former just seems like an extra indirection. 05:08
pmichaud actually, the latter is often the extra indirection :-)
because we're having to make vtable functions delegate to the method form :-) 05:09
anyway, I recommend using iter foo for now
I don't have a strong case either way at the moment.
(rakudo now passing 4886 spectests. 114 to go.)
PerlJam lookings at src/classes/List.pir, it looks like foo.'iterator' calls !flatten before calling iter. 05:10
(for that class anyway)
pmichaud hmmm 05:11
!flattening is probably normalish
PerlJam Is there already an RT ticket for the index-needs-to-be-an-iterator jihad? :-) 05:19
pmichaud no, probably not.
I'm not too worried about the current PIR code, if only because I hope much of this can be rewritten in p6 relatively soon anyway. 05:20
as soon as we can get signatures fixed up
PerlJam yeah, but it gives me something to do so that I can get my head into the code.
pmichaud works for me
anyway, no ticket for it yet
I was just fixing them as I came across them. 05:21
I bet I can find one, though.
another thing is that many of the methods that are in List.pir really belong in any-list.pir
grep and map being two of the obvious ones.
PerlJam uniq, infix:<min>, and infix:<max> look like they need some iterator love
pmichaud uniq also belongs in any-list.pir 05:22
yes, min and max should be written in terms of iterators and not indexes
I'm not sure if infix:min belongs in List.pir 05:24
and it seems to me that they should be (re)using the .min and/or .max methods on List
PerlJam is iter = new 'Iterator', self obsolescent or what?
pmichaud yes 05:25
get rid of those wherever you see them.
unless there's a comment there that says "don't change this" :-)
PerlJam heh
jimmy what is HackAthonYAPCEU2008?
pmichaud (which there haven't been any yet)
PerlJam :q 05:26
oops
pmichaud ['q' => 1] 05:27
PerlJam Mapping.pir, List.pir, IO.pir, and Protoobject.pir all appear to be using new 'Iterator'
pmichaud yes, there are quite a few of those still hanging about.
jimmy have known what is HackAthonYAPCEU2008 05:32
dalek r33741 | pmichaud++ | trunk: 05:59
: [rakudo]: List assignment on my/our declarations works.
diff: www.parrotvm.org/svn/parrot/revision?rev=33741
06:09 Theory joined 06:10 petdance joined
leto anyone mind me renaming "Starting from the bottom" on the Parrot wiki to a more useful name? 06:10
i am porting the perlfoundation wiki over to the tracwiki, and "Starting from the bottom" is possibly one of the most useul pages on the wiki and it is completely buried and ambiguously named 06:11
s/useul/useful/ 06:12
pmichaud it's a wiki. change it how you see fit.
leto indeed, just sending out a ping
cotto go for it 06:17
dalek r33742 | duff++ | trunk:
: Change instances of "new 'Iterator', foo" to use "iter foo" instead
diff: www.parrotvm.org/svn/parrot/revision?rev=33742 06:18
leto at first glance, it seems that tracwiki does not support file attachments 06:24
perhaps the plugin must be installed 06:25
GeJ pmichaud++ for assign and journal 06:28
Tene Is X supposed to flatten, or am I doing it wrong? 06:29
pmichaud we don't have slice context implemented yet
@@( ... ) will keep it from flattening.
or something like that. 06:30
(when we implement it.)
but one can do
for @foo X @bar X @baz -> $foo, $bar, $baz { ... }
Tene But I can't assign the list of lists to anything?
pmichaud and that gets them all in groups
you can assign it to an array 06:31
(yes, it flattens if you do that)
I don't write the spec, I just implement it.
Tene Should binding also flatten?
pmichaud it probably doesn't flatten, but you'd have a hard time knowing that.
or detecting it. 06:32
the details of slices are still a bit murky, at least to me. The spec doesn't spell them out super clearly yet.
06:32 Hadi1 joined
Tene Huh. 06:32
rakudo: my @a := 1..3 X 4..6; say @a.perl 06:34
polyglotbot OUTPUT[1..3␤]
Tene Is that associativity right?
pmichaud binding is tighter than X
06:34 davidfetter joined
Tene Okay. 06:34
pmichaud because X is a list operator
Tene Binding being different than assignment was confusing to me. 06:35
pmichaud assignment has two precedences, depending on its lhs
Tene Ah.
pmichaud item assignment is tighter; list assignment is looser
Tene nods
06:37 uniejo joined
pmichaud hmm, perhaps infix:X should be returning a list of Captures 06:41
06:42 allison joined
leto facepalms as he finds the "attach file" button on the tracwiki 06:46
07:05 Zaba joined
dalek r33743 | duff++ | trunk: 07:13
: [rakudo] Changed uniq, min, and max to use iterators
diff: www.parrotvm.org/svn/parrot/revision?rev=33743
07:14 Zaba joined
particle pmichaud: ping 07:19
pmichaud pong
particle i'm still chasing that error
pmichaud alas, I'm about to head to bed, and have to leave for airport in 4 hours. 07:20
particle c'est la vie
pmichaud which test # is failing?
particle Test.pir fails to build
.lex '$key', param_97 07:21
pmichaud this is in the calling conventions branch, yes?
particle find_lex '$key', $P102
Lexical '$key' not found
yes
pmichaud can you narrow it down to the sub that is failing?
or does that cause the error to disappear?
particle yes, statement_block
pmichaud no, I meant the sub in Test.pm
moritz good morning Europe, good evening America ;-)
pmichaud 01:22 here 07:22
moritz (and good localtime() everybody else, of course)
particle gen_actions.pir, line 227 or so
pmichaud I meant the sub in Test.pm
i.e., if you start making Test.pm smaller, does the error disappear?
iwbn to know if it's a particular construct in Test.pm that is causing the error to manifest 07:23
particle i haven't tried to narrow it down yet to a smaller case. i can do that tomorrow
pmichaud that's what I would do -- see if it disappears if you start removing subs from Test.pm
particle it's running the grammar
PerlJam moritz: as long as I'm awake my day hasn't ended, so if you apply similar logic to everybody else, 'good day' always works.
particle the perl 6 grammar fails
pmichaud I don't understand "the perl 6 grammar fails"
particle nopaste.snit.ch/14883 07:24
sorry, i'm tired myself
pmichaud the nopaste just tells me that something is failing in an action method 07:27
PerlJam pm: it's cold and wet here right now. If we could have scheduled your trip to be 2 days earlier you would have had 2 warm and mild days
pmichaud PerlJam: it's colder here right now. :-)
dalek r33744 | pmichaud++ | trunk:
: [rakudo]: spectest-progress.csv update: 235 files, 4884 passing, 0 failing
diff: www.parrotvm.org/svn/parrot/revision?rev=33744
pmichaud yesterday was mild
last night we had a tornado warning (sirens and all)
PerlJam 12 hours ago it was ~80degF. Now it's close to 40degF 07:28
07:28 Zaba joined
PerlJam and it's raining 07:28
pmichaud 12 hours ago it was ~60degF, now it's around 28degF
pmichaud checks
moritz shivers at 0°C
pmichaud 31.4 07:29
so basically 0degC
PerlJam well, it's bed time for me ... good night all 07:30
PerlJam &
pmichaud same here
moritz good night
particle ~~
pmichaud particle: try chipping away at Test.pm and see if you can get a smaller file to fail in the same way
particle yeah, will do
pmichaud have you tried -G ?
particle no, i haven't
pmichaud okay, that's another possibility. 07:31
anyway, gone for a while -- back tomorrow evening.
particle i made the mistake of updating the branch, now i have to fix manifest and rebuild
thanks, i have plenty of ideas to keep me busy now :)
07:49 samlh joined
dalek r33745 | particle++ | calling_conventions: 08:04
: [config] remove make targets for deleted files
diff: www.parrotvm.org/svn/parrot/revision?rev=33745
r33746 | particle++ | calling_conventions:
: [tools] fix script filename generation to use forward-leaning slashies in manifest comment, even on windows
diff: www.parrotvm.org/svn/parrot/revision?rev=33746
r33747 | particle++ | calling_conventions:
: [manifest] regen
diff: www.parrotvm.org/svn/parrot/revision?rev=33747
08:10 mberends joined
dalek r33748 | particle++ | calling_conventions: 08:13
: [src] headerizer updates
diff: www.parrotvm.org/svn/parrot/revision?rev=33748
r33749 | tene++ | trunk: 08:15
: [pct]: Support exception handlers on PAST::Blocks.
diff: www.parrotvm.org/svn/parrot/revision?rev=33749
Tene I'd feel uncomfortable having this EH stuff in PCT in the release without some sort of PCT prelude so we can get .include stuff working 08:20
We could just use explicit exception numbers instead of names, but that's less than ideal. 08:21
08:28 iblechbot joined
dalek r33750 | fperrad++ | trunk: 08:29
: [WMLScript]
: - refactor exception handling (with rethrow)
diff: www.parrotvm.org/svn/parrot/revision?rev=33750
08:36 gaurav joined 08:45 MariachiElf joined
dalek r33751 | chromatic++ | trunk: 08:59
: [PDD] Reviewed Numbers PDD; minor edits to formatting and phrasing. Sadly,
: IBM's Standard Decimal Arithmetic Standard is no longer available from IBM's
: site. It's unclear how to include this within Parrot as it stands anyway.
: This PDD needs more thinking in the next few days.
diff: www.parrotvm.org/svn/parrot/revision?rev=33751
09:02 bacek joined 09:23 alvar joined 09:55 kj joined
dalek r33752 | kjs++ | trunk: 10:10
: [NEWS] update news
: + update IMCC news
: + update PIRC news
: + beautify news layout for deprecations
: + note that some PIR language changes are mentioned in DEPRECATIONS section, as they've gone through a deprecation cycle and are now completely removed. Other syntax constructs are just changed, in which case they're listed under changes in compilers|IMCC. Yes I know this looks slightly random, but it's not :-)
diff: www.parrotvm.org/svn/parrot/revision?rev=33752
10:21 ffwonko joined
dalek r33753 | kjs++ | trunk: 10:26
: [t] remove tests for namespace and .endnamespace. This is deprecated.
: + update MANIFEST
diff: www.parrotvm.org/svn/parrot/revision?rev=33753
r33754 | kjs++ | trunk: 10:27
: [imcc] remove .namespace x / .endnamespace x syntax. make test passes all related tests. Please update your languages if you're using it.
diff: www.parrotvm.org/svn/parrot/revision?rev=33754
r33755 | kjs++ | trunk: 10:29
: [imcc] remove .endnamespace from preprocessing function in imcc.
diff: www.parrotvm.org/svn/parrot/revision?rev=33755
r33756 | kjs++ | trunk: 10:31
: [imcc] remove unused rule 'string'. bison gave warnings it's an unused rule.
diff: www.parrotvm.org/svn/parrot/revision?rev=33756
10:33 tomyan joined
dalek r33757 | kjs++ | trunk: 10:35
: [NEWS] updated NEWS regarding .endnamespace.
: Also updated deprecated.pod.
diff: www.parrotvm.org/svn/parrot/revision?rev=33757
GeJ mesg chromatic Found this page, may be worth updating the link in Numbers PDD speleotrove.com/decimal/ 11:04
purl message?
purl Perhaps you mean "messages", or "message nickname blah blah", or "messages help", or.. eh, just forget it.
GeJ message chromatic Found this page, may be worth updating the link in Numbers PDD speleotrove.com/decimal/ 11:05
purl Message for chromatic stored.
11:44 Hadi1 left 11:55 Hadi joined 12:12 Hadi left, ffwonko joined 12:13 iblechbot joined 12:19 masak joined
masak ./parrot examples/library/md5sum.pir empty_file 12:31
Class 'ParrotIO' not found
current instr.: '_main' pc 43 (examples/library/md5sum.pir:54)
what am I doing wrong?
pmichaud one or more of your files is out of date 12:32
ParrotIO was removed a couple of days ago.
masak svn ups
pmichaud: I still get the error after running make. need I do anything more? 12:42
ah.
the PIR file itself references ParrotIO 12:43
is there a chance I could borrow someone to help me (1) un-bitrot md5sum.pir? (2) call md5sum.pir (or equiv) on a given string from Rakudo? 12:44
btw, the Rakudo spectests look great now. 12:45
dalek r33758 | fperrad++ | trunk: 12:51
: [Lua]
: - fix test (global is deprecated)
diff: www.parrotvm.org/svn/parrot/revision?rev=33758
masak if ParrotIO is gone, what about Stream::ParrotIO?
dalek r33759 | fperrad++ | trunk: 12:53
: [Lua] pdd22io
: - more FileHandle
: - refactor exception handling
diff: www.parrotvm.org/svn/parrot/revision?rev=33759
masak ah, what the heck.
purl ah, is lollipop a replication slave ?
masak posts a bug about md5sum.pir 12:54
dalek r33760 | fperrad++ | trunk: 12:55
: [Lua] box
: - refactor bytecode translation with the opcode 'box'
diff: www.parrotvm.org/svn/parrot/revision?rev=33760
masak parrotbug?
purl parrotbug is probably mailto:parrotbug@parrotcode.org or svn.perl.org/parrot/trunk/docs/submissions.pod or see also "rakudobug" or needs to be converted to trac
masak purl: there are times when you are almost useful. 12:57
purl OK, masak.
13:01 ChrisDavaz joined
dalek r33761 | jkeenan++ | testparrottest: 13:18
: Refactor unlink code into sub so that POSTMORTEM can be tested; test not yet
: complete.
diff: www.parrotvm.org/svn/parrot/revision?rev=33761
Coke there are times when purl? 13:34
purl i heard there are times when i was almost useful.
Coke scooby snack, purl.
purl Rank roo, Coke!
Coke is there some magic number I can enter in the search box to go to ticket # 10? 13:43
(trac)
13:47 Lorn joined 13:53 jhorwitz joined
Coke ah. "#10" 14:00
jonathan I can haz grant. news.perlfoundation.org/2008/12/jon...ue_gr.html 14:02
Thanks to everyone who has helped.
Coke get to work!
purl No! I'm busy!
moritz jonathan: cool.
Coke does some ticket cleanup in trac. 14:04
14:32 Hadi joined, Hadi left 14:45 gryphon joined
jhorwitz has issues subclassing FileHandle 14:49
Coke Yay, figure that out before I have to do it in tcl. =-) 14:50
Coke closes RT # 61256 14:52
Coke wants a tracbot in here. 14:53
dalek r33762 | coke++ | trunk:
: "make examples_tests" now passes again. (update for a lot of syntax & PMC method changes)
: Resolve RT #61256
diff: www.parrotvm.org/svn/parrot/revision?rev=33762
moderator Parrot 0.8.1 "Tio Richie" Released | parrot.org | 21 TT | 651 RT 14:57
Coke should note that that RT number now includes our stalled tickets. 14:57
14:57 AndyA joined 14:58 bacek_ joined
Coke I think we should aim to kill the ParrotRoadMap page, and have trac.parrot.org/parrot/roadmap contain the same information. 15:01
(or at least, pointers to it.) that is, open tickets for everything, assign them the correct milestones...
moritz Coke: (re PerlSixTesting on parrot wiki) I don't want to put into the pugs repo right now because the synopsis there sound authorotative, which it shouldn't right now 15:02
Coke ok. why not use the official perl six wiki, then? 15:03
moritz Coke: if you think it's too much clutter, I can move it to a different wiki
Coke: because socialtext officially sucks.
Coke <shrug> I think putting it in the repo is the best. Add a note that says it's a work in progress. 15:04
that was the whole point of moving things into the pugs repo, no?
15:04 ruoso joined
moritz yes, but we haven't seen a flood of spec patches so far :( 15:05
maybe I should do that anyway
(later today)
dalek r33763 | fperrad++ | trunk: 15:09
: [Jako] global
: - update PIR generation with get/set_global
diff: www.parrotvm.org/svn/parrot/revision?rev=33763
15:10 jimmy joined
dalek r33764 | coke++ | trunk: 15:21
: [docs] Remove long outdated ROADMAP.pod; the roadmap is now available via trac.parrot.org/
: Leave the ports/ references to it alone, I assume those will be updated after the next portage.
diff: www.parrotvm.org/svn/parrot/revision?rev=33764
15:22 gmansi joined
Coke thanks to whoever started killing the old wiki. 15:22
you seem to have gotten much further than I did.
jimmy make smoke is ok , how about make smolder_test? is it ok ? 15:28
trac.parrot.org/parrot/wiki/SmokingParrot
jimmy think it is a bad question. 15:34
Coke make smoke is going away. 15:35
will probably make smoke an alias for smolder_tst, and then eventually remove smolder_test 15:36
dalek r33765 | coke++ | trunk:
: [docs] Cleanup the readme a bit to track change mailing lists, websites, build features, and the dangers (and futility) of "make install"
: Simplify the make discussion a bit, since we already programmatically have that in Configure.pl.
diff: www.parrotvm.org/svn/parrot/revision?rev=33765
15:36 kj joined
jimmy usually use make smolder_test, mayby it's wrong way. 15:37
s/mayby/maybe/ 15:38
Coke no, that's right. 15:41
anything that says use "make smoke" is currently outdated.
rant: trac gives me an easy way to create an ad hoc query, and no easy way to save that as a report. 15:42
15:43 masak joined
jimmy so >\ttrac.parrot.org/parrot/wiki/SmokingParrot is outdated? 15:44
masak if Parrot tickets has moved to trac, shouldn't parrotbug@parrotcode.org either (a) create bugs on trac or (b) not work? 15:45
Coke Yes.
jimmy: yes.
masak Coke: whom to complain to?
Coke jimmy: i tell you three times, it's true.
jimmy seems make smoke does not work now.
coke: go away is not understanded by me. 15:46
Coke masak: Please open a trac ticket if one doesn't already exist.
neither is, "it's outdated", apparently. =-)
jimmy thanks, coke
make smoke does not work now. 15:47
PerlJam as specced! :) 15:48
jimmy masak: 晚安 15:51
masak jimmy: 晚安 15:52
Coke: oki
Coke jimmy; can you define "not work"? are you missing the perl module it requires? 15:55
is docs/TODO needed anymore?
I wsa going to updated it to work with Trac, but am considering just rm'ing it. 15:56
masak Coke: trust the anarchy. rm it. 15:58
dalek r33766 | coke++ | trunk: 16:00
: [docs] more trac, less RT.
diff: www.parrotvm.org/svn/parrot/revision?rev=33766
Coke masak: too late. =-)
someone move all the items with 2008 in their wiki name under News and Events to "archivedNewsevents", pls? 16:01
masak :)
16:07 hercynium joined
Coke anonymous responder! We should label that "coward!". =-) 16:08
Infinoid good morning 16:10
masak evnin'
16:17 bacek_ joined
dalek r33767 | coke++ | trunk: 16:18
: [docs] at least mention trac in our bug wrangling guide.
: Fix an awkward sentence in one of the sample replies.
diff: www.parrotvm.org/svn/parrot/revision?rev=33767
16:18 Theory joined
dalek r33768 | coke++ | trunk: 16:24
: [docs] s/RT/trac/, along with some trac-specific instructions.
diff: www.parrotvm.org/svn/parrot/revision?rev=33768
16:25 ffwonko joined
dalek r33769 | coke++ | trunk: 16:29
: [docs] quis emendo ipsos emendator?
diff: www.parrotvm.org/svn/parrot/revision?rev=33769
16:34 Zaba joined
particle coke: trac.edgewall.org/changeset/4782 16:37
Coke we don't have that version, do we? 16:40
(I ended up copying an existing report and guessing heavily, which resulted in:)
trac.parrot.org/parrot/report/9 16:41
parrot todo?
parrot todo is trac.parrot.org/parrot/report/9
particle coke: perhaps not, seems our trac 0.10.4 is copyright 2006, that change was feb 2007 16:43
Coke ZOMG. reading some perl from trumerge to solve my work-related svn issue. That's some perl4-y perl, yo.
particle i haven't found the release date for 0.10.4 yet
removed 'meta' ticket type from trac.parrot.org/parrot/admin/ticket/type 16:45
dalek r33770 | fperrad++ | trunk: 16:46
: [pdd22io]
: Add the method 'flush' (lost between ParrotIO and FileHandle)
: The I/O library of Lua needs it.
diff: www.parrotvm.org/svn/parrot/revision?rev=33770
Coke particle: fair enough. I figured there /might/ be a use for that type outside of release tracking.
but keywords cover a lot of that.
16:46 tomyan left
Coke I am tempted to force Andy Lester to look at this perl code. 16:47
Andy Force?
dalek r33771 | fperrad++ | trunk:
: [Lua] pdd22io
: - more FileHandle
: - refactor exception handling
diff: www.parrotvm.org/svn/parrot/revision?rev=33771
Coke as much as I could. =-)
Andy: check this out: trumerge.open.collab.net/files/docu...ge-r13.zip
there. =-)
also alias.
(they say "this was written specifically to run on windows."), which isn't something I hear about perl often, either. 16:48
Alias_ Looking
Andy what do you want me to look at?
Alias: I must now thank you in person for that crazy Microsoft stuff you pulledoff. 16:49
Coke Andy: I think of you as the "code cleanup" guy.
and alias as the "windows perl" guy. 16:50
Andy What do you want me to do?
Coke I think you take me too seriously at the wrong times.
Alias_ I think you have me confused for someone that knows Windows
Coke Alias_: mmheheh.
Alias_ All I can do is write build scripts that combine other people's knowledge :) 16:51
And apparently I also have something of a knack for diplomacy
Coke I have a knick-knack from _Diplomacy_, but that's about it. 16:52
Andy: Ooh. something useful to steal from that might be the header at the top of the truMerge.cmd file that restarts the file running under perl instead of under cmd/bat/dos/whatever actually runs .CMD files. 16:56
(for ack)
Andy For Windows? 16:57
I don't do Windows
yet.
Coke that's what I'm saying.
particle Coke: there's a perl script that generates that
Coke I bet you could wrap up the standalone ack with this trick on windows.
Andy makes an alliance with Coke and Austria/Hungary to block the Italians from branching out in the Mediterranean.
Coke Andy++ 16:58
Andy also let's England know she can land in Picardy and Brest while Coke's attention is turned. 17:01
jonathan Andy: Uh, Brest isn't costal? 17:04
17:04 Theory joined
jonathan At least, the one *I've* been to ain't... 17:04
particle coke attacks by air
s/coke/england/ 17:05
stupid fingers, too busy peeling a banana
Andy It is in Diplomacy. It's a region, not a city.
www.stupidwish.net/diplom.html
I know my European geography only from Diplomacy, sadly. :-) 17:06
And more and more from WWII histories.
jonathan Ah, there's a French region called Brest, huh...
jonathan has been to the Brest in Belarus
Andy hey wait, it IS coastal.
en.wikipedia.org/wiki/Brest,_France
jonathan nodnod
I didn't know about that Brest.
17:07 davidfetter joined
Coke You're a programmer, you... nevermind. 17:08
17:23 purl joined 17:30 allison joined
particle c:\\Users\\particle\\dev\\parrot\\calling_conventions\\languages\\perl6>..\\..\\parrot perl6.pir --target=past 17:37
> ;
Lexical '$key' not found
ok, so i created a new language with mk_language_shell 17:41
it fails in make test, with Lexical '$/' not found
.lex "$/", param_160
find_lex $P161, "$/"
# this is where it fails
so, lexicals definitely are somehow broken in that branch 17:42
obtw, this is r33681, because branch head does not build due to what looks like a bad merge 17:43
Tene svn-- 17:48
particle holy crap, 81,000 numbers tests to steal! speleotrove.com/decimal/ 17:51
szbalint wow, that's great 17:55
jhorwitz allison: ping 17:59
18:07 Util left
Coke particle: just don't check them into trunk. =-) 18:18
particle coke: i'm working on a harness now. 18:19
i think i'll do p5 rather than pir
Tene pmichaud said he's planning to be online tonight, right?
particle yes
dalek r33772 | fperrad++ | trunk: 18:21
: [Lua] pdd22io
: - more FileHandle
: - refactor exception handling
: - remove the conversion of deprecated mode/flag open
diff: www.parrotvm.org/svn/parrot/revision?rev=33772
Coke Here's a cage task: ITERATE_FROM_START is the default; if you're setting your iterator to that, it can probably be removed. 18:22
particle indeed 18:28
18:31 Hadi joined 18:32 Hadi left 18:33 magnachef joined 18:41 Debolaz joined
Infinoid t/codingstd/c_indent.t is failing, but the issue it indicates doesn't appear to be valid. 19:03
dalek r33773 | infinoid++ | trunk: 19:04
: [cage] Fix trailing whitespace.
diff: www.parrotvm.org/svn/parrot/revision?rev=33773
r33774 | fperrad++ | trunk: 19:06
: [Lua]
: - skip some tests
diff: www.parrotvm.org/svn/parrot/revision?rev=33774
r33775 | coke++ | trunk: 19:11
: According to the referenced ticket, this issue has been resolved since r27334.
diff: www.parrotvm.org/svn/parrot/revision?rev=33775
19:12 chromatic joined
Coke msg allison: if you don't want RT#54478, please reject it. 19:13
purl Message for allison stored.
Coke (I don't.)
dalek r33776 | coke++ | trunk: 19:28
: [docs] apply stopgap documentation patch from TT #2.
: Courtesy tuxdna++
diff: www.parrotvm.org/svn/parrot/revision?rev=33776
19:30 ffwonko joined 19:32 allison joined
moderator Parrot 0.8.1 "Tio Richie" Released | parrot.org | 24 TT | 648 RT 19:33
Coke allison: is async IO still on our feature list? 19:34
chromatic Post 1.0.
Coke ah, there it is, 2.0
chromatic I figured out a nice GC strategy which allows us to get rid of PMC_data() and have variable-sized PMCs... but it breaks morph, at least until we have a compacting/copying GC. 19:35
Coke what is the "right" status for a ticket that is moved from RT to trac. "deleted" seems the best choice, but I wonder if that does something unseemly to the ticket.
chromatic: perhaps write it down as a todo ticket in trac? 19:36
chromatic Can do. 19:37
Coke I cannot delete a ticket in RT. Anyone care to vote on rejected vs. resolved? 19:38
I vote rejected since it is clearly not resolved. 19:39
I also vote resolved because we're clearly not rejecting it.
chromatic Maybe Rejected | Resolved. 19:40
Coke Resected. 19:41
... which actually makes sense.
Coke picks resolved. 19:42
does IO have layers anymore? 19:43
19:43 geof joined
Coke phone in 16? 19:44
Coke *tap* *tap* 19:46
chromatic I don't think it has layers, but I don't know. 19:56
particle no layers anymore 20:00
allison Coke: no layers 20:04
layers are dead, dead, dead
Coke rejecting ticket. 20:05
s/ing/ed
msg Alias sadly, padre 0.20 doesn't install on strawberry here. 20:24
purl Message for alias stored.
Coke allison: any reason why we're not just using trac for everything? 20:25
(that is, why do we have drupal?)
20:25 mberends joined
Debolaz Because we need to advertise PHP a bit? :-) 20:32
Debolaz ducks
Seriously though, drupal is very handy.
jhorwitz actually, the PHP bit was part of the decision process, so we don't seem too perl-centric. 20:37
Coke yes, but what does drupal give us that trac doesn't? 20:42
bad enough we have 4 websites, 3 wikis, 3 mailing lists, 2 ticketing systems, 2 svn repositories (one unused).
if there's a win other than "go php", that's fine. I'd rather see PHP on parrot to address that issue, than have to maintain 2 websites. 20:43
cotto trac++ 20:45
jhorwitz drupal is a cms, trac is not
but...
drupal wiki--
trac wiki++ 20:46
Coke we're already not using drupal's wiki.
jhorwitz right
Coke (CMS) what parts of it do we need that the articles in trac don't give us?
Tene Coke++ # work on tickets
jhorwitz what "articles"?
Coke jhorwitz: good question. I can now not find the site I saw today running trac that had a top level articles heading. 20:48
chromatic I remember: drupal.org 20:50
Coke I would be interested to know which particular feature of drupal trumps trac, though. "CMS" is a pretty big bucket.
jhorwitz stating the obvious.... drupal is good at maintaining story-style websites w/ announcements, blogs, etc. IMO, that's what we want for our public face. you can't maintain content easily with trac, other than the wiki AFAIK. 20:54
Coke (blogs) ok, do we need parrotblog.org, then? =-) 20:58
(obvious) it's not obvious to me, so thank you.
jhorwitz in theory, no, we do not need parrotblog.org anymore. 20:59
we could assimilate it 21:00
ooh phone &
Coke I thought phone was ages ago. 21:14
jhorwitz call w/ accountant. :-P 21:16
Tene Coke: Time zones, of course. ;) 21:17
Coke adds trac.parrot.org/parrot/wiki/WhereIsIt 21:21
trac.parrot.org/parrot/timeline - if we're going to track socialtext in here, we should track this. 21:23
(and we shouldn't track ST anymore once we've killed it.)
GeJ Good morning everyone 21:25
chromatic: did you get the message I posted regarding the Numbers PDD? 21:28
Coke ls 21:31
ww
chromatic I did, thank you. 21:36
cotto It'd be nice to have a bot that posts when track wiki edits are made. 21:38
GeJ you're welcome
Coke cotto: see my send 7 before yours. 21:41
where in the test harness do we decide what executable to use to run our tests?
ah. _run_test_file 21:42
cotto yup. misread yours 21:43
Coke I'm going to add support for "TEST_PROG" so we can think about running the test suite through valgrind.
21:43 ffwonko joined
Coke looking at an old ticket, leo hints it used to exist but was removed. 21:43
chromatic I'm not sure how useful that is. 21:44
Tene Huh. This EH stuff worked when I made this patch, but doesn't work now. 21:47
There are either parrot changes, or I was incoherent and asleep at the time.
The latte ris more likely.
Coke chromatic: theoretically, if 'make cover' was 100%, then 'make leaktest' could tell us if any code, ever, leaked memory.
particle yuck. latte.
chromatic We have known memory leaks right now though, and we're not diligently fixing them. 21:52
A test target which confirms that we suck doesn't seem that useful.
Coke not even if it measures how badly we suck? 21:56
chromatic Or shall I say instead "It's a low priority for me until we start making memory leaks a higher priority."
tewk Coke: no, because byte code could execute things in different order than make cover.
make cover would have to execute all possible bytecode strings.
Coke so make cover is also useless? 21:57
or only as a baseline for a theoretical "make leaktest" ?
tewk as a baseline for a theoretical "make leaktest"
21:58 allison joined
Coke hokay. I have plenty of other cleanup that can get done. 21:58
tewk make cover tells you you've covered all code paths, but not necessarily in the order that byte code will execute those code paths.
Coke I'll consider revisiting this once trac.parrot.org/parrot/ticket/5 is fixed.
dalek r33777 | jonathan++ | trunk: 22:00
: [rakudo] Perl6MultiSub PMC tests that attach a signature should have multi_invocant set to true, as those generated by Rakudo do.
diff: www.parrotvm.org/svn/parrot/revision?rev=33777
chromatic The NameSpace PMC is a mess.
Coke in valgrind output, is 'still reachable' a concern? 22:01
(minor or otherwise)
tewk interpreters in some way generate code on the fly, and as such build time metrics such as make cover and make leaktests can't predict how the system will behave when executing that runtime generated code.
chromatic They're a lot easier to fix.
tewk a bytecode verifier like java has, can add more guarentees but your still at the mercy of the runtime generated code to some extent.
Coke chromatic: run vgp with no args. 22:02
==21914== still reachable: 947,176 bytes in 1,952 blocks.
22:02 MariachiElf joined
Coke chromatic: make sense to add tools/dev/vgp as a shell script? 22:03
chromatic Works for me.
Infinoid would love to get his hands on chromatic's suppressions file, too 22:04
chromatic Still reachable means that you have a pointer to the memory somewhere.
You haven't freed a struct containing a malloced pointer.
Coke Infinoid: there's a supressions file /checked in/
chromatic tools/dev/parrot.supp 22:05
Coke which is reference by tools/dev/vgp, now. 22:07
*d
er, now. 22:08
purl er, now is probably not the time to mention markl's 16 years experience as a manager of software groups, is it...
Infinoid great 22:09
Coke removes his copy from ~/bin
dalek r33778 | coke++ | trunk:
: [tools] add the recommended valgrind invocation as a tool.
: chromatic++
diff: www.parrotvm.org/svn/parrot/revision?rev=33778
Infinoid the absolute path in the original vgp alias led me to believe it was something local
Coke nope, just our build directory.
(his or mine, depending on the version you saw) 22:10
22:10 Whiteknight joined
Coke as long as you're running out of the top level build dir, vgp should work. 22:10
chromatic: so, if "still reachable" is set, we should report it?
(gah. 20K plus lines result on invoking "vgp" with no args.) 22:13
22:13 Whiteknight joined
dalek r33779 | moritz++ | trunk: 22:15
: [NEWS] initial rakudo news
diff: www.parrotvm.org/svn/parrot/revision?rev=33779
Coke -> 22:19
22:25 Limbic_Region joined
dalek r33780 | jonathan++ | trunk: 22:26
: [rakudo] If we add an invocant to a signature, we must mark that it is a multi invocant too.
diff: www.parrotvm.org/svn/parrot/revision?rev=33780
r33781 | jonathan++ | trunk: 22:27
: [rakudo] Make Perl6MultiSub honor lack of multi_invocant in a signature, meaning ;; now functions correctly.
diff: www.parrotvm.org/svn/parrot/revision?rev=33781
r33782 | jonathan++ | trunk: 22:42
: [rakudo] Make it an error to use only, multi or proto with an anonymous routine.
diff: www.parrotvm.org/svn/parrot/revision?rev=33782
Tene having trouble with PCT. :( 22:45
jonathan Tene: Specifics? 22:49
purl Specifics are that the query aliases the first table to "me"
chromatic Coke, any of them are worth reporting. "Still reachable" are usually much easier to fix though. 22:53
Tene jonathan: I'm misunerstanding something about PCT's code generation for Blocks is all. 22:55
jonathan: when I dump the past, the block does have a <handlers> set on it, but in as_post, node.'handlers'() always returns null 23:00
v. confusing
jonathan Indeed. :-| 23:01
I'm not at all familiar with that bit of PCT, I'm afraid.
I think I glanced at the handlers stuff once, when I was fixing a null PMC access that occured in Rakudo's return_pir. 23:02
Tene And I'm probably incorrect in my description.
cotto chromatic, pign
s/gn/ng/
Tene This is stuff I just added recently.
jonathan And that didn't really require understanding the code, just finding where we were doing the null PMC access. :-)
Ah, OK.
Tene Mostly complaining, not asking for help yet. 23:03
cotto any idea when I'll get my coverity account? 23:05
chromatic Not sure; could be a couple of days. 23:07
cotto np. I'll bug you again in a week of I don't see anything.
*if 23:08
Tene jonathan: the problem was that I wasn't setting :blocktype<immediate> 23:12
jonathan Tene: Aha. :-) 23:13
Tene jonathan: can you tell me what past I should use to bind $_ to something in a block the appropriate way? 23:14
Just push a bind op? 23:15
jonathan Tene: PAST::Op.new(pasttype('bind'), PAST::Var.new( :name('$_'), :scope('lexical') ), past for the thingy to bind to it); 23:16
nopaste "tene" at 97.117.62.74 pasted "Possible patch for exception tests" (19 lines) at nopaste.snit.ch/14891 23:25
Tene jonathan: The exceptions tests can pass if I take them out of eval and add some semicolons. 23:26
They can't pass right now because can't access outer lexicals from within eval.
moritz Tene: feel free to remove the eval
Tene But should we be testing eval as well in try.t ?
moritz: thanks for the confirmation 23:27
moritz Tene: many instances of eval() are left-overs from the time when we didn't have the fudging mechanism
jonathan Aye. 23:29
There is also an issue sometimes with parsing, when you need a semi somewhere you shouldn't.
moritz we should collect such tests in S02-* somewhere, and simplify them everywhere else 23:30
23:30 AndyA joined
moritz bed & 23:31
Tene Okay, the tests in try.t right now are assuming that $_ is set to the object thrown, not the exception itself.
Should $_ be the object and $! be the exception, or something?
Tene looks at spec
There's also some calling conventions we don't support in there, smartmatching against superclasses, a few other non-exception things 23:33
Ah, it's inheriting from Exception there. 23:36
So we need an Exception class, and we need the 'die' op to throw its args, if they're isa Exception
jonathan Tene: There are some open questions on the nature of $!. 23:37
I think there was a post on p6l about it a while back.
dalek r33783 | tene++ | trunk: 23:38
: [rakudo]: Initial support for CATCH blocks.
diff: www.parrotvm.org/svn/parrot/revision?rev=33783
jonathan A recent while...
Tene Yeah.
jonathan The spec seemed to suggest $! and $_ would hold the same thing in a CATCH block.
So I don't think them being different is the answer.
Tene Right. 23:39
23:43 jan joined
Tene do { die "omg"; CATCH { say "wtf exception"; $_{"handled"} := 1; } } 23:49
do { die "omg"; CATCH { say "wtf exception"; $_<handled> := 1; } }
jonathan Tene: Do you have to set that "handled"?
I'm not sure Perl 6 requires that.
(In fact, pretty sure it doesn't.) 23:50
bacek_ morning
Tene jonathan: we were unsure what semantics P6 required there, so Parrot rethrows if unhandled and returns the exception if handled.
jonathan Even so, if that works so far, awesome. :-)
Tene It's up to the HLLs to set it or not 23:51
jonathan Ah, OK.
Tene pls refactor appropriately.
jonathan Thanks for making that much work. :-)
That's awesome.
Tene except apparently polyglotbot doesn't think so
oh, no prefix
jonathan You need...yes. :-)
Tene rakudo: do { die "omg"; CATCH { say "wtf exception"; $_<handled> := 1; } }
polyglotbot OUTPUT[wtf exception␤]
jonathan :-D
Tene much better 23:52
there ARE situations where it should rethrow, so other CATCH blocks and such can catch it.
jonathan *nod*
Tene rakudo: do { die "omg"; CATCH { say "wtf handler one";}; CATCH { say "lol handler two"; $_<handled> := 1; } }
polyglotbot OUTPUT[lol handler two␤]
Tene Huh. Oh, right, ordering. 23:53
rakudo: do { die "omg"; CATCH { say "wtf handler one"; $_<handled> := 1}; CATCH { say "lol handler two";} }
polyglotbot OUTPUT[lol handler two␤wtf handler one␤]
Tene should probably be unshift instead of push
Whiteknight wtf handler one!
jonathan OMGWTFCATCHWORKS!
jonathan hopes Tene blogs such examples ;-) 23:54
Whiteknight is that how it's supposed to work?
Tene Wait, can we subclass parrot pmcs from rakudo?
jonathan Yes.
Whiteknight: The ordering, no.
Whiteknight: But it's the closest we've got to a working CATCH yet. 23:55
Whiteknight minus the ordering, it is hot
how are handlers stored, on a stack?
Tene committing a fix now
yes, astack
Whiteknight oh so it's an easy fix then. stacks roxxor 23:56
dalek r33784 | tene++ | trunk:
: [rakudo]: Fix the ordering of multiple CATCH blocks in a block.
diff: www.parrotvm.org/svn/parrot/revision?rev=33784
Tene jonathan: 23:57
rakudo: class Naughty is Exception {};
polyglotbot OUTPUT[Attempt to inherit from non-existent parent class␤current instr.: 'die' pc 13530 (src/builtins/control.pir:168)␤called from Sub 'trait_auxiliary:is' pc 17392 (src/builtins/traits.pir:25)␤called from Sub '_block14' pc 94 (EVAL_12:46)␤called from Sub 'parrot;PCT;HLLCompiler;evalpmc' pc 830
..(src/PCT/HLLCompiler.pir:475)␤called from Sub 'parr...
jonathan Tene: Ah, Exception needs to have been mapped for Rakudo first. 23:58
(As in, you need an Exception proto-object.)
23:58 Debolaz_ joined
Tene Can you do that? 23:58
jonathan oh, hmm, Failure.pir implies we already are... Hmm. 23:59