[00:03] ¦ roast: vrurg++ created pull request #780: Add smartmatch tests for Map [00:03] ¦ roast: review: https://github.com/Raku/roast/pull/780 [00:07] *** reportable6 left [00:16] *** evalable6 joined [01:00] ¦ rakudo: 87621e1ae5 | (Vadim Belman)++ | src/core.c/Map.pm6 [01:00] ¦ rakudo: Fix Map ACCEPTS by collapsing explicit junctions [01:00] ¦ rakudo: [01:00] ¦ rakudo: Where topics are explicitly junctionaized with `.any` we need explicit [01:00] ¦ rakudo: `.Bool` or otherwise the code always throws with return type mismatch. [01:00] ¦ rakudo: review: https://github.com/rakudo/rakudo/commit/87621e1ae5 [01:00] ¦ rakudo: 5608686950 | (Vadim Belman)++ (committed using GitHub Web editor) | src/core.c/Map.pm6 [01:00] ¦ rakudo: Merge pull request #4688 from vrurg/rakudo_2560 [01:00] ¦ rakudo: [01:00] ¦ rakudo: Fix Map ACCEPTS by collapsing explicit junctions [01:00] ¦ rakudo: review: https://github.com/rakudo/rakudo/commit/5608686950 [01:00] ¦ roast: 983933642b | (Vadim Belman)++ | 2 files [01:00] ¦ roast: Add smartmatch tests for Map [01:00] ¦ roast: [01:00] ¦ roast: In support of rakudo/rakudo#4688 [01:00] ¦ roast: review: https://github.com/Raku/roast/commit/983933642b [01:00] ¦ roast: 9df6e7a7d9 | (Vadim Belman)++ | S03-smartmatch/array-hash.t [01:00] ¦ roast: Unfudge smartmatch tests for Hash [01:00] ¦ roast: [01:00] ¦ roast: They're passing on Rakudo now. [01:00] ¦ roast: review: https://github.com/Raku/roast/commit/9df6e7a7d9 [01:00] ¦ roast: 7fa1a4555d | (Vadim Belman)++ (committed using GitHub Web editor) | 3 files [01:00] ¦ roast: Merge pull request #780 from vrurg/rakudo_2560 [01:00] ¦ roast: [01:00] ¦ roast: Add smartmatch tests for Map [01:00] ¦ roast: review: https://github.com/Raku/roast/commit/7fa1a4555d [01:01] *** linkable6 left [01:01] *** linkable6 joined [01:08] *** reportable6 joined [01:22] *** frost joined [01:32] *** frost left [01:46] *** frost joined [02:46] *** benchable6 left [02:46] *** releasable6 left [02:46] *** nativecallable6 left [02:46] *** greppable6 left [02:46] *** evalable6 left [02:46] *** committable6 left [02:46] *** notable6 left [02:46] *** bloatable6 left [02:46] *** coverable6 left [02:46] *** tellable6 left [02:46] *** reportable6 left [02:46] *** shareable6 left [02:46] *** bisectable6 left [02:46] *** unicodable6 left [02:46] *** statisfiable6 left [02:46] *** sourceable6 left [02:46] *** squashable6 left [02:46] *** quotable6 left [02:46] *** linkable6 left [02:47] *** linkable6 joined [02:47] *** sourceable6 joined [02:47] *** bisectable6 joined [02:47] *** shareable6 joined [02:49] *** squashable6 joined [02:49] *** bloatable6 joined [02:49] *** evalable6 joined [02:49] *** tellable6 joined [02:49] *** releasable6 joined [03:47] *** greppable6 joined [03:47] *** benchable6 joined [03:48] *** notable6 joined [03:48] *** statisfiable6 joined [03:49] *** quotable6 joined [03:49] *** reportable6 joined [04:47] *** committable6 joined [05:30] *** [Coke] left [05:33] *** [Coke] joined [05:47] *** unicodable6 joined [06:07] *** reportable6 left [06:08] *** reportable6 joined [06:47] *** nativecallable6 joined [09:07] *** committable6 left [09:07] *** reportable6 left [09:07] *** unicodable6 left [09:07] *** notable6 left [09:07] *** sourceable6 left [09:07] *** bisectable6 left [09:07] *** statisfiable6 left [09:07] *** greppable6 left [09:07] *** squashable6 left [09:07] *** linkable6 left [09:07] *** nativecallable6 left [09:07] *** quotable6 left [09:07] *** bloatable6 left [09:07] *** evalable6 left [09:07] *** tellable6 left [09:07] *** releasable6 left [09:07] *** benchable6 left [09:07] *** shareable6 left [09:09] *** linkable6 joined [09:09] *** quotable6 joined [09:09] *** reportable6 joined [09:09] *** sourceable6 joined [09:09] *** statisfiable6 joined [09:09] *** bloatable6 joined [09:09] *** nativecallable6 joined [09:10] *** bisectable6 joined [09:10] *** notable6 joined [09:10] *** committable6 joined [09:11] *** releasable6 joined [10:09] *** unicodable6 joined [10:09] *** evalable6 joined [11:09] *** shareable6 joined [11:09] *** squashable6 joined [11:11] *** sena_kun joined [12:08] *** reportable6 left [12:09] *** benchable6 joined [12:10] *** tellable6 joined [12:11] *** reportable6 joined [12:35] *** frost left [14:04] *** linkable6 left [14:04] *** evalable6 left [14:25] ¦ roast: 10621b95e1 | (Vadim Belman)++ | MSG [14:25] ¦ roast: Remove accidentally added file [14:25] ¦ roast: review: https://github.com/Raku/roast/commit/10621b95e1 [15:05] *** linkable6 joined [15:48] *** coverable6 joined [16:07] *** evalable6 joined [16:10] *** greppable6 joined [17:38] *** discord-raku-bot left [17:39] *** discord-raku-bot joined [17:43] *** discord-raku-bot left [17:43] *** discord-raku-bot joined [18:08] *** reportable6 left [18:08] *** reportable6 joined [19:07] *** sena_kun left [19:36] *** squashable6 left [19:36] *** squashable6 joined [20:13] *** [Coke] left [20:16] *** [Coke] joined [21:49] lizmat: Around? [21:49] somewhere, yes [21:50] So ... I'm not sure the original code in TinyFloats was wrong. I'm thinking the warning may be spurious (at least in the case of +&). [21:50] I'm instrumenting the heck out of my tests, and I can't see the new and old code produce a different answer. [21:51] Heck, I even have a version that prints every stage of both calculations, and they're the same as far as I can tell. [21:52] What commit added this warning? [21:53] vrurg added a few days ago [21:53] maybe longer ago [21:54] no, it was Masterduke [21:54] 71c62e7c1121c19e7c4 [21:55] *** linkable6 left [21:55] japhb: you're hitting a new warning? [21:56] https://github.com/japhb/TinyFloats/pull/2 [21:57] lizmat++ sent me a PR to silence the warning, but neither of us managed to create a test where the old (unparenthesized) code produces a different answer. [21:57] *** linkable6 joined [21:57] Which could just be me being blind, but I suspect maybe the warning is overzealous. [22:00] I guess a test could be devised with 2 Proxies to the left of the ?? ? [22:07] Oh hmmm, I was missing the (potential) bug before because I wasn't using Proxy objects? Interesting. [22:08] well, having the FETCH in the Proxy setting a flag, and thus testing the order in which they were fetched ? [22:11] I'm saying that my original code could never trip over the bug, because only the first line of bin16-from-num() touches the user input, and that in a way that would work properly with a Proxy object. All the other code in that routine works with scalars of my own production -- thus there could never be proxies in the warned line of code. [22:11] well, i think that's a case where i didn't intend the warning to fire. i.e., the +& produces a truthy result to it should get exluded [22:11] *so it should get excluded [22:12] that was the intent of this part https://github.com/rakudo/rakudo/commit/9237926eb4d571d6adc8d46b024cb4e3b9b418c2#diff-825a09f6993c1c5393a98e85d638a3e21cf40b650b44af0592519fdcaa296f32R1523 [22:14] Ah, and my code had the opposite case from the one in the comment there -- instead of wanting parens around the ternary, it's pushing for parens around the test [22:15] +& is a case where you could conceivably want it either way [22:15] so I think it is reasonable to warn there [22:16] moon-child: Yeah, I can see that. [22:17] `src/Perl6/Grammar.nqp:4090:    token infix:sym   {   }` [22:17] `src/core.c/precedence.pm6:66:    trait_mod:(&infix:,  :prec($multiplicative));` [22:17] interestingly `?&` is iffy in the token, but not the trait_mod [22:18] `src/Perl6/Grammar.nqp:4088:    token infix:sym<+&>   {   }` [22:18] `src/core.c/precedence.pm6:64:    trait_mod:(&infix:<+&>,  :prec($multiplicative));` [22:18] m: dd DateTime.now.Str [22:18] rakudo-moar 552edcb0b: OUTPUT: «"2021-12-28T23:18:36.305661+01:00"␤» [22:18] `+&` isn't in either [22:19] turns out that is NOT a ISO 8601 compatible string anymore [22:19] lizmat: Too many decimal places? [22:20] yeah, for second indeed [22:20] what's the cap? 3? [22:20] ISO 8601:1-2019 is the standard, but it appears that some services don't understand that [22:20] 0 I'd say :-) [22:20] :/ [22:21] Well, I suppose that's only two years old as a standard, so ... [22:21] m: dd DateTime.now.truncated-to('second').Str [22:21] rakudo-moar 552edcb0b: OUTPUT: «"2021-12-28T23:21:46+01:00"␤» [22:21] meh [22:22] m: dd DateTime.new(now.Int) [22:22] rakudo-moar 552edcb0b: OUTPUT: «DateTime.new(2021,12,28,22,22,51)␤» [22:22] m: dd DateTime.new(now.Int).Str [22:22] rakudo-moar 552edcb0b: OUTPUT: «"2021-12-28T22:22:57Z"␤» [22:22] m: dd DateTime.new(time).Str [22:22] rakudo-moar 552edcb0b: OUTPUT: «"2021-12-28T22:22:51Z"␤» [22:22] guess I'll use that [22:27] Oof, lots of pointer size and signedness warnings building MoarVM on RPi4 + Raspbian (32-bit) [23:46] ¦ rakudo: MasterDuke17++ created pull request #4689: Make infix:<(~+?)&> iffy [23:46] ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/4689 [23:47] japhb, lizmat: ^^^, though i would be curious if there's any ecosystem fallout [23:48] I doubt it... approved the PR already :-) [23:48] heh, that was fast [23:49] well, i'm off to sleep [23:49] well, it was about the last thing I'll be doing today as well [23:49] afk& [23:49] sleep well all!