Perl 6 language and compiler development 2.0 | Logs at irclog.perlgeek.de/perl6-dev/today | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
Set by moderator on 9 May 2018.
01:57 ilbot3 joined
moderator Perl 6 language and compiler development 2.0 | Logs at irclog.perlgeek.de/perl6-dev/today | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
Geth roast: c65ed93912 | skids++ | S14-roles/conflicts.t
Add test for RT#126724
03:56
synopsebot RT#126724 [new]: rt.perl.org/Ticket/Display.html?id=126724 [BUG] Unsatisfactory internal error when trying to compose two roles (connected with 'does') that share the same private attribute in Rakudo
Geth rakudo/cur-candidates: 10 commits pushed by (Nick Logan)++
review: github.com/rakudo/rakudo/compare/2...620ceff614
04:07
roast/cur-candidates: cab3dd0571 | (Nick Logan)++ | S11-repository/cur-candidates.t
Add CUR candidates tests
04:08
rakudo: ugexe++ created pull request #1812:
Improve and consolidate distribution lookup
04:28
07:39 robertle joined 08:39 unicodable6 joined, nativecallable6 joined, undersightable6 joined, greppable6 joined, statisfiable6 joined, quotable6 joined, squashable6 joined
samcv good * 08:48
08:52 pmurias joined 09:08 FROGGS joined
jnthn o/ 09:19
09:31 ufobat joined 09:32 tadzik joined 09:35 ExtraCrispy joined 09:36 committable6 joined 10:03 CIAvash[m] joined, ilmari[m] joined, AlexDaniel` joined
lizmat Files=1239, Tests=76350, 316 wallclock secs (15.75 usr 5.66 sys + 2178.35 cusr 222.76 csys = 2422.52 CPU) 10:07
yoleaux 09:26Z <brrt> lizmat: i'll review the ctxlexpad later today
lizmat will be afk most of the day
10:49 brrt joined
[Tux] .tell MasterDuke --20 versions do not store their timings 10:57
yoleaux [Tux]: I'll pass your message to MasterDuke.
timotimo i have them in my irclogs 11:01
.tell MasterDuke hack.p6c.org/~timo/test-t-20-timings.txt 11:12
yoleaux timotimo: I'll pass your message to MasterDuke.
11:27 brrt joined
[Tux] Rakudo version 2018.04.1-65-gc66a6f0ec - MoarVM version 2018.04.1-97-g48cdf3d66
csv-ip5xs0.879 - 0.976
csv-ip5xs-208.542 - 8.901
csv-parser37.138 - 38.070
csv-test-xs-200.444 - 0.448
test9.400 - 9.574
test-t2.415 - 2.629
test-t --race1.014 - 1.018
test-t-2042.449 - 45.549
test-t-20 --race15.196 - 15.758
11:28
a second run was even slower
brrt wait, how come 11:34
13:11 ufobat joined 13:17 AlexDaniel joined
Geth rakudo: 7d2940eee0 | usev6++ | src/vm/jvm/runtime/org/perl6/rakudo/Binder.java
[JVM] Handle generic types in coercions on params

This ports the fix from github.com/rakudo/rakudo/commit/6902d51eb7 to the jvm backend (and makes RT #126383 pass).
13:39
rakudo: cc57d06a5c | usev6++ | src/vm/jvm/runtime/org/perl6/rakudo/Binder.java
[JVM] Typed exception if parameter constraint fails

This is a port of github.com/rakudo/rakudo/commit/f1cd8e313a to the jvm backend.
synopsebot RT#126383 [resolved]: rt.perl.org/Ticket/Display.html?id=126383 [NYI] Generic type can't participate in a coercive type
[Tux] brrt, no idea, sorry 13:52
Geth roast: 0b82765c97 | usev6++ | 4 files
[JVM] Unfudge now passing tests
13:59
samcv releasable6: status 14:13
releasable6 samcv, Next release in ā‰ˆ9 days and ā‰ˆ4 hours. 2 blockers. 0 out of 67 commits logged
samcv, Details: gist.github.com/52999ae567161d5f31...e9420124a3
14:30 lucasb joined 14:44 skids joined 15:00 pmurias joined 15:18 pmurias joined 15:41 pmurias joined 16:13 brrt joined
gfldex m: X::OutOfRange.new(:what<a range>, :got(0..3), :range(1..3)).throw; 16:17
camelia a range out of range. Is: 0 1 2 3, should be in 1..3
in block <unit> at <tmp> line 1
gfldex is there a reason to explode the Range in :got? 16:18
the culprit seams to be github.com/rakudo/rakudo/blob/mast...n.pm6#L917 16:22
m: X::OutOfRange.new(:what<a range>, :got(0..*), :range(1..3)).throw; 16:27
camelia a range out of range. Is: 0..*, should be in 1..3
in block <unit> at <tmp> line 1
gfldex m: X::OutOfRange.new(:what<a range>, :got(0..āˆž), :range(1..3)).throw;
camelia a range out of range. Is: 0..*, should be in 1..3
in block <unit> at <tmp> line 1
gfldex m: X::OutOfRange.new(:what<a range>, :got(0..10000), :range(1..3)).throw;
camelia a range out of range. Is: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 7…
16:43 pmurias joined
TimToady those should also be gisted, I expect 16:49
17:14 pmurias joined
Geth rakudo: gfldex++ created pull request #1814:
have X::OutOfRange gist the faulty value too, fixes #1813
17:18
synopsebot RAKUDO#1813 [open]: github.com/rakudo/rakudo/issues/1813 X::OutOfRange stringyfies instead of gistifies
Geth rakudo: 22d08069f1 | (Wenzel P. P. Peppmeyer)++ | src/core/Exception.pm6
have X::OutOfRange gist the faulty value too, fixes #1813
17:22
rakudo: 284f16dae3 | (Zoffix Znet)++ (committed using GitHub Web editor) | src/core/Exception.pm6
Merge pull request #1814 from gfldex/#1813

have X::OutOfRange gist the faulty value too, fixes #1813
gfldex \\o/ I fixed a rakudobug! 17:25
17:25 ufobat joined
Geth roast: fe57091172 | skids++ | S04-statements/return.t
Add tests for RT #114042 (variants of R #1216)

skipped for JVM because the R #1216 test is skipped
17:28
synopsebot RT#114042 [open]: rt.perl.org/Ticket/Display.html?id=114042 [BUG] LTA error message about returning from an exhausted routine in Rakudo
Geth star: 161fb6d77c | (Steve Mynott)++ | 2 files
imported by mistake lucasb
17:54
rakudo: febcb91770 | usev6++ | src/vm/jvm/runtime/org/perl6/rakudo/Binder.java
[JVM] More robust code detection in subsets

This is a port of github.com/rakudo/rakudo/commit/ede507b734 to the jvm backend. Fixes R#1799
18:03
synopsebot R#1799 [closed]: github.com/rakudo/rakudo/issues/1799 [testneeded] Subset type used in Signatures fails with errors
bartolin_ gfldex++ \\o/ 18:06
18:13 pmurias joined 18:18 thundergnat joined 18:19 lucasb joined 18:21 undersightable6 joined, quotable6 joined, squashable6 joined, statisfiable6 joined, greppable6 joined, nativecallable6 joined, unicodable6 joined, committable6 joined 18:34 pmurias joined
Geth roast: f09951c275 | usev6++ | S32-str/ords.t
[JVM] Fudge newly added test (unicode handling)
18:38
19:00 pmurias joined 19:25 MasterDuke joined 19:26 pmurias joined
Geth roast: 7fcc804bb9 | usev6++ | S12-coercion/coercion-types.t
Add tests for RT #131414
19:43
synopsebot RT#131414 [new]: rt.perl.org/Ticket/Display.html?id=131414 [BUG] Failure to detect use of coercion on vars when smiley type constraint is used
[Coke] gfldex++ . o O (< gfldex> \\o/ I fixed a rakudobug!) 19:54
20:15 Ven`` joined
Geth nqp/truffle: 87c0bbdf76 | (Paweł Murias)++ | 7 files
[jvm] Build a truffle node from passed arguments
21:34
nqp/truffle: e78bba0c97 | (Paweł Murias)++ | 3 files
[jvm] ./nqp-j nqp-truffle.nqp -e 'nqp::say("Hello World");' works
roast/improve-curi-test: 9ad6c3a397 | (Nick Logan)++ | S11-repository/curli-install.t
Test installation with proper Distribution usage

The intent of this test is installing a Distribution, and the fact it used a class called Distribution to do it should be irrelevant. This instead installs something that *does* Distribution.
Changed s/$path/$repo-path/ for clarity since $path is used as a variable name elsewhere.
21:46
roast: ugexe++ created pull request #425:
Test installation with proper Distribution usage
21:48
nqp/pluggable-spesh: 3d4f42e95d | (Jonathan Worthington)++ | t/moar/52-pluggable-spesh.t
Test for spesh plugin deopt with a type guard
22:03
22:03 dct joined
Geth nqp/pluggable-spesh: 644438ba55 | (Jonathan Worthington)++ | t/moar/52-pluggable-spesh.t
Test spesh plugin deopt on concrete or type object
22:29
jnthn The JIT is a little sad about this still, but now got most of the guards being handled in spesh 22:34
Only the nested attribute guarding needs handling, but I don't need that for the initial (private method in role) optimization use cases 22:35
MasterDuke what do you mean sad? 22:36
jnthn It seems I'm breaking its expectations about annotations that should be on guard nodes :) 22:37
So it explodes during code gen
MasterDuke ah 22:38
jnthn Probably not too bad to fix, but will leave that for another day. :)
In theory, just need to stick the annotation onto each guard I spit out.
Then should JIT the new guards, though that'll be easy
releasable6: status 22:39
releasable6 jnthn, Next release in ā‰ˆ8 days and ā‰ˆ20 hours. 2 blockers. 0 out of 70 commits logged
jnthn, Details: gist.github.com/c0d177cb44567e27f3...11ee9e5f01
b2gills Is pluggable-spesh replacing what is there, or is going to be added to what is already there?
timotimo it's an addition
it lets the high-level code "communicate" to spesh more info about semantics
jnthn Well, overall additive, though it's possible we one or two things might be possible to handle through it 22:40
:s/we//
I think the typevar thingy that guards on the type of `self` could be replaced with a spesh plugin, and handle more cases at the same time. 22:41
It's also potentially possible that, given we can use this for private and qualified method dispatch caching, that we might in the future be able to do away with the current method caching mechanism entirely in favor of it 22:42
22:42 lizmat_ joined
jnthn Though probably for that we might need to stack up a PIC-ish thingy 22:42
To handle polymorphic sites decently
22:42 nebuchadnezzar joined 22:43 Kaiepi joined
jnthn Once it's working on a few of the dispatchy things, I'll then dig into a re-working of assignment. 22:44
Scalar assignment of note
Which we can't really lower at all today 22:45
I've figured a way that we can do a single pointer check that covers both type check *and* that we don't have to run any auto-viv code 22:46
b2gills jnthn: Am I acting as your rubber duck?
jnthn Well, noting what it's about in case there's general interest :) 22:47
I figure you're not the only person interested in the scheming to try and make Perl 6 run faster. :-)
22:48 Kaypie joined 22:49 nebuchadnezzar joined
jnthn (Also, yes, I'll do a blog post once I get this doing something useful) 22:49
22:50 ufobat joined 22:51 jdv79 joined
b2gills I assumed as much. I personally miss reading the grant reports from Nicholas Clark 22:51
skids What's the difference between a "- QAST::Want <wanted> a/- QAST::WVal(Str)/- Ss/- QAST::SVal(a)" and a "- QAST::WVal(Str) <wanted> a"? 23:00
The latter is emiited for the value in :h<a>, the former for :h("a")
timotimo if there's a want, then the compiler knows how to use a native string (int, num) for this thing if the context of the compilation would allow it 23:02
thundergnat .tell MasterDuke If/When you have a moment, could you take a look at my pull request #1807 again? I addressed your comments but rewrote it to replace the original Str method rather than splitting it into two new multis. Now Rats have a small speed up too. 23:03
skids Hrm so should :h<a> generate a Want, or is there a reason the compiler can't pull the a out into a str? 23:05
timotimo probably just an oversight somewhere
skids Thanks. 23:06
MasterDuke thundergnat: i probably won't be able to tonight, but might be able to tomorrow evening. i'd also recommend pinging Zoffix, since he's currently working on a whole bunch of Rat related stuff 23:08
oh, looks like yoleaux is gone 23:09
thundergnat MasterDuke No problem. no hurry. I've been hesitant to bother Zoffix as he seems kind of overloaded lately. 23:10
23:10 yoleaux joined
MasterDuke sure. if you're looking for a review, just asking this channel in general would also work 23:11
23:21 BenGoldberg joined 23:40 quotable6 joined, nativecallable6 joined, squashable6 joined 23:41 undersightable6 joined