Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm Set by Zoffix on 27 July 2018. |
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo/normalized-ZDRs: 6d70346cbf | (Zoffix Znet)++ | src/core/Rational.pm6 Check for ZDRs in .floor/.ceiling This way we generate a good error message instead of relying on `div` doing that for us with a normalized numerator Also fixes .floor `fail`ing, but `.ceiling` `die`ing due to an extra operation. Now we constistently `fail` |
00:07 | |||||||||||||||||||||||||||||||||||||
roast/normalized-ZDRs: 17761c2e48 | (Zoffix Znet)++ | S32-num/rat.t Spec Rational.floor/.ceiling fail for ZDRs Rakudo fix: github.com/rakudo/rakudo/commit/6d70346cbf |
00:08 | ||||||||||||||||||||||||||||||||||||||
rakudo/normalized-ZDRs: c5a2eb81f0 | (Zoffix Znet)++ | src/core/Rat.pm6 Make `==` with Rationals up to 1.55x as fast |
00:09 | ||||||||||||||||||||||||||||||||||||||
00:20
Zoffix joined,
p6bannerbot sets mode: +v Zoffix
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | ZOFFLOP: t/spec/S17-promise/lock-async-stress2.t | 00:20 | |||||||||||||||||||||||||||||||||||||
That's R#2261 | |||||||||||||||||||||||||||||||||||||||
synopsebot | R#2261 [open]: github.com/rakudo/rakudo/issues/2261 [ASYNC] Crashes in t/spec/S17-promise/lock-async-stress2.t | ||||||||||||||||||||||||||||||||||||||
00:20
Zoffix left
00:21
geekosaur left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo/normalized-ZDRs: 97e8413b4f | (Zoffix Znet)++ | src/core/Rat.pm6 Make Rational `===` Rational 2.47x as fast We now normalize all the Rationals, so we can simplify things |
00:21 | |||||||||||||||||||||||||||||||||||||
00:23
MasterDuke joined,
p6bannerbot sets mode: +v MasterDuke
00:24
MasterDuke left,
MasterDuke joined,
herbert.freenode.net sets mode: +v MasterDuke,
p6bannerbot sets mode: +v MasterDuke
00:27
geekosaur joined
00:28
p6bannerbot sets mode: +v geekosaur
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: zoffixznet++ created pull request #2314: Normalize ZDRs |
00:31 | |||||||||||||||||||||||||||||||||||||
rakudo/master: 9 commits pushed by (Zoffix Znet)++
|
|||||||||||||||||||||||||||||||||||||||
roast: zoffixznet++ created pull request #475: Normalize ZDRs |
|||||||||||||||||||||||||||||||||||||||
roast/master: 5 commits pushed by (Zoffix Znet)++ | |||||||||||||||||||||||||||||||||||||||
6.d-prep: 11266ec8c8 | (Zoffix Znet)++ | 2 files Make ZDR normalization as completed POV: github.com/rakudo/rakudo/pull/2314 Propspec: github.com/perl6/roast/pull/475 Docs: github.com/perl6/doc/pull/2327 |
00:33 | ||||||||||||||||||||||||||||||||||||||
00:36
buggable left,
buggable joined,
ChanServ sets mode: +v buggable
00:37
p6bannerbot sets mode: +v buggable
01:09
fake_space_whale left
01:20
agk18 joined
01:23
calbers18 joined
01:24
agk18 left
01:25
calbers18 left
01:28
ZzZombo left
02:20
ZzZombo joined,
p6bannerbot sets mode: +v ZzZombo
03:05
pgervase joined
03:07
pgervase left
03:27
seanicus0 joined
03:32
seanicus0 left
04:44
lizmat left
06:19
robertle joined
06:20
p6bannerbot sets mode: +v robertle
|
|||||||||||||||||||||||||||||||||||||||
[Tux] |
|
06:45 | |||||||||||||||||||||||||||||||||||||
yeah, disappointing numbers. I'll run a second one later today over ssh when not working on the box | |||||||||||||||||||||||||||||||||||||||
07:03
[TuxCM] left
07:22
stmuk_ joined,
p6bannerbot sets mode: +v stmuk_
07:24
stmuk left
07:27
patrickb joined,
p6bannerbot sets mode: +v patrickb
07:31
stmuk joined
07:32
p6bannerbot sets mode: +v stmuk
07:33
stmuk_ left
08:03
robertle left
08:05
robertle joined
08:06
p6bannerbot sets mode: +v robertle
08:23
robertle_ joined,
lizmat joined,
p6bannerbot sets mode: +v lizmat
|
|||||||||||||||||||||||||||||||||||||||
lizmat | Files=1254, Tests=76151, 338 wallclock secs (15.81 usr 5.37 sys + 2375.57 cusr 221.43 csys = 2618.18 CPU) | 08:23 | |||||||||||||||||||||||||||||||||||||
08:23
p6bannerbot sets mode: +v robertle_
08:24
robertle1 joined,
p6bannerbot sets mode: +v robertle1,
robertle left
08:25
Ven` joined,
p6bannerbot sets mode: +v Ven`
08:50
stmuk_ joined
08:51
p6bannerbot sets mode: +v stmuk_
08:52
stmuk left
08:56
[TuxCM] joined
08:57
p6bannerbot sets mode: +v [TuxCM]
09:03
[TuxCM] left
09:12
pmurias joined,
p6bannerbot sets mode: +v pmurias
09:24
kroovy joined
09:29
kroovy left
09:45
ExtraCrispy left
09:55
brrt joined
09:56
p6bannerbot sets mode: +v brrt
10:11
r_hector20 joined
10:13
ZzZombo left,
r_hector20 left
10:14
Ven` left
10:34
Skarn19 joined
10:35
jnthn is now known as jnthn-nomsg
10:42
Skarn19 left
10:43
ExtraCrispy joined
10:44
p6bannerbot sets mode: +v ExtraCrispy
10:53
brrt left
11:24
ZzZombo joined,
p6bannerbot sets mode: +v ZzZombo
11:33
Guest36318 joined
11:38
pmurias left
11:39
pmurias joined,
p6bannerbot sets mode: +v pmurias
11:41
Guest36318 left,
Ven` joined
11:42
p6bannerbot sets mode: +v Ven`
|
|||||||||||||||||||||||||||||||||||||||
lizmat | notable6: weekly | 11:46 | |||||||||||||||||||||||||||||||||||||
notable6 | lizmat, 6 notes: gist.github.com/6971560dee95933cab...391ca4f94b | ||||||||||||||||||||||||||||||||||||||
12:12
Windy joined
|
|||||||||||||||||||||||||||||||||||||||
lizmat | reportable: 2018-09-10T00:00:00Z 2018-09-17T00:00:00Z | 12:12 | |||||||||||||||||||||||||||||||||||||
reportable6 | lizmat, OK, working on it! This may take up to 40 seconds | ||||||||||||||||||||||||||||||||||||||
lizmat | reportable: 2018-09-17T00:00:00Z 2018-09-24T00:00:00Z | 12:13 | |||||||||||||||||||||||||||||||||||||
I guess reportable6 only does one at at time | |||||||||||||||||||||||||||||||||||||||
reportable6 | lizmat, OK, working on it! This may take up to 40 seconds | ||||||||||||||||||||||||||||||||||||||
lizmat, gist.github.com/1aa8c212c09739d7f5...d5f5a54562 | |||||||||||||||||||||||||||||||||||||||
lizmat, gist.github.com/f36ec025ec52f11b2b...06784fb42c | 12:14 | ||||||||||||||||||||||||||||||||||||||
lizmat | notable6: weekly reset | ||||||||||||||||||||||||||||||||||||||
notable6 | lizmat, Moved existing notes to “weekly_2018-09-24T12:14:26Z” | ||||||||||||||||||||||||||||||||||||||
12:16
Windy left
12:26
hoonetorg8 joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | 6.d-prep: 824e24a000 | (Christopher Bottoms)++ (committed using GitHub Web editor) | TODO/COMPLETED/completed-FEATURES.md (minor) fixed link path |
12:27 | |||||||||||||||||||||||||||||||||||||
12:31
hoonetorg8 left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | lizmat: 2018-09-17T00:00:00Z 2018-09-24T00:00:00Z | 12:33 | |||||||||||||||||||||||||||||||||||||
oops | |||||||||||||||||||||||||||||||||||||||
wrong bot :) | |||||||||||||||||||||||||||||||||||||||
reportable6: 2018-09-17T00:00:00Z 2018-09-24T00:00:00Z | |||||||||||||||||||||||||||||||||||||||
reportable6 | AlexDaniel, OK, working on it! This may take up to 40 seconds | ||||||||||||||||||||||||||||||||||||||
lizmat | AlexDaniel: thanks, but I just it myself :-) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | lizmat: yes, but I deleted the spam | 12:34 | |||||||||||||||||||||||||||||||||||||
reportable6 | AlexDaniel, gist.github.com/16d41d838a90999b13...67a8de3089 | ||||||||||||||||||||||||||||||||||||||
lizmat | ah? ok | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | yeah, there was one spammy RT ticket | ||||||||||||||||||||||||||||||||||||||
lizmat | I see | ||||||||||||||||||||||||||||||||||||||
ok | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | lizmat++ | ||||||||||||||||||||||||||||||||||||||
12:51
Ven` left
12:52
Ven` joined
12:53
p6bannerbot sets mode: +v Ven`
|
|||||||||||||||||||||||||||||||||||||||
lizmat | and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2018/09/24/...-than-two/ | 13:07 | |||||||||||||||||||||||||||||||||||||
cognominal-p6 | yea | 13:10 | |||||||||||||||||||||||||||||||||||||
jnthn-nomsg | ooh, earlier than usual today :) | 13:12 | |||||||||||||||||||||||||||||||||||||
lizmat | yeah, have some other stuff to do the rest of the day | 13:13 | |||||||||||||||||||||||||||||||||||||
|Tux| |
|
13:58 | |||||||||||||||||||||||||||||||||||||
timotimo | sweet, there's another sub-2 time | 13:59 | |||||||||||||||||||||||||||||||||||||
|Tux| | it shows the noise-window of actively working on the desktop and doing it remote as nothing changed in between these two timings | 14:00 | |||||||||||||||||||||||||||||||||||||
14:02
holla12 joined
14:04
holla12 left
14:08
edmoore5 joined
14:14
edmoore5 left
14:22
Ven` left
14:25
ndowens4 joined
14:29
ndowens4 left
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp: bc5099ddce | (Elizabeth Mattijsen)++ | tools/build/MOAR_REVISION Bump Moar for *many* changes |
14:33 | |||||||||||||||||||||||||||||||||||||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...9-gdeba2e1 | |||||||||||||||||||||||||||||||||||||||
14:35
Ven` joined,
p6bannerbot sets mode: +v Ven`
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 43919c6b84 | (Elizabeth Mattijsen)++ | tools/build/NQP_REVISION Bump NQP for latest (big) batch of MoarVM goodies |
14:45 | |||||||||||||||||||||||||||||||||||||
rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2018....1-gbc5099d 2bdf2b35a1 | (Elizabeth Mattijsen)++ | src/core/List.pm6 Add a candidate for LIST.STORE(:$initialize!), which does not interfere with the normal use of List.STORE that is used for ($a,$b,$c) = 1,2,3 |
|||||||||||||||||||||||||||||||||||||||
lizmat | my test-t timing dropped from 1.821 to 1.632 | 14:46 | |||||||||||||||||||||||||||||||||||||
1.581 | 14:47 | ||||||||||||||||||||||||||||||||||||||
1.542 | |||||||||||||||||||||||||||||||||||||||
m; say 1.821 / 1542 | |||||||||||||||||||||||||||||||||||||||
m: say 1.821 / 1.542 | |||||||||||||||||||||||||||||||||||||||
camelia | 1.180934 | ||||||||||||||||||||||||||||||||||||||
lizmat | so about 18% faster :-) | 14:48 | |||||||||||||||||||||||||||||||||||||
[Tux] : ^^ | |||||||||||||||||||||||||||||||||||||||
jnthn-nomsg | That's quite nice :) | ||||||||||||||||||||||||||||||||||||||
lizmat | and that's without the escape analysis bits, right ? | ||||||||||||||||||||||||||||||||||||||
FWIW, I don't really see a change with --race: I guess we're running into the warmup limits there | 14:49 | ||||||||||||||||||||||||||||||||||||||
jnthn-nomsg | Yeah, pea is at a very early stage and still in a branch :) | 14:50 | |||||||||||||||||||||||||||||||||||||
dogbert2 | wasn't there some postrelease-opts in Rakudo as well? | 14:51 | |||||||||||||||||||||||||||||||||||||
lizmat | post-release-2018.08 is the latest I saw | ||||||||||||||||||||||||||||||||||||||
dogbert2 | aha | 14:52 | |||||||||||||||||||||||||||||||||||||
what about fixes like github.com/rakudo/rakudo/commit/5f...6432b610a8 are they already merged? | 14:54 | ||||||||||||||||||||||||||||||||||||||
lizmat | yeah, that one was already in master afak | 14:55 | |||||||||||||||||||||||||||||||||||||
afaik | |||||||||||||||||||||||||||||||||||||||
dogbert2 | cool | 14:56 | |||||||||||||||||||||||||||||||||||||
15:07
scott-ph13 joined
15:10
scott-ph13 left
15:25
fake_space_whale joined
15:26
p6bannerbot sets mode: +v fake_space_whale
15:30
Zoffix joined,
p6bannerbot sets mode: +v Zoffix
|
|||||||||||||||||||||||||||||||||||||||
15:41
patrickb left
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | ZOFFLOP: t/spec/S12-class/stubs.t (SEGV during last test) | 15:48 | |||||||||||||||||||||||||||||||||||||
ZOFVM: Files=1310, Tests=153194, 166 wallclock secs (27.58 usr 3.75 sys + 3624.71 cusr 160.92 csys = 3816.96 CPU) | 15:54 | ||||||||||||||||||||||||||||||||||||||
15:58
jnthn-nomsg is now known as jnthn
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | Zoffix: segvs are rare, no? Maybe file a ticket right away | 16:12 | |||||||||||||||||||||||||||||||||||||
Zoffix | Rare? Most of ZOFFLOPs are SEGV I think | 16:14 | |||||||||||||||||||||||||||||||||||||
Zoffix is too lazy to file | 16:15 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | I should run spectest more often :) | ||||||||||||||||||||||||||||||||||||||
or stress even | 16:16 | ||||||||||||||||||||||||||||||||||||||
16:18
robertle1 left,
robertle_ left
|
|||||||||||||||||||||||||||||||||||||||
pmurias | nqp-truffle just started being able to load a (partial) NQP setting using the ModuleLoader (rather then have in concated on in string form) :), got to clean it up and cut it up into commits | 16:32 | |||||||||||||||||||||||||||||||||||||
dogbert17 | AlexDaniel: perhaps you could to a toaster run in order to give the new opts a workout | 16:36 | |||||||||||||||||||||||||||||||||||||
*do | 16:37 | ||||||||||||||||||||||||||||||||||||||
16:39
fake_space_whale left
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | Cue in reels of "crazy emoji operators" discussions in 3... 2... 1... | 16:46 | |||||||||||||||||||||||||||||||||||||
In Perl 6 6.d you're now able to harness the Power of The Atom! Thread-safe atomic operations on a new atomicint type! marketing.perl6.org/id/1537803105/pdf_digital | |||||||||||||||||||||||||||||||||||||||
timotimo | we'll still want to figure out the thing where if you put a variant selector on the atom symbol it won't be recognized | 16:47 | |||||||||||||||||||||||||||||||||||||
16:48
Kaiepi joined
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | .oO( make variant selector offer different features :P ) |
16:48 | |||||||||||||||||||||||||||||||||||||
16:49
p6bannerbot sets mode: +v Kaiepi
16:50
Zoffix left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: b537ce2e5a | (Elizabeth Mattijsen)++ | 2 files Allow for initializations of "is List" attributes This commit makes it possible to assign to attributes marked as "is List", so that you can create Listy attributes that are immutable. class A { has @.foo is List ... (6 more lines) |
17:35 | |||||||||||||||||||||||||||||||||||||
lizmat | dinner& | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | dogbert17: anyone can do that | ||||||||||||||||||||||||||||||||||||||
I'm running out of GCE credit :D | 17:37 | ||||||||||||||||||||||||||||||||||||||
but my next generation toaster should run at a fraction of cpu time, I just need to finish it | 17:38 | ||||||||||||||||||||||||||||||||||||||
the issue with it currently is that whateverable blocks on the release path whenever it runs anything | |||||||||||||||||||||||||||||||||||||||
so I can't parallelize it, but it's trivial to fix | |||||||||||||||||||||||||||||||||||||||
17:38
patrickb joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | in fact I should've fixed it earlier because Quotable already does this: github.com/perl6/whateverable/blob...p6#L35-L60 | 17:39 | |||||||||||||||||||||||||||||||||||||
17:39
p6bannerbot sets mode: +v patrickb
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | so it tests on HEAD, HEAD^, HEAD^^, etc. in parallel so that it's not locked :D | 17:39 | |||||||||||||||||||||||||||||||||||||
also once we get code from JSON::Fast into rakudo it will help both toasters | 17:40 | ||||||||||||||||||||||||||||||||||||||
as a lot of it is spent on zef doing json parsing, as far as I can see | 17:41 | ||||||||||||||||||||||||||||||||||||||
s/release path/build path/g | |||||||||||||||||||||||||||||||||||||||
17:42
Ven` left
17:49
brrt joined
17:50
p6bannerbot sets mode: +v brrt
|
|||||||||||||||||||||||||||||||||||||||
tony-o | same here, not enough log history in my irc | 18:05 | |||||||||||||||||||||||||||||||||||||
18:12
travis-ci joined,
p6bannerbot sets mode: +v travis-ci
|
|||||||||||||||||||||||||||||||||||||||
travis-ci | Rakudo build errored. Elizabeth Mattijsen 'Allow for initializations of "is List" attributes | 18:12 | |||||||||||||||||||||||||||||||||||||
travis-ci.org/rakudo/rakudo/builds/432583987 github.com/rakudo/rakudo/compare/2...37ce2e5ac3 | |||||||||||||||||||||||||||||||||||||||
18:12
travis-ci left
|
|||||||||||||||||||||||||||||||||||||||
buggable | [travis build above] ✓ All failures are due to: timeout (1 failure). | 18:12 | |||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 09448ffc7f | (Paweł Murias)++ | 19 files [truffle] Load a NQP setting properly using a ModuleLoader |
18:33 | |||||||||||||||||||||||||||||||||||||
nqp/truffle: 76652d25b7 | (Paweł Murias)++ | 6 files [truffle] Remove a bunch of debugging print statements |
|||||||||||||||||||||||||||||||||||||||
nqp/truffle: 7ec3a18ab7 | (Paweł Murias)++ | src/vm/jvm/runtime/org/perl6/nqp/truffle/nodes/expression/NQPElemsNode.java [truffle] Support nqp::elems on hashes |
|||||||||||||||||||||||||||||||||||||||
18:52
AlexDaniel left,
AlexDaniel joined,
p6bannerbot sets mode: +v AlexDaniel
18:54
kloinka28 joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp: dec8bd79b4 | (Elizabeth Mattijsen)++ | tools/build/MOAR_REVISION Bump MoarVM to get fork-safety patches |
18:55 | |||||||||||||||||||||||||||||||||||||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...3-gdb11d5f | |||||||||||||||||||||||||||||||||||||||
19:00
kloinka28 left
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: b2677b52b0 | (Paweł Murias)++ | nqp-truffle.nqp [truffle] Load our truffle setting from java when using nqp-truffle |
19:13 | |||||||||||||||||||||||||||||||||||||
nqp/truffle: 782330a4fd | (Paweł Murias)++ | src/vm/jvm/bin/run_tests.pl [truffle] Run passing test 11 |
|||||||||||||||||||||||||||||||||||||||
nqp/truffle: d696271314 | (Paweł Murias)++ | src/vm/jvm/runtime/org/perl6/nqp/truffle/NQPScopeWithFrame.java [truffle] Remove null checks for something that is never a null now |
19:19 | ||||||||||||||||||||||||||||||||||||||
nqp/truffle: 651bb3a1b1 | (Paweł Murias)++ | src/vm/jvm/runtime/org/perl6/nqp/truffle/NQPScopeWithFrame.java Revert "[truffle] Remove null checks for something that is never a null now" Doesn't really pass :( This reverts commit d696271314b8a145cef68040dc26abed225b5198. |
|||||||||||||||||||||||||||||||||||||||
jdv79 | c: 2018.06,2018.06,2018.06,HEAD,HEAD,HEAD gist.github.com/AlexDaniel/7102bb2...2a41ea121f | 19:21 | |||||||||||||||||||||||||||||||||||||
committable6 | jdv79, gist.github.com/a691ea56320d97ec53...41123f9dc5 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 02fbbc0c02 | (Elizabeth Mattijsen)++ | tools/build/NQP_REVISION Bump NQP to get Moar's fork-safety patches |
19:26 | |||||||||||||||||||||||||||||||||||||
¦ rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2018....2-gdec8bd7 | |||||||||||||||||||||||||||||||||||||||
brrt | oh,yay, thanks lizmat++ | 19:28 | |||||||||||||||||||||||||||||||||||||
now I can actually implement the fork() opcode as well | |||||||||||||||||||||||||||||||||||||||
lizmat | also on JVM ? :-) | 19:36 | |||||||||||||||||||||||||||||||||||||
19:47
brrt left
19:54
MasterDuke left
|
|||||||||||||||||||||||||||||||||||||||
pmurias | lizmat: I don't think calling the fork() systemcall is a good idea on the js/jvm/truffle backends :/ | 19:56 | |||||||||||||||||||||||||||||||||||||
lizmat neither | |||||||||||||||||||||||||||||||||||||||
I guess that will be MoarVM / POSIX only | |||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 09439dd8d1 | (Paweł Murias)++ | src/vm/jvm/bin/run_tests.pl Revert "[truffle] Run passing test 11" This reverts commit 782330a4fd34b0f4a7f3454bf2393700146cb527. |
19:59 | |||||||||||||||||||||||||||||||||||||
nqp/truffle: 0049539e41 | (Paweł Murias)++ | src/vm/jvm/runtime/org/perl6/nqp/truffle/NQPScopeWithFrame.java Revert "Revert "[truffle] Remove null checks for something that is never a null now"" This reverts commit 651bb3a1b1ffb273ba345ae55f734941206586f7. |
|||||||||||||||||||||||||||||||||||||||
nqp/truffle: 2badb7fa02 | (Paweł Murias)++ | src/vm/jvm/Truffle.nqp [truffle] Refactor QAST::Var compilation |
|||||||||||||||||||||||||||||||||||||||
20:05
brrt joined,
p6bannerbot sets mode: +v brrt
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 2dd02751da | (Elizabeth Mattijsen)++ | src/Perl6/Optimizer.nqp Make "for ^10 .reverse" just as fast as "for ^10" Literal ranges in for loops are heavily optimized. However, looping over a reverted Range was only optimized at the Range.reverse method level. This commit statically optimizes "for ^10 .reverse" in the same way as "for ^10". This makes it about 6x faster. |
20:09 | |||||||||||||||||||||||||||||||||||||
lizmat | inspired by stackoverflow.com/questions/524839...nting-down | 20:12 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: 645eeb52dd | (Elizabeth Mattijsen)++ | src/Perl6/Optimizer.nqp A slightly more correct handling of ^10 .reverse We should first check for the .reverse, *the* check for nqp::stmts |
20:33 | |||||||||||||||||||||||||||||||||||||
lizmat | *then (bloody n on my keyboard) | ||||||||||||||||||||||||||||||||||||||
20:33
patrickb left
20:36
Zeising4 joined
20:39
Zoffix joined,
p6bannerbot sets mode: +v Zoffix
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | lizmat: I thought we couldn't optimize methodcalls in static optimizer like that because we don't know if they'd be modified by runtime? | 20:40 | |||||||||||||||||||||||||||||||||||||
timotimo: is that right? They're latebound something something | |||||||||||||||||||||||||||||||||||||||
lizmat | Zoffix: in this case, this is about a *literal* ^10 | 20:41 | |||||||||||||||||||||||||||||||||||||
that would mean overriding prefix:<^> | |||||||||||||||||||||||||||||||||||||||
I think we're pretty safe in this case | 20:42 | ||||||||||||||||||||||||||||||||||||||
Zoffix | lizmat: but how do you know .reverse on a Range object does sub_i stuff? | ||||||||||||||||||||||||||||||||||||||
lizmat | because it is a "^10" thing | ||||||||||||||||||||||||||||||||||||||
Zoffix doesn't follow | |||||||||||||||||||||||||||||||||||||||
lizmat | ^10 normally is a Range | 20:43 | |||||||||||||||||||||||||||||||||||||
but in the context of "for ^10" it never becomes a Range object because the opt rewrites the optree | |||||||||||||||||||||||||||||||||||||||
Zoffix | lizmat: but does that mean we can optimize a ton of other stuff. I mean `42.cos` is also on a literal, for example | 20:44 | |||||||||||||||||||||||||||||||||||||
timotimo | depends on what we want monkey-patchers to get | ||||||||||||||||||||||||||||||||||||||
lizmat | well, if that "42" is a unmixed-in Int, then I would say yes | ||||||||||||||||||||||||||||||||||||||
timotimo | but to be fair, cos 42 could also be "unsafe" if someone went and changed Int early enough | 20:45 | |||||||||||||||||||||||||||||||||||||
lizmat | I mean: in Perl 5 you can change "undef" to 42 | ||||||||||||||||||||||||||||||||||||||
and that messes up a *lot* :-) | |||||||||||||||||||||||||||||||||||||||
20:46
Zeising4 left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | FWIW, if consensus says that the reverse opt shouldn't happen, then I'm fine with that too | 20:46 | |||||||||||||||||||||||||||||||||||||
Zoffix | How about this: we optimize all we can until someone complains and brights forth a real-life useful usecase for when it's useful to have `42.cos` on mutated Int, and then we stick all these opts under some pragma/trait or something? | ||||||||||||||||||||||||||||||||||||||
s/brights/brings/; | 20:47 | ||||||||||||||||||||||||||||||||||||||
lizmat | sounds like a plan to me | ||||||||||||||||||||||||||||||||||||||
timotimo | "use soft" is a thing iirc | 20:48 | |||||||||||||||||||||||||||||||||||||
TimToady | yes, the compiler is allowed to make assumptions in the absence of declarations before CHECK time | 20:50 | |||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 2ba515521e | (Paweł Murias)++ | nqp-truffle.nqp [truffle] Make nqp-truffle.nqp set module-path too |
20:52 | |||||||||||||||||||||||||||||||||||||
nqp/truffle: 08367fe4d6 | (Paweł Murias)++ | 12 files [truffle] Teach the DSL about FrameSlot contextSlot arguments and get rid of a bunch of boilerplate |
|||||||||||||||||||||||||||||||||||||||
lizmat | perhaps it is safer to actually perform this optimization on "10 ... 1" | 20:53 | |||||||||||||||||||||||||||||||||||||
and tell people to use that ? | |||||||||||||||||||||||||||||||||||||||
timotimo | it'd be cool to also optimize ones with a custom "step" | 20:54 | |||||||||||||||||||||||||||||||||||||
pmurias | lizmat: that is safer | ||||||||||||||||||||||||||||||||||||||
lizmat | that would make 10 ... 1 about 75x faster :-) | 20:55 | |||||||||||||||||||||||||||||||||||||
20:55
mst is now known as mSt
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | \o/ | 20:56 | |||||||||||||||||||||||||||||||||||||
20:56
mSt is now known as mst
|
|||||||||||||||||||||||||||||||||||||||
lizmat | ok, will look at that tomorrow and revert the .reverse opt | 20:56 | |||||||||||||||||||||||||||||||||||||
pmurias | lizmat: the reverse opt should happen, but it feels like something should be done at runtime or else filthy monkey patchers will get into trouble if they augument Int | ||||||||||||||||||||||||||||||||||||||
timotimo | it's not really possible to do that optimization at run time | ||||||||||||||||||||||||||||||||||||||
diakopter | patch those filthy monkeys! | ||||||||||||||||||||||||||||||||||||||
Zoffix | lizmat: but shouldn't we keep the .reverse opt, based on what we discussed above? | ||||||||||||||||||||||||||||||||||||||
timotimo | apart from inlining all parts of the iterator and the body | ||||||||||||||||||||||||||||||||||||||
Zoffix | The monkey patchers will have to use a pragma if they want to throw away those opts | 20:57 | |||||||||||||||||||||||||||||||||||||
lizmat | ok, then I'll keep the .reverse opt | ||||||||||||||||||||||||||||||||||||||
pmurias | timotimo: it's possible I just need to get the truffle backend working so we can do it ;) | ||||||||||||||||||||||||||||||||||||||
timotimo | :) | 20:58 | |||||||||||||||||||||||||||||||||||||
pmurias | Zoffix: re real-life useful usecase, monkey patching builtin types in general is super doubious | 21:02 | |||||||||||||||||||||||||||||||||||||
21:15
pmurias left
21:21
brrt left
21:41
Zoffix left
21:49
MasterDuke joined,
p6bannerbot sets mode: +v MasterDuke,
MasterDuke left,
MasterDuke joined,
herbert.freenode.net sets mode: +v MasterDuke,
p6bannerbot sets mode: +v MasterDuke
|
|||||||||||||||||||||||||||||||||||||||
Geth | ¦ rakudo: zoffixznet self-assigned Core dump when dividing some Rats with denominator 2**30 by -2 github.com/rakudo/rakudo/issues/2280 | 22:40 | |||||||||||||||||||||||||||||||||||||
23:09
ilogger2 joined,
p6bannerbot sets mode: +v thesherpa27
23:10
p6bannerbot sets mode: +v ilogger2
|