🦋 Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | log inspection situation still under development | For MoarVM see #moarvm
Set by lizmat on 22 May 2021.
00:07 reportable6 left 00:10 reportable6 joined 00:35 kjp left 02:18 sourceable6 left, bloatable6 left, notable6 left, bisectable6 left, benchable6 left, unicodable6 left, greppable6 left, squashable6 left, linkable6 left, statisfiable6 left, quotable6 left, shareable6 left, tellable6 left, evalable6 left, coverable6 left, nativecallable6 left, releasable6 left, reportable6 left, committable6 left 02:19 bisectable6 joined, greppable6 joined, quotable6 joined, notable6 joined 02:20 unicodable6 joined, coverable6 joined, shareable6 joined, reportable6 joined 03:19 bloatable6 joined, evalable6 joined, committable6 joined 03:20 statisfiable6 joined 03:21 linkable6 joined, sourceable6 joined
Geth rakudo: vrurg++ created pull request #4698:
Additional fixes and improvements of smartmatch optimizations
roast: vrurg++ created pull request #782:
Adjust some smartmatch and given/when tests
04:08 kjp joined 04:20 tellable6 joined, nativecallable6 joined, releasable6 joined, benchable6 joined 05:22 evalable6 left, committable6 left, tellable6 left, nativecallable6 left, greppable6 left, benchable6 left, bisectable6 left, statisfiable6 left, releasable6 left, notable6 left, sourceable6 left, linkable6 left, reportable6 left, bloatable6 left, shareable6 left, quotable6 left, unicodable6 left, coverable6 left 05:23 coverable6 joined, unicodable6 joined, bisectable6 joined 05:24 committable6 joined, quotable6 joined, sourceable6 joined 05:25 benchable6 joined, evalable6 joined, linkable6 joined, releasable6 joined 06:24 tellable6 joined 06:25 notable6 joined, nativecallable6 joined 06:57 bartolin left 06:59 bartolin joined 07:21 squashable6 joined 08:23 statisfiable6 joined 08:24 greppable6 joined 08:25 bloatable6 joined 09:08 reportable6 joined 09:25 shareable6 joined 10:27 frost left
lizmat Files=1351, Tests=117886, 321 wallclock secs (35.67 usr 9.76 sys + 4518.70 cusr 357.20 csys = 4921.33 CPU) 10:33
10:37 frost joined
Geth rakudo: c56c578cb4 | Moonchild++ | 3 files
disallow creating Uni with out-of-range codepoints
rakudo: 6a265eab87 | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | 3 files
Merge pull request #4511 from moon-chilled/master

Disallow creating Uni with out-of-range codepoints
rakudo/rat-upgrade-class: 816 commits pushed by 36 authors
review: github.com/rakudo/rakudo/compare/0...3de6c730a1
11:35 sjn left
Geth rakudo/rat-upgrade-class: fe73a61911 | (Elizabeth Mattijsen)++ | 2 files
Rename to $*RAT-OVERFLOW
rakudo: ef35db0624 | (Elizabeth Mattijsen)++ | src/core.c/Uni.pm6
Fix off-by-one error
rakudo: f737b0801c | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | 5 files
Introducing $*RAT-UPGRADE-CLASS (#4299)

Introducing $*RAT-OVERFLOW
This dynamic variable indicates the *class* in which an UPGRADE-RAT method will be called whenever a Rat has a denominator that does not fit in a 64bit native integer. ... (26 more lines)
lizmat hmmm... I thought I'd fixed the title :-(
12:04 reportable6 left, linkable6 left 12:05 linkable6 joined 12:06 reportable6 joined
sena_kun I'm pretty sure github.com/rakudo/rakudo/pull/4447 can be merged. 12:34
Geth rakudo: c9b2e0b4a7 | (Elizabeth Mattijsen)++ | src/core.c/Uni.pm6
Revert "Fix off-by-one error"

This reverts commit ef35db062446b04a7171f70b028c7badd7154c23.
Turns out, the test was actually wrong, after consulting with our resident Unicode guru Samantha McVey.
roast: f096695fa3 | (Elizabeth Mattijsen)++ | 2 files
Fix problem in test generation

0xd800 is *not* a surrogate. Didn't run the generation script again as that depends on now too new Unicode data files.
rakudo: 36af7d0efd | Altai-man++ (committed using GitHub Web editor) | t/05-messages/03-errors.t
Add two tests for proper error messages (#4447)

One is for printing something to a close handle. Two is for a weird case of adverbing.
12:41 linkable6 left
moon-child clearly, I never make off-by-one errors :) 12:41
lizmat moon-child++ 12:44
Geth rakudo: 4b2fc66fce | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | src/core.c/Cool.pm6
Add Cool.Order "coercer" (#4473)

Convert a Cool value to the associated Order enum:
  - < 0 -> Less
  - 0 -> Same
  - > 0 -> More
The only other way to currently do this, is by basically writing the ORDER (implementation-detail) subroutine again, or just do a call to ORDER. This allows syntactic sugar to not have to do it like that.
MasterDuke lizmat: while you're on a roll, www.nntp.perl.org/group/perl.perl6...10343.html seems sort of up your alley 12:57
moon-child hmm. Str case should obviously be handled. Float is harder. Should it truncate and then divide, or divide and then truncate? 12:58
MasterDuke i haven't looked into it enough to know, perhaps the answer is that current situation is correct 12:59
13:05 sjn joined
lizmat yeah, I'll wait for someone to make an issue / PR for that :-) 13:06
I'm just going through stale PRs atm 13:07
Geth rakudo/sparse-array-raku: 687 commits pushed by 30 authors
review: github.com/rakudo/rakudo/compare/4...01f0375fac
13:40 frost left
Geth rakudo/master: 15 commits pushed by (Jonathan Worthington)++
review: github.com/rakudo/rakudo/compare/4...fde77d2a08
13:43 linkable6 joined
Geth rakudo: 026c51a045 | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | src/core.c/Pair.pm6
Fix the behaviour of Pair ~~ Pair (#4671)

Apparently, this was borked since d8f7e8b8d6ea25b about 6 years ago.
See discussion at logs.liz.nl/moarvm/2021-12-15.html#16:32-0003
This breaks test #177 of t/spec/S02-types/pair.t
13:44 linkable6 left 13:45 linkable6 joined 13:46 Geth left, Geth joined
lizmat hmmm... looks like IRC::Client ping / msg handling still needs some tweaking -( 13:50
Geth roast: 0a5c36a90e | (Elizabeth Mattijsen)++ | S02-types/pair.t
Adapt to correct behaviour of Pair.ACCEPTS(Pair)
13:57 Geth left, Geth joined 14:01 Geth left, Geth joined 14:05 Geth left, Geth joined 14:10 Geth left, Geth joined 14:14 Geth left, Geth joined
Geth rakudo: 586f2f3cc7 | (Elizabeth Mattijsen)++ | src/core.c/Complex.pm6
Make Complex.new about 30x as fast

Turned out, !SET-SELF was not inlineable. By doing the dirty work inside .new (and some new candidates), it *is* all inlineable and that in turn, makes things a *lot* faster!
MasterDuke aren't methods with conversion types a lot faster now after new-disp? could those last two multi's be one with Num:D(Real:D)? 15:36
nine I wonder why SET-SELF is not inlineable? 15:42
lizmat scrolls back 15:45
target has a :noinline instruction - ins: sp_assertparamcheck
MasterDuke m: multi foo(Num:D(Real:D) $a = 0) { $a + 2e1 }; my $b = 1_000_000.rand; say foo($b)    # didn't expect this 15:59
camelia Ambiguous call to 'foo(Num)'; these signatures all match:
(Num:D(Real:D):D $a = 0)
(Num:D(Real:D):D $a = 0)
in block <unit> at <tmp> line 1
Geth rakudo: 4f3ff58095 | (Elizabeth Mattijsen)++ | src/core.c/IO/Path.pm6
Scrape off 100 bytes from IO::Path!SET-SELF

Sadly, not enough to get it inlined just yet
rakudo: efdc1a9e85 | (Elizabeth Mattijsen)++ | src/core.c/IO/Path.pm6
Get IO::Path!SET-SELF below inlining limit

Sadly, that is not making things a lot faster :-(
[Tux] Rakudo v2021.12-62-gefdc1a9e8 (v6.d) on MoarVM 2021.12-11-g39e9a6be0
csv-ip5xs0.860 - 0.875
csv-ip5xs-205.337 - 5.361
csv-parser4.109 - 4.246
csv-test-xs-200.414 - 0.423
test6.871 - 6.975
test-t1.668 - 1.694
test-t --race0.967 - 0.976
test-t-2024.532 - 24.626
test-t-20 --race7.244 - 7.407
Geth rakudo: 03065e2967 | (Martin Kealey)++ (committed using GitHub Web editor) | src/core.c/Complex.pm6
$x ** ±Inf is sometimes 0 (#4226)

inside_unit_circle ** Inf == 0 outside_unit_circle ** -Inf == 0
16:54 linkable6 left, linkable6 joined 16:57 Geth left, Geth joined 18:07 reportable6 left 20:10 reportable6 joined 20:35 [Coke] left 20:39 [Coke] joined 22:13 sena_kun left 22:15 sena_kun joined
Geth rakudo: 2a3f61ef14 | (Vadim Belman)++ | 2 files
Additional fixes and improvements of smartmatch optimizations

  - Better detection of invocations, method calls wrapped into `hllize`
   are considered now.
  - Better detection of possible return value type for an AST node.
  - As a result of the above two items, smartmatches with method calls can
   now be optimized too.
... (15 more lines)
rakudo: 7b1653bbf9 | (Vadim Belman)++ (committed using GitHub Web editor) | 2 files
Merge pull request #4698 from vrurg/problem-solving-297-1

Additional fixes and improvements of smartmatch optimizations
roast/master: 6 commits pushed by (Vadim Belman)++
rakudo: 1b5c0b9516 | (Daniel Green)++ | src/vm/moar/runner/main.c
Don't use MVM_free if we didn't use MVM_malloc

Since we're likely about to use a new allocator in MoarVM for the MVM_* allocation functions, they have to match up.