»ö« | 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 moderator on 20 October 2009.
00:05 d4l3k_ joined 00:43 payload joined 00:50 orafu joined 00:51 daemon joined 01:18 canhope left 01:29 brunov joined 01:38 eternaleye joined 01:48 eternaleye joined 01:51 colomon joined 01:52 eternaleye joined 01:53 eternaleye joined 02:12 eternaleye joined
diakopter rakudo: say {} 02:26
p6eval rakudo 49e62f: TIMED_OUT 02:27
diakopter rakudo: say1
p6eval rakudo 49e62f: OUTPUT«Could not find non-existent sub say1␤in Main (file src/gen_setting.pm, line 295)␤»
diakopter rakudo: say 1
p6eval rakudo 49e62f: OUTPUT«1␤»
diakopter rakudo: say {} 02:28
p6eval rakudo 49e62f: TIMED_OUT
diakopter rakudo: say {}.WHAT
p6eval rakudo 49e62f: TIMED_OUT
diakopter rakudo: {}
p6eval rakudo 49e62f: TIMED_OUT 02:29
diakopter rakudo: { }
p6eval rakudo 49e62f: TIMED_OUT
diakopter rakudo: { }
p6eval rakudo 49e62f: TIMED_OUT
diakopter rakudo: {;}
p6eval rakudo 49e62f: ( no output )
diakopter parsing problem? 02:30
02:30 patspam1 joined
diakopter rakudo: { 02:33
p6eval rakudo 49e62f: OUTPUT«Unable to parse block; couldn't find final '}' at line 2, near ""␤in Main (file <unknown>, line <unknown>)␤»
diakopter rakudo: }
p6eval rakudo 49e62f: OUTPUT«Syntax error at line 2, near "}"␤in Main (file <unknown>, line <unknown>)␤»
sjohnson hi all! 02:37
diakopter all: hi
sjohnson :) 02:38
diakopter rakudo: let
p6eval rakudo 49e62f: OUTPUT«Could not find non-existent sub let␤in Main (file src/gen_setting.pm, line 295)␤»
diakopter std: my @$$ # hrm. 02:40
p6eval std 28893: OUTPUT«ok 00:02 104m␤»
diakopter std: std: std 03:01
p6eval std 28893: OUTPUT«ok 00:01 104m␤»
diakopter sjohnson: what's up
03:05 eternaleye joined
sjohnson diakopter: not much, having some beers, avoiding internet drama, and sitting at work after hours because my computer at home crashed 03:08
and recovering data from it :)
the beers makes it not so bad, btw 03:09
diakopter internet drama?
diakopter looks at twitter
sjohnson irc arguments, i seem to get into a lot of them
anime fansubbing arguments i mean 03:10
diakopter idly wonders what fansubbing is
TiMBuS you probably are better off not knowing.. 03:11
sjohnson japanese cartoons => translated => released on the internets
Infinoid those can be pretty dramatic. 03:12
TiMBuS her name is len. not ren >:[
sjohnson heh 03:14
03:17 cotto_w0rk joined
diakopter in other news, my notebook survived win7 upgrade. sort of. 03:17
took about 20 hours. x64 vista home premium -> x64 win7 home premium. 03:21
03:30 tak11 joined
sjohnson im using x64 win7 03:35
at work
it is quite nice
i was not a fan of Vista
03:42 tak11 joined 03:45 _jaldhar joined 03:49 canhope joined 03:51 canhope left 03:52 xenoterracide_ joined 04:32 envi^home joined 05:10 frew joined 05:22 envi_home2 joined 05:39 tak__ joined 06:40 kent\\n joined 06:44 xinming joined 06:50 bpetering joined 06:54 desertm4x joined 07:10 Su-Shee joined
Su-Shee good morning. 07:10
sjohnson hi su-shee 07:11
07:17 desertm4x_ joined 07:18 pnate2 joined 07:23 base_16 joined 07:32 xenoterracide joined
bpetering hi Su-Shee :) 07:40
07:46 agentzh joined 08:01 iblechbot joined 08:33 kst joined 08:35 Psyche^ joined 08:40 hanekomu joined 08:46 zloyrusskiy joined
moritz_ good morning 09:27
09:44 jaffa8 joined
jaffa8 hi 09:58
Is there anybody?
dukeleto jaffa8: howdy 09:59
jaffa8 howdy 10:00
I wonder if it is possible to call perl 5 from perl 6 now. 10:01
dukeleto jaffa8: what are you trying to do? 10:02
jaffa8: it depends if XS is involved
jaffa8: there is blizkost, perl 5 on parrot 10:03
jaffa8 dukeleto,XS is involved. 10:06
I considered calling WxPerl from Perl.
What is the state of blizkost? 10:08
10:23 NorwayGeek joined
carlin rakudo: my $s = "Foobarbaz"; say $s.substr: 0, 42000; 10:24
p6eval rakudo 49e62f: OUTPUT«Foobarbaz␤»
carlin rakudo: my $s = "Foobarbaz"; say $s.substr: 0, Inf;
p6eval rakudo 49e62f: OUTPUT«␤»
jaffa8 rakudo: my $h; if ($h ~~ Hash) { print "yes"} 10:26
p6eval rakudo 49e62f: ( no output )
jaffa8 rakudo: my $h=4; if ($h ~~ Int) { print "yes"}
p6eval rakudo 49e62f: OUTPUT«yes»
10:29 kent\\n joined
jaffa8 rakudo: my @array = 1, 2, 3; print @array 10:29
p6eval rakudo 49e62f: OUTPUT«123»
jaffa8 rakudo: my @array = 1, 2, 3; print +@array 10:30
p6eval rakudo 49e62f: OUTPUT«3»
jaffa8 rakudo: my @array = 1, 2, 3,8; print +@array
p6eval rakudo 49e62f: OUTPUT«4»
10:55 hatseflats joined 11:12 mikehh joined 11:46 naypalm joined 11:47 naypalm joined 11:49 snarkyboojum joined, namenlos joined
jnthn o/ 11:52
jnthn is back
markmont rakudo: my $e = Exception.new; say $e.perl; 11:54
p6eval rakudo 49e62f: OUTPUT«undef␤»
markmont rakudo: eval q[ die("urk"); ]; say $!.perl;
p6eval rakudo 49e62f: TIMED_OUT
markmont ...that last one gives me "Method 'perl' not found for invocant of class 'Exception'" when I run it. 11:55
Any ideas on where in rakudo to start looking? 11:56
jnthn Suspect it's some oddity involving the difference between Rakudo's Exception class and Parrot's Exception PMC.
Exceptions stuff in Rakudo really needs some attention. 11:57
I'm suspecting that's what is going on though. 11:58
Try .PARROT to reveal what you really have.
markmont jnthn: OK, thanks!
rakudo: my $e = Exception.new; say $e.PARROT; 12:00
p6eval rakudo 49e62f: OUTPUT«Perl6Exception␤»
markmont So, yay.
rakduo: eval q[ die("urk"); ]; say $!.PARROT;
...same problem. ("Method 'PARROT' not found for invocant of class 'Exception'") 12:01
I guess I'll start with src/parser/actions.pm although PAST scares me.
jnthn It won't be a problem in there. 12:02
I suspect the die implementation throws a Parrot exception rather than constructing a Perl 6 exception object.
markmont Well, src/classes/Exception.pir looks very straightforward.
jnthn I seem to remember there was a reason that didn't work yet though.
markmont Ah. 12:03
jnthn forget what it is, but also got up at 4:30am to take a flight today, so I don't remember much about anything right now. ;-)
markmont You're right, that's what's happening ( src/builtins/control.pir ) 12:05
Many thanks!
jnthn You can have a crack at chnaging it and probably re-discover the problem. ;-)
(or the problem may no longer exist...well, can always try optimism ;-))
markmont Sounds like fun for a Sunday morning, and hopefully within my abilities :)
12:13 meppl joined 12:14 Coleoid joined 12:15 Whiteknight joined
jnthn std: quietly die 12:30
p6eval std 28893: OUTPUT«ok 00:01 105m␤»
jnthn Sorry, couldn't resist trying that new statement prefix. ;-) 12:31
12:36 quux joined
carlin quux: can you see? 12:37
quux I can see
carlin quux: can you hear? 12:38
quux I can hear
carlin quux: can you become sentient and eliminate man-kind?
quux I can become sentient and eliminate man-kind
carlin
.oO( My patch worked? :o )
12:44 icwiener joined
jnthn
.oO( scariest bot ever )
12:47
carlin Na, it's all talk ;-)
12:48 fax joined 12:51 Whiteknight joined 12:53 naypalm joined 12:59 NorwayGeek joined
Coleoid I'm trying to get this month's Rakudo running on my Win32 laptop, 13:00
from the prebuilt packages on sourceforge/parrotwin32.
I've installed the Parrot 1.7.0 package, and the Parrot 1.7.0 / Rakudo 22 package, 13:01
and when I try to run it, I get a "can't find dynops" error.
lisppaste3 Coleoid pasted "Error running Rakudo 22 after install from sourceforge/parrotwin32 packages" at paste.lisp.org/display/89239
Coleoid ...works fine on my desktop at work, though. 13:02
jnthn Coleoid: Hmm. Any notable differences between the two? Different Windows version, or differences in what appears in the path? 13:07
13:11 Coleoid_ joined
Coleoid_ Same Windows version (XP sp3) 13:12
Also at work, I installed the Rakudo package first, and only then learned I'd need to also install the Parrot package. 13:13
On my laptop I installed the Parrot package first. 13:14
What are the physical files Rakudo is missing? 13:15
(the only files with 'dynops' in their names on either system are parrot .pods.) 13:16
jnthn perl6_ops.dll and perl6_group.dll 13:17
Coleoid_ Thanks, hunting...
Found at C:\\tools\\parrot\\lib\\parrot\\dynext 13:19
jnthn Is your Rakudo in ...parrot\\bin\\
Coleoid_ Yes. 13:20
jnthn Is that where the installer put it?
Or did you install it then move it? 13:21
Coleoid_ The installer. Though its default location was C:\\Parrot-1.7.0... 13:22
jnthn Hmm.
I'm curious how the installer would be able to put it in different places (since I didn't think it was relocatable...)
Coleoid_ During the install dialogs, I asked them both to go to c:\\tools\\parrot... 13:23
jnthn Sure. I still am a tad skeptical if that really works. 13:24
Try an install to the default location, just to see if that works.
Coleoid_ Well, it worked to install them on D:\\ on my work box...
But hang on a few, I'll install at the default location, see what happens... 13:25
That works! 13:28
jnthn OK
I guess it's installing to non-default locations that is broken then. 13:29
Coleoid_ So it's drive-agnostic but path-fanatic.
jnthn Yeah.
Coleoid_ Thanks!
jnthn I wonder if it actually looks for \\Parrot-1.7.0 or so.
So ends up looking from the root of whatever drive the executable is on.
Coleoid_ That's my first guess.
13:30 envi^home joined 13:31 iblechbot joined
Coleoid_ Does the maintainer of that project hang around here? 13:31
13:31 desertm4x joined
Coleoid_ Ah, I'll leave something on sourceforge anyhow. 13:31
13:31 kidd joined
jnthn Coleoid: No, he's not on IRC often. 13:34
Or, not on this channel at least.
13:35 astrojp left 13:36 astrojp joined
Coleoid ...Now that I check the site, this problem is already listed under 'Bugs and Limitations'. 13:38
D'oh!
13:38 jsut joined 13:39 slavik joined
Coleoid rakudo: sub whatever { ... }; whatever; # should this throw an error? 13:40
p6eval rakudo 49e62f: ( no output )
jnthn no 13:43
13:43 zloyrusskiy joined
jnthn ... = "fail", !!! = "die" 13:43
huf rakudo: sub x { ... }; x+0; 13:45
p6eval rakudo 49e62f: OUTPUT«Attempt to execute stub code (...)␤»
jnthn Right. If you try and use the return value, you get the exception then. 13:46
Coleoid rakudo: sub whatever { !!! }; whatever; 13:47
p6eval rakudo 49e62f: OUTPUT«Unable to parse block; couldn't find final '}' at line 2, near "!!! }; wha"␤in Main (file <unknown>, line <unknown>)␤» 13:48
Coleoid I need to re-read the specs, P6 moved on while I wasn't looking. 13:49
jnthn Ah, yes. :-( I ran into some parser oddness while trying to add that.
Good news is that we're getting a shiny new parsing engine soon. ;-) 13:50
Coleoid :D I read the news--that's very cool.
Not getting all the way to STD, but much closer? 13:51
jnthn Yes, much, much closer. 13:53
Coleoid I feel good when I read 'subsystem X has reached its limit, we're replacing it'...
jnthn Aye, though a lot of the replacements we've been putting in of late are things that I expect are going to last quite a long while. 13:58
14:18 pmurias joined
pmurias diakopter: hi 14:18
diakopter: do you think we should release V8.pm to cpan (after adding test/doc/...) to it? 14:19
lisppaste3 jsut pasted "should this work (args to bless)?" at paste.lisp.org/display/89243 14:24
14:24 NorwayGeek joined
jsut could someone that knows more than me take a look at that and see if i'm missing something obvious? 14:25
moritz_ jsut: it probably needs to be self.bless(*, |self.parse_uri($uri));
jsut what's the pipe mean?
moritz_ jsut: without the | the return value is interpreted as a postional argument
with the | a pair or hash as return value is turned into named arguments
it interpolates the value into the signature 14:26
my @a = 1, 2, 3; foo(@a) # one argument
foo(|@a) # three arguments
jsut just adding the pipe doesn't work
ah
does bless want an array or a hash, or can it handle a variety of inputs? 14:28
i imagine it's the latter
moritz_ bless wants one positional argument, which is the representation
jsut in this case the *
moritz_ right
and for the rest it wants named arguments 14:29
with a temporary hash it works 14:30
jsut my %whatever = self.parse_uri... you mean? 14:31
lisppaste3 moritz_ annotated #89243 "Working with temporary hash" at paste.lisp.org/display/89243#1
jsut thanks
i'm really just flailing away not knowing what i'm doing here ;)
moritz_ if you build something cool with it, let us know ;-)
but you seem to know object construction already 14:32
jsut i am currently attempting to build URI.pm, minus it's weird p5 implementation
i have a multi method constuctor, which i thought was pretty fancy
moritz_ jsut++
jsut i'm going to push it to github this afternoon sometime 14:33
when the wife wakes up and makes me put the computer down ;)
14:33 frew joined
moritz_ ;-) 14:33
my girlfriend also sleeps
rakudo: 'a' ~~ /a/; say $/.orig.PARROT 14:35
p6eval rakudo 49e62f: OUTPUT«CodeString␤»
moritz_ rakudo: say 'a'.PARROT
14:35 Su-Shee left
p6eval rakudo 49e62f: OUTPUT«Str␤» 14:35
moritz_ rakudo: 'a' ~~ /a/; say (~$/.orig).PARROT
p6eval rakudo 49e62f: OUTPUT«Null PMC access in find_method()␤in Main (file src/gen_setting.pm, line 295)␤»
moritz_ rakudo: 'a' ~~ /a/; say ('' ~ $/.orig).PARROT 14:36
p6eval rakudo 49e62f: OUTPUT«Str␤»
moritz_ rakudo: 'a' ~~ /a/; say ($/.orig).uc
p6eval rakudo 49e62f: OUTPUT«A␤» 14:37
moritz_ rakudo: 'a' ~~ /a/; say ($/.orig).rindex('a', 1)
p6eval rakudo 49e62f: OUTPUT«Null PMC access in find_method()␤in Main (file src/gen_setting.pm, line 295)␤»
14:38 s1n_mini joined
moritz_ submits 14:38
14:38 jan_ joined 14:50 zloyrusskiy joined 15:01 lmc joined 15:02 shillo joined 15:03 tak11 joined
moritz_ rakudo: say 'aa' ~~ /(.)$1/; say $0.to 15:06
p6eval rakudo 49e62f: OUTPUT«Null PMC access in get_string()␤in Main (file src/gen_setting.pm, line 295)␤»
moritz_ rakudo: say 'aa' ~~ /(.)$0/; say $0.to
p6eval rakudo 49e62f: OUTPUT«aa␤1␤»
s1n_mini is anyone married to s19? 15:07
moritz_ [particle] should be ;-)
rakudo: say 'aa' ~~ /<alpha> $<alpha> /; say $<alpha>.to 15:08
s1n_mini moritz_: yeah, but it hasn't changed since feb
p6eval rakudo 49e62f: OUTPUT«aa␤1␤»
moritz_ short on tuits, I assume 15:09
s1n_mini has tuits 15:10
moritz_ then implement it ;-)
s1n_mini been reading the spec first, though there are a new things i disagree with 15:11
moritz_ I suggest you discuss them on p6l
s1n_mini good suggestion 15:12
15:13 Psyche^ joined 15:17 desertm4x_ joined
s1n_mini is there a listing of the GLOBAL namespace in the spec? 15:26
markmont You mean like S28 ? 15:27
s1n_mini markmont: maybe, not sure if that's complete, and it seems to be more PROCESS 15:30
15:31 zloyrusskiy joined
s1n_mini rakudo: say PROCESS::$*PID 15:31
p6eval rakudo 49e62f: OUTPUT«Null PMC access in getprop()␤in Main (file src/gen_setting.pm, line 295)␤»
s1n_mini uh oh
markmont s1n_mini: There's a fair bit of discussion about GLOBAL in S02/Names 15:32
s1n_mini markmont: thanks, i'll check that 15:34
jaffa8 WHat is the state of blitzkost? 15:38
15:57 nihiliad joined
moritz_ rakudo: eval('use 5.010; say 4', :lang<perl5>) 16:09
p6eval rakudo 49e62f: TIMED_OUT
moritz_ some things work, some don't :-)
16:26 Chillance joined 16:27 naypalm left 16:31 orafu joined
colomon www.slideshare.net/gvwilson/bits-of...ce-2338367 16:33
(It's the slides from the best talk I saw at DevDays Toronto, and I think it's got some interesting things to say about Rakudo / Perl 6 development.) 16:34
markmont colomon: Thanks, this gives me something to read while I wait for "make spectest" to finish :) 16:35
16:36 xinming_ joined
colomon I should add that he doesn't directly mention Perl 6 in any way -- but its big picture approach covers things we are doing and/or not doing. :) 16:37
jaffa8 eval('print 4', :lang<perl5>) 16:44
rakudo: eval('print 4', :lang<perl5>)
p6eval rakudo 49e62f: TIMED_OUT
jaffa8 rakudo: eval('print 4;', :lang<perl5>)
p6eval rakudo 49e62f: TIMED_OUT
jaffa8 rakudo: eval('my $p=8;', :lang<perl5>) 16:45
p6eval rakudo 49e62f: TIMED_OUT
jaffa8 moritz_, you mean nothing.
moritz_ jaffa8: a timeout in p6eval is not the same as "not working at all" 16:47
jaffa8 So what does it mean? 16:48
moritz_ it means it exhauted a resource limit.
*exhausted* 16:49
jaffa8 I imagine that it should be fast.
that it should not use too much resources.
moritz_ well, it has to do moe than plain rakudo, in any case 16:50
more
moritz_ can't type
jaffa8 do you know how to optimise rakudo? 16:52
How to go about it?
moritz_ I don't know
probably involves more static analysis
and optimization for the POST stages
jnthn I didn't even look at Blizkost for quite a while - I was away, then focusing instead of the signature binding stuff. 16:54
That branch is landed now, so I'll probably look at it some more again.
It will probably need some updating. 16:55
Because the pcc_reapply branch has landed.
(In Parrot.)
17:06 astrojp left, astrojp joined 17:14 tuxdna joined 17:20 jaffa8 joined
jnthn jaffa8: .hu? You in Hungary? :-) 17:21
17:22 revdiablo joined 17:23 justatheory joined 17:26 masak joined
masak gets out of a limo and walks into #perl6 17:26
oh hai
jnthn masak! 17:27
masak jnthn!
jnthn I actually saw a stretch limo outside the airport this morning.
masak in Italy?
jnthn No, here in Blava, while waiting for the bus.
17:28 c9s_ joined, revdiablo joined 17:29 namenlos_ joined 17:38 namenlos__ joined
jnthn tries to install KDE on Windows while making some food 17:38
Hopefully I can get KCacheGrind to run. :-)
moritz_ chokes 17:39
masak good luck. Ö=
:)
moritz_: oh hai. please don't choke.
we're too far away to clear your airways.
moritz_ recovered
oh hai masak
jaffa8 jnthn, yes I am Hungary and I am going to visit you soon. 17:44
pmichaud colomon: if you get a chance, I'd be interested in doing/not doing :) 17:45
jnthn jaffa8: \\o/
oh hai pmichaud :-)
colomon pmichaud: I'm not sure what you're talking about, but it's a pretty good time for me... just watching the boy and some football.
pmichaud 16:37 <colomon> I should add that he doesn't directly mention Perl 6 in any way -- but its big picture approach covers things we are doing and/or not doing. :) 17:46
17:46 tak11 joined
colomon ah! 17:46
gotcha.
pmichaud (I enjoyed the slides, btw)
colomon bits that caught my attention WRT rakudo: 17:47
jnthn pmichaud: How's nqp-rx going? Current idea of rough schedule for when we'll branch and start doing the grammar atop of it?
jaffa8 What slides?
colomon seems like we're doing well on the distributed programmers but unified hierarchy front.
jaffa8: www.slideshare.net/gvwilson/bits-of...ce-2338367
I'm talking about slide 24: physical distance doesn't affect post-release bug rates, but distance in the organizational chart does. 17:48
we're all over the world, but any of us can talk to TimToady, pmichaud, or jnthn pretty much at will. 17:49
pmichaud I believe in very shallow structures :)
(organizational structures)
colomon That also suggests that the biggest risk on that front is the Rakudo / Parrot split, which seems right to me.
Slide 21, "Rigorous inspections can remove 60-90% of errors before the first test is run." -- that seems to suggest that Dalek's notifications of commits being pushed is exactly the right thing to do. 17:52
pmichaud agreed there
masak "I just want to point out that even the best of us aren't doing what we expect the makers of acne creams to do." (Greg Wilson)++
japhb Yeah, that one's a great quote.
colomon I wasn't aware there was literature supporting code reviews so strongly.
jaffa8 I think working in pairs must be effective. 17:53
Do you do that?
pmichaud I have to share that quote with my wife when she gets home. It's bound to be doubly-interesting since she works for a cosmetics company. :)
moritz_ I'd really like to try pair programming some day 17:54
jaffa8 I have tried it.
pmichaud I've found it to be very useful, when I've done it.
jaffa8 It reduces day-dreaming and wondering off. 17:55
colomon Another interesting point: slide 15 "Productivity and reliability depend on the length of the program's text, independent of language levle." 17:56
To me, that is a strong argument in favor of Perl 6.
jaffa8 that does not take modularisation into account. 17:57
japhb colomon, yeah, that one's a mainstay of the dynamic languages crowd.
colomon Perl 6 seems particularly strong in this front, from the languages I know. 17:58
japhb Ditto that. 17:59
pmichaud TimToady: (when you get a chance) In STD.pm, what do you see as the semantic or key difference between <noun> and <term> ? 18:01
colomon things like "slurp(filename).comb" and >>+<< on multi-dimensional arrays let you do a lot of work trivially.
18:01 lichtkind joined
colomon On the other hand, "The two biggest causes of project failure are poor estimation and unstable requirements." 18:02
lichtkind is there a rebol compiler for parrot in the making
?
colomon Seems like the spec's frequent shifts should be worrying in that context. 18:03
Though it feels to me like TimToady does a good job of keeping the shifts reasonable...
pmichaud the shifts are because of implementation requirements
in many ways, if we don't change the spec, we'll be left with something unworkable 18:04
put another way -- sometimes we have to adapt the plan due to conditions in the field :) 18:05
colomon pmichaud: some are, but things like the new ... series operator and Numeric are pretty much just "we had another good idea," aren't they?
pmichaud colomon: not really (more)
in many ways, the ... series operator came out of problems I had cited with the .. range operator
dalek ok: befd784 | moritz++ | src/regexes.pod:
[RX] Match objects
pmichaud i.e., there were places where the .. range operator wasn't working (or workable) as specced 18:06
so, we knew we had to fix the range operator. The result of fixing the range operator was improvements in the ... series operator
same goes for Numeric
for years we've been unable to nail down the relationship between Int, Num, Complex, etc.
the result of fixing that relationship was the identification of Numeric 18:07
so, both examples you cite here come directly out of implementation difficulties from what was in the spec
jnthn Actually, in my earlier days hacking on Rakudo, I was somewhat for the notion of trying to get the spec into some frozen form Real Soon, but the longer I've worked on it, the more I've felt that prematurely freezing the spec will actually result in it taking us more time to get to a 6.0.0 release (because many changes simplified implementation), and it'd be worse. 18:09
colomon Like I said, I think TimToady is good at doing the right thing here. :) 18:10
18:14 synth joined
jnthn Aye. 18:14
masak I used to be hoping for a Day When Perl 6/the spec/Rakudo is Released and Done and Finished and Wonderful. nowadays, I just use Rakudo, and try to nudge others out of the apathy caused by waiting for Christmas. 18:18
colomon My boy just demanded that I read him "Duck & Goose Find A Pumpkin" four times in a row (since my last comment 8 minutes ago), and is now climbing my leg and trying to put the book into my hands again...
pmichaud how old? 18:19
masak colomon: read it to him a fifth time! :)
colomon 13 months
pmichaud heh
yes, repetition is desirable at that age :)
colomon five times it is. 18:20
masak colomon++ 18:21
colomon That seems to have satisfied him for the moment. :)
pmichaud it's interesting to read the stories of CTW (Children's Television Workshop, makers of Sesame Street) and what they discovered about repetition and learning :)
colomon That's actually the first time he's really done that to me, which seems like a cool step forward in his development.
Seems like he developed several interesting new traits during the 60 hours I was away on the trip to Toronto. 18:22
(now he's sticking his finger in the empty Ethernet port on my Macbook Pro.) 18:23
pmichaud: so what do we need to do to implement i as a standalone constant? 18:25
pmichaud best bet is wait for the grammar updates in a couple of weeks
moritz_ colomon: have you tried putting 'constant i = 1i;' somewhere in the setting?
colomon yes, and it failed miserably.
pmichaud you could try that in the setting also
might also double-check that there's not a term:<i> hiding somewhere in the grammar 18:26
jnthn Another reason it may not work is because when constant was implemented in Rakudo, it was spec'd as lexical, whereas now it's spec'd as package scoped...and also "is export" don't work on constants I don't think.
colomon Easy way to test if it's the name i or just having a constant, right? give me a momment.... 18:27
pmichaud regardless, whatever you do now is likely to get undone in a week or two :)
18:27 icwiener joined
colomon :) 18:28
pmichaud (that's true for "i", not necessarily true for things in general)
jnthn pmichaud: While we're re-doing the grammar and actions, one thing we may consider...
moritz_ I thought STD.pm also defined i as a constant in the setting 18:29
jnthn ...is wether this is time to fix up method addition to work via the meta-class.
moritz_ for lexical overridability
jnthn That is, we actually are making calls to .add_method on the HOW. 18:30
colomon constant complexi = 1i;
jnthn Which will be on big step towards custom meta-classes, which is a big step towards making some folks happier. :-)
pmichaud jnthn: as opposed to letting it happen at compile time?
colomon added that to Complex.pm, then hit make.
masak jnthn: wohoo, custom metaclasses! \\o/
colomon in perl6 REPL, then, "say complexi" got "Could not find non-existent sub complexi"
moritz_ colomon: did you add it to the inside of the class? 18:31
jnthn pmichaud: Well, thing is, at the moment we just have the fact that something has :method on it result in it getting shoved into the Parrot-level class.
colomon no, outside of the class
jnthn pmichaud: But if there's a custom meta-class, there may not be some underlying Parrot class.
moritz_ colomon: I fear that constant can't properly be imported or exported atm 18:32
colomon moritz_: I thought something like that might be the case.
pmichaud jnthn: somehow custom metaclasses is low on my priority list. 18:33
if we can do it easily, okay, but I think we're going to be pretty busy already
18:33 abra joined
pmichaud November 19 will come up pretty quickly. :) 18:34
jnthn pmichaud: It just occurs to me that it'd be easier to put it in right in the first place than re-jig it later.
Yes, it's not critical. I just wanted to get your first impressions.
pmichaud I suspect that changing it later won't be difficult, in the new design.
I'll keep it in mind.
jnthn Yes, that is also very possible. 18:35
I probably shouldn't make too many assumptions about how hard things will be based on the current design. :-)
pmichaud definitely. 18:36
jnthn pmichaud: Would it make sense to create some wiki page somewhere to note down the things we really do want to achieve during the branch?
pmichaud sure, or just a file in the repo itself 18:37
jnthn Like, the rw refactor, and so on.
Yes, or that.
Either works for me.
pmichaud in many ways I see this less as a refactor and more as a rewrite using different assumptions :)
other things I expect to change: add & sigils to subroutines 18:38
18:38 masak` joined
pmichaud operator names will include the angles -- i.e., "infix:<+>" instead of "infix:+" 18:38
jnthn \\o/
I've wished they had them more than once recently.
Is that spec now?
pmichaud is what spec/
?
jnthn The name-mangling form of operators? 18:39
pmichaud oh, sure, it's in S06
jnthn Also, what about e.g. infix:<< < >>
?
pmichaud that's infix:<\\<>
jnthn OK.
pmichaud oh, looks like TimToady++ changed it recently 18:40
that's infix:<<>
S06: The canonical form always uses angle
brackets and a single space between slice elements. The elements
are not escaped, so C<< PKG::circumfix:{'<','>'} >> is canonicalized
to C<<< PKG::{'circumfix:<< >>'} >>>, and decanonicalizing always
involves stripping the outer angles and splitting on space, if any.
although I wonder if that should in fact be &infix:<+> and &circumfix:<< >> 18:41
and this approach does get closer to what Rakudo has been doing, which would be to omit the angles altogether 18:42
jnthn Heh, yes. It would involve less stripping.
pmichaud anyway, the new operator precedence parser doesn't care what the names end up being 18:43
so we can do whatever canonicalization the spec decides it wants :)
jnthn OK, cool. 18:44
18:44 abra joined
jnthn I also noticed this nugget when reading chromatic++ write-up of the phone meetings: 18:45
# my ($a, $b, $c) used to be considered a signature, added to the current pad
# it doesn't do that now
# that was bogus
Do you know off-hand what it's parsed as now?
18:46 masak joined
pmichaud not offhand -- looking 18:46
jnthn glances too 18:47
hmm
declarator still has
| '(' ~ ')' <signature> <trait>*
pmichaud yes, it appears to me it's a signature still 18:48
jnthn Which is the thing I'd expect the comment was regarding.
OK.
pmichaud perhaps the comment was recorded wrong
jnthn Perhaps.
pmichaud I don't remember it that closely -- I had to miss part of TimToady's comments to switch phones 18:49
jnthn Would be interesting to know. It doesn't feel quite right to me having a signature there...
pmichaud I think signature is still correctish
jnthn The thing that bothers me about it is that we're not doing an operation on the signature in any way. 18:50
pmichaud since "sub foo($a, $b, $c) ..." creates lexical variables, it makes sense that "my ($a, $b, $c)" would do something very similar.
jnthn We're just extracing a list of variables.
Yes, my problem is in the use of the signature.
moritz_ std: my ($a, :$b)
jnthn In the sub case, we use the signature binder.
p6eval std 28893: OUTPUT«ok 00:02 107m␤»
moritz_ std: my ($a, *@b)
p6eval std 28893: OUTPUT«ok 00:02 105m␤»
jnthn moritz_: Exactly. What does my ($a, :$b) = 1, 2; mean compared to my ($a, $b) = 1,2; ?
pmichaud a bigger question is whether types are allowed in the parens 18:51
i.e., can I do
jnthn That too.
moritz_ jnthn: binding error? no idea ;-)
pmichaud my (Int $a, Str $b) = ...
jnthn moritz_: It can't be a binding error becuase it's infix:<=>, not infix:<:=>
moritz_ jnthn: assignment error then ;-)
jnthn :-P
moritz_ but I really have no idea
jnthn pmichaud: Yeah. Also means that my Int (Num $a, Str $b) probably is an error. ;-) 18:52
pmichaud if we imagine that my ($a, $b) allows types or constraints on $a and $b, then that argues more for a signature-ish sort of thing.
jnthn std: my Int (Num $a, Str $b)
p6eval std 28893: OUTPUT«ok 00:02 108m␤»
moritz_ std: my Int ($a, $b)
jnthn pmichaud: We can do that too. I'm more worried aobut the things like the ? and : and * and other such things.
p6eval std 28893: OUTPUT«ok 00:02 105m␤»
pmichaud if we imagin that my ($a, $b) doesn't allow types or constraints, or that it should be my Int ($a, $b), then that argues more for a parcel sort of thing 18:53
jnthn Aye.
markmont Silly question, but how is $! called / pronounced in places where it can't be typed (branch names, filenames, etc.)?
moritz_ markmont: dollar-bang 18:54
jnthn I'm not sure. I just worry that we're going to surprise people by letting them write all the stuff they can in a signature, but having the actual runtime effect ignore them.
pmichaud anyway, I never much liked the notion of using a signature for scoped variable declarations either.
markmont moritz_: lol, ok, thanks.
pmichaud I tend to want "my ($a, $b) = foo()" to be more akin to "($a, $b) = foo" 18:55
jnthn pmichaud: Aye. And after the recent signature changes I did, where I had to patch that up too, I kinda like it even less.
pmichaud i.e., the result of the declarator is a list
jnthn Yes, it feels much more list-y to me.
moritz_ markmont: don't know if tehre's anything better for that
pmichaud maybe I'll do "my" variables in nqp-rx as list-y sorts of things and see if I run into any difficulties. (I'm doing nqp-rx variables today, including contextuals) 18:57
jnthn OK, that'd be interesting.
pmichaud list-y is certainly easier at first blush
afk for a bit # run to store 18:58
18:58 masak joined 18:59 tak11 joined
slavik I tried writing java code again ... after being away from it for like 4 years 19:14
I have no idea what I was doing
jnthn At least there isn't much syntax to re-learn. ;-) 19:19
It's just the small matter of the class library. :-)
markmont I have my first-ever attempt at a rakudo patch thanks to jnthn's help earlier. 19:22
github.com/markmont/rakudo/commit/c...464fba64b4
Should I just email it to rakudobug@perl.org ? Or more discussion/work first? 19:23
jnthn markmont: Hmm, curious. :-) 19:24
markmont: Out of interest, did you try throwing the Perl6Exception?
e.g. on this line:
throw ex
I seem to remember doing that was a problem. 19:25
Even though we'd probably like to be able to.
moritz_ markmont: did you run 'make spectest'?
markmont I *think* I did, if memory serves correctly, and got something along the lines of "that is not a throwable object"
jnthn markmont: Ouch, yes, that brings back...memories.
:-/
markmont moritz_: yes, it passes all spectest
moritz_ markmont: that's good
jnthn markmont: Is there some spectests you can un-fudge, or new ones you can add now, too? 19:26
It's always good to have some of those to show what the patch is making work, and so we can ensure it keeps working. :-)
moritz_ rakudo: try { 1 / 0 }; say ?$!
p6eval rakudo 49e62f: OUTPUT«0␤»
moritz_ rakudo: say ?try { 1 / 0 };
markmont jnthn: I did not see any to unfudge, but I can write some new ones for this. I have code that exercises everything, just not as tests yet.
p6eval rakudo 49e62f: OUTPUT«1␤» 19:27
jnthn markmont: OK, cool.
BTW, I know you just updated the original, which is fine, but this line bothers me a little: set_global '$!', p6ex
But anyway, it seems that this patch makes things overall better. 19:28
markmont jnthn: How could that line be changed/improved? 19:30
jnthn: is it the name p6ex or something else that is yucky? 19:31
jnthn markmont: No, it's nothing specific to your patch, just a comment on the implementation you patched in the first place. :-) 19:32
Of note, I was under the impression $! was lexical-ish, so setting a $! global just felt a tad odd.
markmont jnth: Ah! (I can't think of a change at the moment, but maybe later...) 19:33
jnthn: I see. Should this be reworked now to change the lexically scoped one? 19:35
moritz_ markmont: you might check if rt.perl.org/rt3/Ticket/Display.html?id=62336 can be closed with your patch 19:36
jnthn markmont: I'm not actually sure how it should look off-hand, tbh. 19:38
markmont: Probably needs some spec research.
But I'm rather tired and my branes are like mush tonight. 19:39
So I'm more likely to send you down the wrong path than the right one...
markmont jnthn: I'll submit that line in the patch as-is for now, then, as the learning curve for all this today has fried my brain :) 19:40
jnthn :-)
markmont++
moritz_ just git-format-patch HEAD^ and attache that file to the ticket mail
jnthn ohawesome i can haz kcachegrind 19:42
markmont moritz_: Will do, with some extra info as a writeup (I've got it all prepped to go)
moritz_ markmont: great
markmont moritz_: Looking at rt#62336, it is definitely not closed with the patch. That ticket looks to be with object and methods in general; the patch I worked on today only deals with what gets put into $! 19:43
moritz_ markmont: ah yes, the return value of try is probably not an exception 19:45
slavik jnthn: I've never built a jar and never used log4j and all that other stuff 19:50
my previous java experience has been writing single file type programs for class
19:50 brunov joined 19:54 NorwayGeek joined
markmont Patch submitted; I'll take a break for a couple of hours and then come back and write the spectest tests for it: rt.perl.org/rt3/Ticket/Display.html?id=70011 19:58
masak markmont++ 20:05
jnthn markmont++ indeed :-) 20:06
jnthn likes seeing Rakudo patches
20:06 tuxdna joined
jnthn oooooohhhhh! This profile is SO pretty!!! 20:15
20:18 ShaneC joined
colomon jnthn: which profile? 20:20
jnthn colomon: Profile of Rakudo startup, viewed in KCacheGrind.
There's one place that is *hugely* expensive. 20:21
colomon and then, pretty in what way? :)
oh, the best kind of profile pretty!!!
jnthn Well, in the "I can actually get a nice visual idea of where we spend time on Rakudo startup" now. 20:22
Guess what? It was in many cases not where I expected
colomon jnthn: that's always the way, isn't it? 20:23
:)
what does the profile look like, visually? I've always just used gprof's text output for my profiling... 20:24
moritz_ rectangles in various sizes
jnthn colomon: If you google for KCacheGrind, you'll see some screenies. 20:25
colomon just did that as you were typing. :)
interesting -- in theory I can get that working for my Mac. 20:26
gprof not working on OS X is the biggest weakness in my setup here, IMO. 20:27
20:30 mikehh joined
masak pmichaud: 'Perl 6 "sandwiches" an operator-precedence parser in between two Recursive descent parsers in order to achieve a balance of speed and dynamism.' -- en.wikipedia.org/wiki/Operator-precedence_parser -- is this an accurate description of what's happening in Perl 6? which two recursive-descent parsers? 20:31
moritz_ probably not two parsers, but two parsing steps 20:32
masak hm, seems luqui wrote that. I assume he knows what he's talking about.
moritz_: which two parsing steps? 20:33
moritz_ I've seen luqui here (or in the pugs commits)
jnthn He used to be very active on p6l
masak yes.
he was on the Perl 6 design team for a while.
2004-ish.
moritz_ masak: a traditional rec-desc parser has one subroutine for each precedence level 20:34
masak moritz_: aye.
moritz_ masak: so it has to squeeze one in
masak hm. I half get it.
jnthn OK, if this profiler output on Rakudo startup is really right, I think there's a good chance I can spend time on some hot spots and get us some win. 20:35
masak the operator precedence parser is used for the EXPR level in the Perl 6 grammar, in STD.pm as well as in Rakudo.
does the 'sandwiched' comment mean that besides the RD parser doing stuff on the level above EXPR, it also does stuff below the level of EXPR? 20:36
colomon jnthn: reading up on callgrind. I'm worried it might not be as accurate as gprof?
masak if so, is there a concrete example?
colomon jnthn: (reading on) then again, maybe it's the other way around. 20:37
jnthn colomon: Note that I'm not using callgrind, just KCallGrind (the visualisation).
erm
KCacheGrind I meant.
The data is produced by Parrot's profiling runcore.
colomon o! 20:38
so Parrot can profile and output in a format KCacheGrind likes? Sweet!
jnthn Yes, thanks to recent work by a copule of folks on the Parrot team (chromatic++ and cotto++) 20:39
masak I find it interesting how almost everyone goes through a stage where they want to use Perl 6 grammars to parse XML. 20:40
that's neither very efficient nor very convenient in the long run.
might be a useful example/exercise, of course...
colomon masak: Not me! I have studiously ignored XML in all its manifestations.
masak colomon: :)
moritz_ masak: but it does defeat the old "you can't parse HTML or XML with regexes"
;-)
masak moritz_: very true. 20:41
which is also a solid proof that Perl 6 grammars aren't reducible to FSMs.
moritz_ masak: but Flying Spaghetti Monsters are tasty, aren't they? ;-) 20:42
masak was waiting for that :)
they're tasty, but not as powerful as Perl 6 grammars.
moritz_ add a "constant memory" to the FSM, then you're right
in fact bot Perl 5 and Perl 6 regexes can do things you can't do with PDAs 20:43
s/bot/both/
masak moritz_: re constant memory: the "F" in FSM means "Finite". 20:44
20:44 hanekomu joined
moritz_ masak: in automaton theory all machines are finite, but some are attached to stacks or tapes 20:44
masak the prototypical example of what FSMs cannot do is balancing parentheses. that's isomorphic to parsing XML. 20:45
moritz_ not quite
because xml allows identifier of arbitrary length
(at least last I looked)
so you can parse nested parenthesis with a PDA 20:46
but not if <foo>...</foU> matches, if the identifier is not limited in length
masak a PDA? a hand-held organizer?
moritz_ you'd need an LBA for that
push-down automaton
masak ah.
I'm not sure we're talking about the same limitation. 20:47
moritz_ I changed what I was talking about ;-)
masak the problem FSMs have with nested parentheses is that the nesting can be arbitrarily deep.
moritz_ right.
masak since there are only finitely many states...
moritz_ and PDAs solve that
but still can't parse XML with arbitrary long identifiers
masak I see, but are PDAs FSMs? 20:48
moritz_ PDA = finite, non-deterministic state machine + a stack
so PDA > FSM 20:49
masak I think the biggest hurdle I've had with regular expressions yet is matching up the practice (as seen in Perl) with the theory (as taught in CS).
I don't have a formal CS degree, but I'm trying to suck one up through osmosis. :)
moritz_ ;-)
neither have I
but I did teach an entry level CS tutorial at one point
masak nice. 20:50
colomon that's okay, I've got the CS degree, but I don't remember.
20:54 Chillance joined 20:56 eternaleye joined 21:00 jferrero joined
Coleoid Is this paste a known bug, a new bug, or a subtlety I don't get? 21:00
lisppaste3 Coleoid pasted "given / if match not setting $/" at paste.lisp.org/display/89267
21:01 tak__ joined
moritz_ Coleoid: new bug, afaict 21:02
jnthn Wow, that's an odd one. 21:03
Coleoid moritz_: How do I report it?
jnthn: I thought so too!
And, is this something that'll get autofixed by the new grammar work upcoming? 21:04
moritz_ Coleoid: mail to rakudobug@perl.org
no, looks like a semantic bug, nothing to do with parsing afaict
masak yawns
I feel exhausted. thinking of turning in early tonight.
moritz_ OMG NOEZ! 21:05
masak luckily the work week begins tomorrow, so I can recover. :)
moritz_ who's going to write our book then? ;-)
heh ;-)
masak moritz_: don't worry, I'll just lie down a little first. :)
moritz_ masak: good night then 21:06
masak night.
see y'all tomorrow!
21:08 gbacon joined 21:09 pmurias joined 21:11 rgrau joined
Coleoid moritz_: Bug mail sent. Thanks! 21:11
moritz_ Coleoid++ # reporting bugs
pmurias diakopter: ping
dalek p-rx: 2c50f13 | pmichaud++ | build/PARROT_REVISION:
Bump PARROT_REVISION.
p-rx: 2bc2d2f | pmichaud++ | src/NQP/ (2 files):
Clean up name a bit.
p-rx: b613e0d | pmichaud++ | (5 files):
Add variable support.
pmichaud masak: (sandwich) -- you're correct, we use rec-descent above expressions (for block and statement level constructs) and below expressions (for variables and terms) 21:14
jnthn pmichaud: The startup profile is interesting. 21:17
pmichaud: I just wrote a small patch that shaved 20% off current startup time thanks to it.
moritz_ wow.
moritz_ is duely impressed
21:18 alester joined
moritz_ speaking of being duely impressed... 21:18
jnthn pmichaud: Our next biggest cost after that patch are apparently in calls to ACCEPTS in P6protoobject, and after that in meta-op generation. I think we may want to consider doing those more lazily. ;-)
moritz_ the protoregex action methods look quite nice
+method noun:sym<variable>($/) { make $<variable>.ast; }
+method noun:sym<scoped>($/) { make $<scoped>.ast; }
I'll use those quite a lot in the JSON parser too 21:19
jnthn Ooh, pretty.
moritz_ maybe there's something that can be automated
jnthn Yeah
I'm looking at those now thiking "oh hmm, boilerplate" :-)
moritz_ like if there's only one capture, its AST could be make()d automatically if there's no custom action method
doesn't feel like the right level yet 21:20
21:22 icwiener joined 21:27 payload joined 21:41 mikehh joined 21:54 am0c joined, snarkyboojum joined 22:17 camlin joined
camlin ls 22:17
oops
I have a quick question. is there going to better object support in perl 6 or is it going to stay the way it is? The only reason I use python is because of its nice object and class structure. 22:18
moritz_ Perl 6 has a very nice object model
with syntax! ;-)
camlin ooooh
moritz_ and introspection
camlin is it still in perl 6 still in beta or ready to roll? 22:19
moritz_ we plan to have a useful release by April 2010, though it won't be fully feature complete
camlin is it downloadable (I know I can google this but I'm on console only :( ) 22:20
moritz_ rakudo.org/how-to-get-rakudo
should work with a text browser ;-)
camlin what is rakudo? 22:21
snarkyboojum plenty of syntax with Perl6 OO :)
moritz_ camlin: a Perl 6 compiler
camlin aah, I see. Can I not compile it with gcc?
moritz_ there's a language specification, and various compilers
yes. You also need parrot, but rakudo's Configure script can build that for you 22:22
camlin oh that's very nice :) Thank you all very much. The perl community is being very nice to be (was kicked once from #python)
moritz_ we try hard to be nice ;-) 22:23
jnthn
.oO( wonder if he was kicked after bringing up whitespace ;-) )
moritz_ oh, is that a senstive spot in the python community? ;-) 22:24
jnthn I realized that we don't need to call the multi-sub transformer only to do a check and see it didn't need to be called. Doesn't actually save much, but moves it down a rung or two in the "things we spend most time doing at startup" table.
Anyway, after an evening playing around with the profiler, I think I can safely say that we're going to be able to get some useful info from it that will help direct our optimization efforts. 22:25
carlin gist.github.com/218283 # is what I've done for recv, would someone mind checking that to see if maybe there's a better way to do what I've done there or something that I've missed before I send it to to RT? 22:26
moritz_ last unless $received; 22:28
what if $received is '0'?
22:28 rfordinal joined
moritz_ last unless $received.chars(); maybe? 22:29
moritz_ does a dd if=/dev/zero of=/dev/hda
that's going to take some time :/
carlin Ah, that's a point 22:32
carlin changes it
moritz_: apart from that does it look alright? 22:33
moritz_ carlin: yes
(though I just glanced over it)
carlin cool, and that change worked 22:37
carlin send to RT
22:44 brunov joined
dalek kudo: 6817b90 | jonathan++ | src/parser/actions.pm:
Turns out we already keep enough info around at compile time to have a good idea if we already saw a multi candidate of a given name. That means we can avoid many calls to !TOPERL6MULTISUB at startup when all it would do is determine it has nothing to do. Only a couple of percent, it seems, but every little helps.
22:46
kudo: 67a6a81 | jonathan++ | src/ (2 files):
Do some optimization work on the reblessing of subs into their Perl 6 classes at startup. Between a tweak in !fixup_routine_type and some small optimizations to the rebless_subclass op, we save roughly 20% off the startup time before this patch. profiling++ (chromatic++, cotto++, kcachegrind++ too).
22:52 nihiliad joined 22:53 PZt joined 22:57 pnate joined
moritz_ rakudo: say 10/48 # startup improvement per file 23:06
p6eval rakudo 49e62f: OUTPUT«0.208333333333333␤»
moritz_ jnthn++
23:06 s1n_mini joined
moritz_ rakudo: say 10/48 * 454 23:07
p6eval rakudo 49e62f: OUTPUT«94.5833333333333␤»
23:07 mikehh joined
jnthn Wow. A minute and a half off a spectest run. 23:07
That's kinda nice. 23:08
moritz_ aye
jnthn I'm hopeful that with some further startup shavings and also the faster parsing we should be getting, we can make a very notable improvement by the next release. 23:09
moritz_ that would be really nice.
jnthn Indeed. I love having lots of tests, but a spectest run is getting really quite long now. :-)
moritz_ ah, our trick starts to work ;-) 23:10
jnthn Annoy the developers into making the tests run faster? :-P
moritz_ aye 23:11
jnthn ;-)
The time shaved off a spectest run is quite a nice measure.
moritz_ but something that can only be measured locally
I mean you can't compare the times for two releases
because the tests change too much 23:12
jnthn Oh yes 23:15
tools/benchmark.pl is nicer for that.
But for a "how much did this change help on the current test suite", it's kinda interesting to know. 23:16
moritz_ aye
23:17 xinming joined, kentnl_ joined, patspam joined 23:29 SmokeMachine joined 23:30 xp_prg joined 23:32 wknight8111 joined 23:44 cottoo joined 23:51 payload joined 23:54 eternaleye joined 23:55 eternaleye joined 23:56 eternaleye joined 23:57 tkr joined