[00:07] *** reportable6 left [00:10] *** reportable6 joined [01:44] *** quotable6 left [01:44] *** unicodable6 left [01:44] *** statisfiable6 left [01:44] *** sourceable6 left [01:44] *** evalable6 left [01:44] *** committable6 left [01:44] *** shareable6 left [01:44] *** reportable6 left [01:44] *** bloatable6 left [01:44] *** bisectable6 left [01:44] *** tellable6 left [01:44] *** greppable6 left [01:44] *** coverable6 left [01:44] *** linkable6 left [01:44] *** releasable6 left [01:44] *** benchable6 left [01:44] *** nativecallable6 left [01:44] *** notable6 left [01:45] *** coverable6 joined [01:45] *** reportable6 joined [01:45] *** greppable6 joined [01:45] *** shareable6 joined [01:45] *** bloatable6 joined [01:45] *** notable6 joined [01:45] *** nativecallable6 joined [01:45] *** unicodable6 joined [01:46] *** linkable6 joined [01:46] *** evalable6 joined [01:46] *** committable6 joined [01:46] *** quotable6 joined [01:46] *** bisectable6 joined [01:46] *** tellable6 joined [01:47] *** benchable6 joined [01:47] *** statisfiable6 joined [01:47] *** sourceable6 joined [01:47] *** releasable6 joined [03:16] *** frost joined [05:33] *** Util left [05:40] *** Util joined [06:08] *** reportable6 left [06:10] *** reportable6 joined [08:18] *** TempIRCLogger joined [08:45] Files=1353, Tests=117179, 292 wallclock secs (36.12 usr 9.80 sys + 4049.65 cusr 344.88 csys = 4440.45 CPU) [09:38] *** Xliff left [10:04] *** Xliff joined [10:12] m: my $w = "abcde"; my @s = do for ^($w.chars + 1) { $w.substr(0, * - $_), $w.substr(* - $_, *) }; dd @s [10:12] rakudo-moar 530e17848: OUTPUT: «Array @s = [("abcde", ""), ("abcd", "e"), ("abc", "de"), ("ab", "cde"), ("a", "bcde"), ("", "abcde")]␤» [10:14] i know strings can't be trivially be indexed to, but i gotta admit, i do like the look of the python version better: `w = "abcde"; s = [(w[:i], w[i:]) for i in range(len(w) + 1)]` [10:16] (and wow, totally mixed up my wording there, should have been "can't be trivially indexed into" or "can't trivially be indexed into", and i ended up with neither) [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: dafa657324 | (Elizabeth Mattijsen)++ | 12 files [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: Cleanup scope exit-handling [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: An optimization to handle a single LEAVEish phaser block, was broken. [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: This meant that all block exits that had any phaser, would take the [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: slow path. [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: Instead if a block contains *only* a single LEAVE phaser, a super fast [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: <…commit message has 23 more lines…> [10:22] ¦ rakudo/lizmat-cleanup-exit-handler: review: https://github.com/rakudo/rakudo/commit/dafa657324 [10:23] ¦ rakudo: lizmat++ created pull request #4918: Cleanup scope exit-handling [10:23] ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/4918 [10:32] ¦ rakudo/lizmat-cleanup-exit-handler: 90f7a57957 | (Elizabeth Mattijsen)++ | 2 files [10:32] ¦ rakudo/lizmat-cleanup-exit-handler: Tweaks spotted by MasterDuke++ [10:32] ¦ rakudo/lizmat-cleanup-exit-handler: review: https://github.com/rakudo/rakudo/commit/90f7a57957 [12:07] *** reportable6 left [12:07] *** reportable6 joined [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: 36bd8298ee | (Elizabeth Mattijsen)++ | 2 files [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: Simplify setting up standard handles [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: We don't have any thread-safety issues with setting up the standard [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: handles, and we always use utf8-encoding for them. So we can set them [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: up without thread-safety as they are all part of running the mainline. [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: This commit: [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: <…commit message has 7 more lines…> [12:15] ¦ rakudo/lizmat-simplify-stdhandle-setup: review: https://github.com/rakudo/rakudo/commit/36bd8298ee [12:15] ¦ rakudo: lizmat++ created pull request #4919: Simplify setting up standard handles [12:15] ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/4919 [12:44] <[Coke]> I suspect long term we will want the #? blocks to specifically declare which backends they are for, rather than, e.g. "!jvm" [12:45] <[Coke]> (I saw one in recent pull request that was !jvm and suspect it probably isn't intended for JS. [12:46] [Coke]: did the PR just show that #? or was it added ? [12:46] lizmat: after your startup work, do you think there's any optimization potential in https://github.com/rakudo/rakudo/blob/master/src/core.c/Rakudo/QuantHash.pm6#L772-L836 ? it's currently 60% of the runtime of an implementation of peter norvigs spell checker [12:47] MasterDuke: have some code I could run to test things ? [12:48] <[Coke]> lizmat: already closed it; could have been just adjacent to a change you made [12:48] <[Coke]> Sorry [12:50] MasterDuke: I guess the Pair handling could be put in a separate method to enhance the chance of inlining if not being fed Pairs [13:19] *** frost left [14:14] *** carlmasak joined [14:25] `say "big.txt".IO.slurp.lc.words.Bag.elems` is a golf of the slow bit, with the file coming from http://www.norvig.com/big.txt [16:04] *** carlmasak left [16:18] <[Tux]> Rakudo v2022.04-33-ga84e16849 (v6.d) on MoarVM 2022.04-1-g4e2eab056 [16:18] <[Tux]> csv-test-xs-20 0.408 - 0.475 [16:18] <[Tux]> csv-ip5xs 0.757 - 0.774 [16:18] <[Tux]> test-t --race 0.827 - 0.839 [16:18] <[Tux]> test-t 1.360 - 1.368 [16:18] <[Tux]> csv-parser 3.498 - 3.652 [16:18] <[Tux]> csv-ip5xs-20 4.822 - 5.312 [16:18] <[Tux]> test 6.510 - 6.786 [16:18] <[Tux]> test-t-20 --race 6.628 - 6.853 [16:18] <[Tux]> test-t-20 20.684 - 21.562 [16:18] lizmat: fwiw, replacing https://github.com/rakudo/rakudo/blob/master/src/core.c/Rakudo/QuantHash.pm6#L782-L814 with just a single `nqp::say("pair")` doesn't change runtime at all (total or exclusive for ADD-PAIRS-TO-BAG) [16:22] <[Coke]> another 1.3 day, nice. [16:38] lizmat: https://gist.github.com/MasterDuke17/f6f0c040ef9ef0e4220437b1097a34f4 does seem to have helped very slightly though (and passed a spectest). will probably PR that later tonight [17:11] MasterDuke: hmmm... that actually gives me an idea [17:18] ¦ rakudo/lizmat-cleanup-exit-handler: 847d2a0951 | (Elizabeth Mattijsen)++ | src/Perl6/bootstrap.c/BOOTSTRAP.nqp [17:18] ¦ rakudo/lizmat-cleanup-exit-handler: Fix superfluous ) on JVM build [17:18] ¦ rakudo/lizmat-cleanup-exit-handler: [17:18] ¦ rakudo/lizmat-cleanup-exit-handler: Spotted by bartolin++ [17:18] ¦ rakudo/lizmat-cleanup-exit-handler: review: https://github.com/rakudo/rakudo/commit/847d2a0951 [17:23] meh, bad idea [18:07] *** reportable6 left [18:09] *** reportable6 joined [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: 10bd742cbe | (Elizabeth Mattijsen)++ | src/core.c/io_operators.pm6 [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: A bit more radical approach [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: - copy the code that is going to be discarded anyway [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: - no need to augment [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: - just set up the standard handles [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: Note: the previous approach basically came from the time when the [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: standard handles were being vivified lazily. [18:37] ¦ rakudo/lizmat-simplify-stdhandle-setup: review: https://github.com/rakudo/rakudo/commit/10bd742cbe [18:59] *** MasterDuke left [19:08] *** MasterDuke joined [19:23] *** sena_kun left [19:24] *** sena_kun joined [20:43] ¦ rakudo/rakuast: 5e00fd98fa | (Stefan Seifert)++ | src/Raku/ast/resolver.rakumod [20:43] ¦ rakudo/rakuast: Fix leave-scope failing to pop attach targets [20:43] ¦ rakudo/rakuast: [20:43] ¦ rakudo/rakuast: We were checking the type of the RakuAST::Resolver::Compile::Scope object [20:43] ¦ rakudo/rakuast: instead of the AST node that may be an attach target. [20:43] ¦ rakudo/rakuast: review: https://github.com/rakudo/rakudo/commit/5e00fd98fa [20:51] *** evalable6 left [20:51] *** linkable6 left [20:52] *** linkable6 joined [20:53] *** evalable6 joined [21:53] *** casaca left [23:57] *** discord-raku-bot left [23:58] *** discord-raku-bot joined