samcv MasterDuke, yeah I thought the same. though i'm not sure where that literal stuff ends up 01:00
but i'm assuming it's just checking uc and lc versions of the string. which is not that great
any NFA.nqp knowledgeable people here? 01:01
MasterDuke i tried changing the uc and lc in literal to just fc, but that broke a couple tests 01:19
m: say "A" ~~ /:i a [b] / 02:52
camelia Nil
MasterDuke ignore that 02:53
m: say "A" ~~ /:i ab / 02:54
camelia Nil
MasterDuke when i changed the ignorecase branch in `method literal` in src/QRegex/NFA.nqp to use fc instead of uc and lc, that ^^^ started matching 02:55
m: say "A" ~~ /:i a | b / 02:57
camelia ļ½¢Aļ½£
MasterDuke and that ^^ stopped matching
samcv which started matching? "A" ~ 05:48
"A" ~~ /:i ab / # this?
MasterDuke,
[Tux] This is Rakudo version 2017.02-226-g9d7c0ab8f built on MoarVM version 2017.02-35-gdc40845b 07:42
csv-ip5xs 2.881
test 14.114
test-t 5.407 - 5.512
csv-parser 13.683
samcv [Tux], CSV might be faster now. idk 08:53
i at least made MVM case insensitive string compare probably fair amount faster
haven,t done any benchmarks but could be very significant
depending on the length of the haystack. it used to lowercase the whole haystack and whole needle then compare the two, now it only foldcases the haystack where it needs to 08:54
but it doesn't look like we have a case insensitive index op for nqp 09:00
lizmat hmmm... looks like we lost 10% performance for test-t in the past day ? 10:14
Geth rakudo/nom: 27dc7b155b | (Elizabeth Mattijsen)++ | src/Perl6/World.nqp
Fix RT #130979
10:31
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130979
Geth rakudo/nom: 1e246665cd | (Elizabeth Mattijsen)++ | src/Perl6/World.nqp
Better fix for RT #130979

Previous fix would just ignore any compile time errors in use arguments. Which could lead to unexpected results in case of a typo on a use statement for a module that *does* exist. Not sure how we can actually pass on the actual compile time error. Also, there appear to be a lot of similar cases in World.nqp that are "unprotected", which may need attention.
10:54
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130979
travis-ci Rakudo build passed. Elizabeth Mattijsen 'Fix RT #130979' 11:10
travis-ci.org/rakudo/rakudo/builds/210023624 github.com/rakudo/rakudo/compare/1...dc7b155b9a
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130979
jnthn lizmat: There's functions to help with that 11:20
Well, methods probably
handle-begin-time-exceptions 11:21
github.com/rakudo/rakudo/blob/nom/....nqp#L3228
Which spits out decent errors 11:22
m: sub foo() { die }; BEGIN foo
camelia 5===SORRY!5=== Error while compiling <tmp>
An exception occurred while evaluating a BEGIN
at <tmp>:1
Exception details:
Died
in sub foo at <tmp> line 1
in code at <tmp> line 1
samcv u: { abs($_.uc - $_.lc) > 100 } 11:29
unicodable6 samcv, Ā«timed out after 30 secondsĀ» Ā«exit signal = SIGHUP (1)Ā»
samcv u: { my $a = abs(.chr.uc.ord - .chr.lc.ord); .say if $a > 100 } 11:36
unicodable6 AlexDaniel, MasterDuke: Hey folks. What's up with me?
samcv, Oops, something went wrong!
samcv u: { my $a = abs(.chr.uc.ord - .chr.lc.ord); $a > 100 } 11:37
unicodable6 samcv, U+00B5 MICRO SIGN [Ll] (Āµ)
samcv, U+00DF LATIN SMALL LETTER SHARP S [Ll] (Ɵ)
samcv, 436 characters in total: gist.github.com/27948e188ad478c832...35651d873f
samcv u: { my $a = .chr.uc.ord - .chr.lc.ord; $a > 0 } 11:40
unicodable6 samcv, U+00B5 MICRO SIGN [Ll] (Āµ)
samcv, U+00FF LATIN SMALL LETTER Y WITH DIAERESIS [Ll] (Ćæ)
samcv, 194 characters in total: gist.github.com/392a28711e7f6088ce...e59b3d8bfc
samcv m: 'Āµ'.uc.ord.say; 'Āµ'.lc.ord.say
camelia 924
181
travis-ci Rakudo build passed. Elizabeth Mattijsen 'Better fix for RT #130979 11:43
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130979
travis-ci travis-ci.org/rakudo/rakudo/builds/210026985 github.com/rakudo/rakudo/compare/2...246665cd7e
Geth roast: a83d973edc | (Elizabeth Mattijsen)++ | 2 files
Fudge tests broken with RT #130980

Because github.com/rakudo/rakudo/commit/1754dc5f7e broke them.
12:14
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130980
lizmat jnthn: handle-begin-time-exceptions is given a block, at the moment of RT #130979 there's only an $expr.ast 12:17
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130979
jnthn lizmat: Yes, the block to pass to it is self.compile_time_evaluate($/,$expr.ast) 12:18
I think if you just wrap that in curlies and pass it to handle-being-time-exceptions it should work out
lizmat ah, ok
gist.github.com/lizmat/71581ee220d...bb016a4967 # jnthn, this way? 12:41
jnthn: if so, that just reverts to the previous (silently) ignoring the error case :-( 12:42
afk& 12:49
jnthn Huh, wonder what's catching it... 13:08
IOninja c: HEAD for ^100_000 { $ = 'ļ¬†' ~~ m:i/st/ }; say now - INIT now 13:37
committable6 IOninja, Ā¦HEAD(1e24666): Ā«2.5304067Ā»
IOninja c: 2017.02 for ^100_000 { $ = 'ļ¬†' ~~ m:i/st/ }; say now - INIT now
committable6 IOninja, Ā¦2017.02: Ā«1.8736184Ā»
IOninja m: say 2.53/1.87
camelia 1.352941
IOninja samcv: seems it got slower, not faster? Could this be the 10% slowdown we're seeing in test-t bench? 13:38
samcv IOninja, are we sure it's caused by that though? hm
could try running test-t before that commit with current rakudo otherwise 13:39
IOninja 'abcdefghigklm' ~~ m:i/HIG/ is 4% faster
samcv yeah it should be faster. especially the longer the haystack
IOninja samcv: no idea what it's caused by. Just guessing here 13:40
samcv i bet if you put a page of text it'd be like 25% at least faster
needs less memory churn too i think
IOninja Just got `for ^100_000 { $ = 'abcdefghigklm' x 1000 ~~ m:i/HIG/ }; say now - INIT now` to segfault in #zofbot once. But can't repro.. 13:42
'abcdefghigklm' x 100 ~~ m:i/HIG/ is now 61% faster 13:43
samcv++
samcv nice :)
moritz samcv++ 13:45
samcv it can be even faster if i get some indexci op to go along with eqatic 13:46
not sure 100% how it works at that low level though.
MasterDuke benchable6: 2017.02,HEAD for ^100_000 { $ = 'ļ¬†' ~~ m:i/st/ } 13:57
benchable6 MasterDuke, starting to benchmark the 2 given commits
MasterDuke, benchmarked the given commits, now zooming in on performance differences 13:58
MasterDuke, gist.github.com/db9711a7dc2980c612...6453ad7ff8
samcv benchable6: 2017.02,HEAD for ^100_000 { $ = 'ļ¬†' ~~ m:i/st/ } 14:07
MasterDuke, how many runs does it do, does it do any rounding? 14:08
oh i think it's AlexDaniels bot nvm
MasterDukeMobile It does five runs and then takes the min 14:28
timotimo so ... that got slower? :\ 15:08
only for short strings, then?
jnthn notes that this was primarily a correctness patch :) 15:11
Being fast but wrong is less useful ;)
IOninja Yeah :)
It's a helluva faster for large input
timotimo hah :)
that's nice 15:12
jnthn bbl & 15:15
Geth rakudo/nom: 28a48ea593 | (Samantha McVey)++ | CONTRIBUTING.md
Add git commit style guide to CONTRIBUTING.md
15:33
samcv IOninja, the case insensitive regex is what you're talking about? 15:34
IOninja yes 16:00
naxieAlDle hmm 16:08
bench: 2017.02,HEAD for ^100_000 { $ = 'ļ¬†' ~~ m:i/st/ }; say now - INIT now
ahā€¦
IOninja bot's ded
naxieAlDle bench: 2017.02,HEAD for ^100_000 { $ = 'ļ¬†' ~~ m:i/st/ }; say now - INIT now 16:09
benchable6 naxieAlDle, starting to benchmark the 2 given commits
naxieAlDle let's see if it works
benchable6 naxieAlDle, benchmarked the given commits, now zooming in on performance differences
naxieAlDle ah, it was already triedā€¦ should've backlogged a lil bit more
benchable6 naxieAlDle, gist.github.com/8b95a45f7697669881...f030f05145 16:11
naxieAlDle that's better :) 16:12
I wonder if it can actually find it 16:13
bench: 61a65ce,26e6993 for ^100_000 { $ = 'ļ¬†' ~~ m:i/st/ }; say now - INIT now
benchable6 naxieAlDle, starting to benchmark the 2 given commits
naxieAlDle, benchmarked the given commits, now zooming in on performance differences
naxieAlDle, Ā¦61a65ce: Ā«2.0492Ā» Ā¦26e6993: Ā«2.7941Ā»
naxieAlDle ah!! It already did!! 16:14
benchable6++
MasterDuke: why didn't it work the first time?
MasterDuke not sure. maybe the server was overloaded when running it the first time and the timings were off 16:18
naxieAlDle I don't think the cpu load has ever been >10% 16:23
MasterDuke huggable: shrug 16:25
huggable MasterDuke, nothing found
naxieAlDle m: say ā€œ\c[SHRUG]ā€
camelia šŸ¤·
[Tux] Updating submodules .................................... FAIL 17:08
git error: fatal: destination path '/pro/3gl/CPAN/rakudobrew/moar-blead-nom/nqp/MoarVM/3rdparty/libtommath' already exists and is not an empty directory.
fatal: clone of 'git://github.com/MoarVM/libtommath' into submodule path '/pro/3gl/CPAN/rakudobrew/moar-blead-nom/nqp/MoarVM/3rdparty/libtommath' failed
Failed to clone '3rdparty/libtommath'. Retry scheduled
fatal: destination path '/pro/3gl/CPAN/rakudobrew/moar-blead-nom/nqp/MoarVM/3rdparty/libtommath' already exists and is not an empty directory.
fatal: clone of 'git://github.com/MoarVM/libtommath' into submodule path '/pro/3gl/CPAN/rakudobrew/moar-blead-nom/nqp/MoarVM/3rdparty/libtommath' failed
Failed to clone '3rdparty/libtommath' a second time, aborting
IOninja [Tux]: rm -fr nqp/MoarVM/3rdparty/libtommath 17:09
MasterDuke gotta rm 3rdparty/libtommath
[Tux] that's what I just did, but it is new
lizmat [Tux]: what worked for me was to nuke the nqp dir 17:11
Geth rakudo/nom: d444f655fd | (Elizabeth Mattijsen)++ | 3 files
Prevent unneccesary creation if iterator objects

Check whether we can return a Rakudo::Iterator.Empty in the "new" method, rather than in the !SET-SELF method where the iterator object is already created.
17:13
lizmat *of
grr
[Tux] This is Rakudo version 2017.02-233-g28a48ea59 built on MoarVM version 2017.02-39-gd7caeba3 17:23
csv-ip5xs 2.867
test 12.352
test-t 5.036 - 5.039
csv-parser 12.905
Geth roast: f16293c444 | (Daniel Green)++ | S02-types/int-uint.t
Whitespace fix only
22:05
MasterDuke is this test correct? github.com/perl6/roast/blob/master....t#L45-L47 22:06
m: my int $a = 2**63; say $a 22:08
camelia -9223372036854775808
MasterDuke m: my int $a = 2**64; say $a
camelia Cannot unbox 65 bit wide bigint into native integer
in block <unit> at <tmp> line 1
MasterDuke m: my int $a = 2**63-1; say $a
camelia 9223372036854775807
MasterDuke m: my int $a = 2**63+1; say $a
camelia -9223372036854775807
MasterDuke we allow you to assign values that are a little bit more than the max the type can hold, but not one that are a lot more 22:09
s/one/values/ 22:10