🦋 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, reportable6 joined 01:07 evalable6 left 01:09 evalable6 joined 01:21 linkable6 joined 01:39 frost joined 02:39 linkable6 left, evalable6 left 02:40 evalable6 joined
Geth rakudo/WHY-on-role-group: 91e3c983d3 | (Jonathan Worthington)++ (committed by Vadim Belman) | src/Perl6/Metamodel/ParametricRoleGroupHOW.nqp
Make .WHY on role group delegate to default role

Roles have a two-level structure: the role name is a parametric role group, which in turns contains the parametric role. In the case of there being many roles of the same short name, they are within the one group. Declarator docs correctly attach to the parametric role. However, that means .WHY on the group doesn't actually result in those docs. You have ... (10 more lines)
03:15
rakudo/WHY-on-role-group: d3e74427b4 | (Vadim Belman)++ | 2 files
Finalize delegation of .WHY on role group

  - Remove `Perl6::Metamodel::Documenting` from consumed roles
  - Fully implement `WHY`, `set_why`
  - Make `set_why` throw `X::Role::Group::Documenting` as a safety measure
I deliberately don't delegate `set_why` in order to avoid accidental overriding of parametric role documentation. It doesn't and must not happen in Rakudo implementation anyway.
rakudo/WHY-on-role-group: 8f989d1a2e | (Vadim Belman)++ | src/Perl6/Grammar.nqp
Make $*PRECEDING_DECL lexically scoped for signature

Because signature is a local scope from documentation point of view.
Fixes documenting of parametric role:
   role R[::T] {
   #= this now belongs to the role, not to the parameter T
   }
And makes one spec TODO passing.
roast/WHY-on-role-group: 642644a5bb | (Vadim Belman)++ | 5 files
Make sure role group delegates .WHY to its default candidate

This required to remove tests which were testing for `Role.WHY` returning `Nil`. But as was suggested in this comment:
  github.com/rakudo/rakudo/pull/3549...-687587580
... (10 more lines)
03:37
roast: vrurg++ created pull request #783:
Make sure role group delegates .WHY to its default candidate
roast/WHY-on-role-group: ab7ca0ca46 | (Vadim Belman)++ | S26-documentation/wacky.t
Unfudge a TODO

It is passing since rakudo/rakudo#3549
03:39
06:00 statisfiable6 left, coverable6 left, squashable6 left, evalable6 left, shareable6 left, releasable6 left, unicodable6 left, sourceable6 left, bisectable6 left, greppable6 left, tellable6 left, notable6 left, committable6 left, reportable6 left, nativecallable6 left, bloatable6 left, benchable6 left, quotable6 left 06:01 bisectable6 joined, unicodable6 joined, squashable6 joined 06:02 coverable6 joined 06:03 committable6 joined, sourceable6 joined, notable6 joined, greppable6 joined 07:01 evalable6 joined 07:02 statisfiable6 joined 07:03 nativecallable6 joined 07:41 [Coke] left, linkable6 joined 08:01 benchable6 joined 08:02 quotable6 joined, bloatable6 joined, releasable6 joined 08:03 tellable6 joined 08:56 [Coke] joined 09:03 shareable6 joined 10:03 linkable6 left, evalable6 left 10:06 evalable6 joined
Geth rakudo/remove-restricted-setting: 1000 commits pushed by 37 authors
review: github.com/rakudo/rakudo/compare/6...73d6754e10
10:36
rakudo: de605e8495 | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | 2 files
Add :slip named argument to roundrobin() (#4663)

When set, it will generate separrate values from the lists, rather than Lists. Basically, the same as:
   roundrobin(...).map: *.Slip
but much more effcient as no intermediate Lists / Slips need to be created.
10:45
rakudo: 4d2637795f | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | src/core.c/Any-iterable-methods.pm6
Add an Any(iterable).infer method (#4626)

Given an iterable thing of values, will return the type / role that is tightest for the values given.
As proposed by jnthn on logs.liz.nl/moarvm/2021-11-09.html#10:25-0001
10:51
lizmat and that concludes by rummaging through PR's for now 10:52
MasterDuke lizmat++ 10:53
11:05 linkable6 joined 11:22 Skarsnik joined 11:24 RakuIRCLogger joined
lizmat meh, the logger complained about "connection timed out" and did not recover :-( guess I'll need to do some manual merging at some point 11:28
Geth nqp: c20c2ffb7e | (Elizabeth Mattijsen)++ | tools/templates/MOAR_REVISION
Bump MoarVM for the latest fixes
11:37
11:51 camelia left
Skarsnik lizmat, I had a quick look for github.com/rakudo/rakudo/pull/1137 there does not seem to have the needed socketbind op in moarvm so I would need to keep the PR similar to what it is (with a pr in nqp/moar/rakudo) and I don't really have much time to do that ~~ 11:53
Geth rakudo: 3aa23bf9bc | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION
Bump NQP to get the latest MoarVM fixes
lizmat Skarsnik: so I should leave the PR open? Or should I close it for now, until you have more time / someone else kicks in? :-) 11:54
11:55 camelia joined
Skarsnik Probably wait to see if Kaiepi reply 11:55
lizmat oki :-) I can do that :-) 11:56
12:21 camelia left 12:22 camelia joined
Kaiepi it pains me to say, but i'm very unwell, and will be until march at the soonest. contributing is very difficult at best for me between now and an unknown point in time, basically 12:36
sena_kun Kaiepi, sad to hear that, please take care. 12:38
12:44 camelia left, camelia joined
lizmat Kaiepi: get well, anything else is *not* important 12:44
(well, in the context of #rakulang I'd say :-)
13:12 nine_ joined, camelia left 13:13 nine left 13:20 camelia joined, camelia left 13:21 camelia joined
Geth rakudo: MasterDuke17++ created pull request #4703:
Use simpler code for correct `.length` suggestions test
13:31
13:35 carlmasak joined 14:04 carlmasak left 14:50 frost left 14:52 vrurg left 14:56 vrurg joined
Geth rakudo: 9310799cb4 | MasterDuke17++ (committed using GitHub Web editor) | t/05-messages/01-errors.t
Use simpler code for correct `.length` suggestions test (#4703)

The existing code causes tons of `WARNING: unhandled Failure detected in DESTROY`.
15:30
15:31 linkable6 left, linkable6 joined
Geth rakudo: 6a8fa2f410 | (Aleks-Daniel Jakimenko-Aleksejev)++ (committed using GitHub Web editor) | 5 files
Remove RESTRICTED setting (#3965)

RESTRICTED settings looks as if it is a security feature, but this issue cannot be approached with a blacklist. For example, the things that it blacklists are still available through method calls and nativecall, and there is just no way to plug all the possible holes. Moreover, those who actually need to run code securely will ... (10 more lines)
15:48
15:49 linkable6 left 15:52 linkable6 joined
nine_ lizmat++ # working through open PRs 15:52
MasterDuke nine_: with this change gist.github.com/MasterDuke17/cf21d...75258c802e i no longer get the WARNINGs when using the original code in the test 16:18
nine_ MasterDuke: I like that! There are a few more places that will have to pass the type 16:20
MasterDuke yeah, that was just a quick test
but, `say 1.VAR.foo` now doesn't give the new containerization message
oh, i need it in a variable 16:21
ah, it mentions a container, but doesn't give all the extra suggestions 16:22
nope, i was testing incorrectly, those still seem to work 16:27
nqp::what($.invocant) also seems to work, and that doen't require adding a new member 16:32
Geth rakudo: 36cee696fe | Altai-man++ (committed using GitHub Web editor) | lib/Pod/To/Text.rakumod
Fix warning in Pod::To::Text signature processing (#3528)

Do not assume the last argument of signature always has a name, as e.g. `|` in proto signatures does not have it.
16:47
16:48 linkable6 left 16:49 linkable6 joined
[Tux] Rakudo v2021.12-83-g36cee696f (v6.d) on MoarVM 2021.12-28-gf12bc4228
csv-ip5xs0.875 - 0.888
csv-ip5xs-205.431 - 5.536
csv-parser4.177 - 4.359
csv-test-xs-200.403 - 0.407
test7.172 - 7.314
test-t1.673 - 1.805
test-t --race0.978 - 1.016
test-t-2024.186 - 24.631
test-t-20 --race7.444 - 7.459
17:09
Geth rakudo: 535e015111 | (Elizabeth Mattijsen)++ | src/Perl6/Grammar.nqp
Re-imagine PR #4649

Using jnthn's directions. This code:
   $ raku -e 'role A { }; class B does A{ ... }'
Now throws: ... (5 more lines)
18:18
gfldex Does [eq] short circuit?
18:19 linkable6 left 18:20 linkable6 joined
sena_kun gfldex, nope, and it probably shouldn't be assumed so 18:36
but you can do so try [eq] instead 18:38
m: so try [eq] True, False, die "hehe"
camelia WARNINGS for <tmp>:
Useless use of "so " in expression "so try [eq] True, False, die \"hehe\"" in sink context (line 1)
sena_kun m: say so try [eq] True, False, die "hehe"
camelia False
sena_kun m: say so try [eq] True, True, True
camelia True
gfldex m: [eq] 1,1,1,1,1,1,1 for ^100000; say now - BEGIN now; 18:39
camelia 0.557068006
gfldex m: [eq] 1,2,1,1,1,1,1 for ^100000; say now - BEGIN now;
camelia 0.247998695
gfldex &infix:<eq> is pure, so it can't hurt to short circuit. 18:40
I found it in S03-metaops/reduce.t . 18:41
That's an ENODOC tho. 18:42
sena_kun that's an interesting case, but I suspect it's related to runtime optimizations interpreting the statistics rather than the construction short circuiting 18:49
the [&op] construction is pretty generic, so I'm not sure it should make a lot of assumptions about what's the op, is it pure, if it's result is a boolean etc. 18:50
19:02 discord-raku-bot left 19:03 discord-raku-bot joined
lizmat .tell Xliff I would put Debian on a 2021 MacMini :-) 19:31
tellable6 lizmat, I'll pass your message to Xliff
20:01 reportable6 joined 21:15 evalable6 left, linkable6 left, evalable6 joined 21:16 linkable6 joined
gfldex m: ^10 ==> tail(20) ==> say(); 21:48
camelia ===SORRY!=== Error while compiling <tmp>
Undeclared routine:
tail used at line 1. Did you mean 'fail'?
21:49
gfldex sub hyper is also missing. 21:57
moon-child m: say all (0, 0) == 0 22:15
camelia all(False)
moon-child ^^ came up recently. Obviously supposed to be all(0, 0) == 0. But (0, 0) == 0 is always false; perhaps should have a warning?
Voldenet m: say say(0, 0) == False; say say (0, 0) == False 22:20
camelia 00
False
False
True
Voldenet happy debugging :)
gfldex I always use the method form to avoid that problem. 22:54
Geth rakudo/master: 4 commits pushed by (Jonathan Worthington)++, (Vadim Belman)++ 23:06
roast: 642644a5bb | (Vadim Belman)++ | 5 files
Make sure role group delegates .WHY to its default candidate

This required to remove tests which were testing for `Role.WHY` returning `Nil`. But as was suggested in this comment:
  github.com/rakudo/rakudo/pull/3549...-687587580
... (10 more lines)
roast: ab7ca0ca46 | (Vadim Belman)++ | S26-documentation/wacky.t
Unfudge a TODO

It is passing since rakudo/rakudo#3549
roast: 250a246ded | (Vadim Belman)++ (committed using GitHub Web editor) | 6 files
Merge pull request #783 from Raku/WHY-on-role-group

Make sure role group delegates .WHY to its default candidate
23:07 linkable6 left 23:10 TempIRCLogger left, TempIRCLogger joined 23:13 RakuIRCLogger left, RakuIRCLogger joined