[00:07] melezhik: compile it with debug symbols, attach gdb, print backtrace [00:08] *** reportable6 left [00:10] *** reportable6 joined [00:15] *** mexen left [00:21] *** euandreh left [00:45] <[Coke]> does XS not JustWork® with Inline::Perl5 ? [00:48] *** rbt left [00:53] *** euandreh joined [01:14] *** swaggboi left [01:14] *** swaggboi joined [01:19] just tried `use JSON::XS:from; say encode_json()` and it did work for me [01:25] *** discord-raku-bot left [01:25] *** discord-raku-bot joined [01:26] *** rbt joined [01:42] You can setup delay: /set irc.look.smart_filter_delay 5 [01:43] sorry, oops [01:49] *** Voldenet_ joined [01:49] *** Voldenet left [01:49] *** Voldenet_ is now known as Voldenet [01:55] *** saint- left [02:06] *** rbt left [02:06] *** rbt joined [02:18] *** frost joined [02:35] *** Sgeo_ joined [02:39] *** Sgeo left [03:00] *** rbt left [03:08] *** melezhik left [03:16] *** Guest35 left [03:23] *** gugod left [03:26] *** gugod joined [04:03] *** guifa joined [04:03] *** coleman joined [04:04] *** RakuIRCLogger left [04:05] *** lizmat left [04:05] *** Geth left [04:05] *** TempIRCLogger left [04:07] *** TempIRCLogger joined [04:07] *** lizmat joined [04:09] o/ [04:21] *** coleman left [04:47] *** xinming left [04:49] *** xinming joined [05:49] *** statisfiable6 left [05:49] *** sourceable6 left [05:49] *** evalable6 left [05:49] *** benchable6 left [05:49] *** releasable6 left [05:49] *** linkable6 left [05:49] *** unicodable6 left [05:49] *** tellable6 left [05:49] *** coverable6 left [05:49] *** reportable6 left [05:49] *** bloatable6 left [05:49] *** shareable6 left [05:49] *** nativecallable6 left [05:49] *** notable6 left [05:49] *** committable6 left [05:49] *** quotable6 left [05:49] *** greppable6 left [05:49] *** bisectable6 left [05:49] *** unicodable6 joined [05:50] *** linkable6 joined [05:50] *** committable6 joined [05:50] *** kjp left [05:50] *** statisfiable6 joined [05:50] *** quotable6 joined [05:50] *** nativecallable6 joined [05:51] *** evalable6 joined [05:51] *** coverable6 joined [05:51] *** releasable6 joined [05:51] *** shareable6 joined [05:52] *** reportable6 joined [05:52] *** greppable6 joined [05:52] *** notable6 joined [05:52] *** sourceable6 joined [05:52] *** bloatable6 joined [05:52] *** benchable6 joined [05:52] *** tellable6 joined [05:52] *** bisectable6 joined [06:06] *** reportable6 left [06:06] *** reportable6 joined [06:12] *** abraxxa joined [06:16] *** kjp joined [06:18] *** abraxxa left [06:19] *** abraxxa joined [06:27] *** jjido joined [06:35] *** guifa left [07:35] *** releasable6 left [07:35] *** greppable6 left [07:35] *** reportable6 left [07:35] *** nativecallable6 left [07:35] *** bloatable6 left [07:35] *** sourceable6 left [07:35] *** benchable6 left [07:35] *** bisectable6 left [07:35] *** shareable6 left [07:35] *** quotable6 left [07:35] *** coverable6 left [07:35] *** statisfiable6 left [07:35] *** tellable6 left [07:35] *** unicodable6 left [07:35] *** linkable6 left [07:35] *** committable6 left [07:35] *** notable6 left [07:35] *** evalable6 left [07:35] *** evalable6 joined [07:36] *** greppable6 joined [07:36] *** reportable6 joined [07:36] *** committable6 joined [07:36] *** bloatable6 joined [07:36] *** unicodable6 joined [07:36] *** tellable6 joined [07:36] *** coverable6 joined [07:37] *** releasable6 joined [07:37] *** benchable6 joined [07:37] *** notable6 joined [07:37] *** linkable6 joined [07:38] *** statisfiable6 joined [07:38] *** quotable6 joined [07:38] *** nativecallable6 joined [07:38] *** shareable6 joined [07:38] *** bisectable6 joined [07:38] *** sourceable6 joined [07:40] *** jjido left [07:49] *** lichtkind joined [07:50] *** jjido joined [07:51] *** Sgeo_ left [07:53] *** jjido left [08:03] *** dakkar joined [08:09] *** jjido joined [08:12] *** jmcgnh left [08:16] *** RakuIRCLogger joined [08:16] *** jjido left [08:16] *** lizmat left [08:17] *** lizmat joined [08:20] *** RakuIRCLogger left [08:20] *** RakuIRCLogger joined [08:21] *** jmcgnh joined [09:02] *** sena_kun left [09:03] *** Geth joined [09:03] *** sena_kun joined [09:07] *** grondilu joined [09:07] method fallbacks are not inherited? I've tried to inherit from JSON::RPC and got no method fallbacks. [09:08] Sorry I meant JSON::RPC::Client [09:10] m: class A { BEGIN $?PACKAGE.add_fallback: $?PACKAGE, -> $,$ { True }, -> $,$name { say "calling $name" } }; A.new.foo [09:10] rakudo-moar 530e17848: OUTPUT: «===SORRY!=== Error while compiling ␤An exception occurred while evaluating a BEGIN␤at :1␤Exception details:␤ No such method 'add_fallback' for invocant of type 'A'␤ in code at line 1␤␤» [09:10] m: class A { BEGIN $?PACKAGE.HOW.add_fallback: $?PACKAGE, -> $,$ { True }, -> $,$name { say "calling $name" } }; A.new.foo [09:10] rakudo-moar 530e17848: OUTPUT: «calling foo␤No such method 'CALL-ME' for invocant of type 'Bool'␤ in block at line 1␤␤» [09:11] m: class A { BEGIN $?PACKAGE.HOW.add_fallback: $?PACKAGE, -> $,$ { True }, -> $,$name { method { say "calling $name" } } }; A.new.foo [09:11] rakudo-moar 530e17848: OUTPUT: «calling foo␤» [09:11] m: class A { BEGIN $?PACKAGE.HOW.add_fallback: $?PACKAGE, -> $,$ { True }, -> $,$name { method { say "calling $name" } } }; A.new.foo ; class :: is A {}.new.foo [09:11] rakudo-moar 530e17848: OUTPUT: «calling foo␤No such method 'foo' for invocant of type ''␤ in block at line 1␤␤» [09:14] m: class A { BEGIN $?PACKAGE.HOW.add_fallback: $?PACKAGE, -> $,$ { True }, -> $,$name { method { say "calling $name" } } }; A.new.foo ; try class :: is A {}.new.bar [09:14] rakudo-moar 530e17848: OUTPUT: «calling foo␤» [09:16] *** p6steve left [09:17] *** p6steve joined [09:21] *** p6steve left [09:23] *** p6steve joined [09:43] *** ThDrMz left [09:43] *** ThDrMz joined [10:43] *** linkable6 left [10:43] *** evalable6 left [10:43] m: class A { method FALLBACK($name, |c) { say "calling $name" } }; A.new.foo; class :: is A {}.new.bar [10:43] rakudo-moar 530e17848: OUTPUT: «calling foo␤calling bar␤» [10:43] 2022-04-21T02:24:56Z #raku-dev SmokeMachine hopefully I fixed SparkyCI performance and false negative issues , please try to run new builds for Red and let me know if you have any issue [10:44] *** evalable6 joined [10:44] grondilu: ^^ [10:45] *** linkable6 joined [10:47] .tell melezhik I'll try to fix some Pg tests as soon as possible to test it, thanks! [10:47] SmokeMachine, I'll pass your message to melezhik [10:47] *** p6steve left [10:48] *** wingfold joined [10:56] *** p6steve joined [10:58] SmokeMachine: noted. I suppose I could tell the author of JSON::RPC to update his module to use FALLBACK instead add_fallback [11:00] *** p6steve left [11:09] *** p6steve joined [12:03] *** p6steve left [12:04] *** p6steve joined [12:08] *** reportable6 left [12:10] *** reportable6 joined [12:10] *** p6steve left [12:35] ¦ Documentable: JJ self-assigned Test failures https://github.com/Raku/Documentable/issues/160 [12:35] ¦ Documentable: JJ unassigned from antoniogamiz Issue Test failures https://github.com/Raku/Documentable/issues/160 [12:36] *** RaycatWhoDat joined [12:37] Hi, hello. [12:37] 2021-10-26T15:04:00Z #raku RaycatWhoDat: subset Command of Str where * ~~ /:i ^ EXIT $ /; loop { my $command = prompt(">>") // last; last if $command ~~ Command; say "I will do <$command>" } [12:37] wha [12:37] Oh, I know what this is for [12:37] Thanks, dakkar [12:37] wow, apparently a few months ago I replied to a question of yours [12:38] Yeah, this is probably for the orchestration thing I was fiddling with [12:38] I was using Raku as "Nicer Bash" [12:39] I'm currently running into the "This Seq has already been consumed" issue and I'm trying to grok how to actually solve it [12:39] I've done what the error asks me to do but it doesn't seem to work [12:39] Here's the non-functioning code: https://github.com/RayMPerry/kitchen-sink/blob/master/raku/encrypt-decrypt.raku [12:40] Why doesn't adding the `.cache` method to the usages of `@translations` actually work? Am I misunderstanding something? [12:40] I encountered this error lately too. I solved it by using .eager [12:41] `.eager` on the declaration? [12:41] err, assignment [12:41] what is that arrow thingy? [12:41] instead of `my $ = (^10).something` I wrote `my $ = (^10).something.eager^ [12:42] Nemokosch, it makes a Pair [12:42] or something like that, the details don't matter [12:42] oh right, I got confused [12:43] m: say .WHAT given my $ = (^10).base(16) [12:43] rakudo-moar 530e17848: OUTPUT: «No such method 'base' for invocant of type 'Range'. Did you mean any␤of these: 'Bag', 'Hash', 'are', 'asec', 'hash', 'race', 'take'?␤ in block at line 1␤␤» [12:43] oops [12:43] m: say .WHAT given my $ = (^10).Str.flip [12:43] rakudo-moar 530e17848: OUTPUT: «(Str)␤» [12:43] m: say .WHAT given my $ = (^10).map(*.Str.flip) [12:43] rakudo-moar 530e17848: OUTPUT: «(Seq)␤» [12:43] m: say .WHAT given my $ = (^10).map(*.Str.flip).eager [12:43] rakudo-moar 530e17848: OUTPUT: «(List)␤» [12:43] anyway, I don't remember needing eager in situations like that [12:44] I think it would be more idiomatic to just convert to List [12:44] Doesn't that have the same problem? [12:44] I think I had tried that [12:44] m: say .WHAT given my $ = (^10).map(*.Str.flip).list [12:44] rakudo-moar 530e17848: OUTPUT: «(List)␤» [12:45] m: say .WHAT given my @list = (^10).map(*.Str.flip); say @list[0]; say @list[0] [12:45] rakudo-moar 530e17848: OUTPUT: «(Array)␤0␤0␤» [12:46] meh I can't even reproduce the "Seq already consumed" error. This thing is confusing. [12:46] Apparently it doesn't 🤔 [12:47] grondilu, I think you need to try and iterate over the same sequence twice [12:47] m: say .WHAT given my @list = (^10).map(*.Str.flip); for ^2 { .say for @list } [12:47] rakudo-moar 530e17848: OUTPUT: «(Array)␤0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤» [12:47] I only know that I regularly make these manipulations and never even heard of this eager thing. I know cache and this plain old List conversion [12:48] Hm. [12:48] Maybe some operations don't consume the Seq? [12:48] my example was initially with a constant, not sure that changes anything. [12:48] not quite [12:49] In that case, Nemokosch, how would you fix the code I linked above? [12:49] m: constant words = (1..100).fmt("foo%02x").words; say words[0] xx 2; [12:49] rakudo-moar 530e17848: OUTPUT: «(foo01 foo01)␤» [12:49] There's nothing sensitive in it; feel free to copy-paste [12:50] the @ sigil converts to positional [12:50] by default an Array iirc [12:50] so if you assign to @list, an Array will be constructed from the Seq [12:51] * grondilu still can't reproduce it. oh well [12:51] Thanks for trying, grondilu [12:52] by adding .List after .comb [12:53] ohhhhhhh [12:54] Was it the `$key.comb` that was being consumed? [12:54] did you expect something else? 😄 [12:54] `@translations` [12:54] I thought we were talking about it all along [12:55] TIL [12:55] For some reason, I thought `.comb` was eager and just left you with a new Seq each time [12:56] Never thought it was using the same iterator [12:56] oh no, as I said, @translations can't be consumed [12:56] it's an array by default [12:56] related thing that I don't really like: the separate concept of list assignment [12:56] so you thought it was _lazy_, right? [12:56] Other way around [12:57] no, it was evaluated at the assignment and that's it [12:57] Also, I didn't grok the implication of "oh no, as I said, @translations can't be consumed" [12:58] IIRC, you only said "the @ sigil converts to positional" [12:58] and I didn't pick up the implications from that whole thing [12:58] $key.comb is a function call [12:58] no call happens later on, you have that one Seq [12:58] what does that mean? [12:59] * RaycatWhoDat is waiting for discord-raku-bot [13:00] what further implications do you need? [13:01] No, no, I was saying that I misunderstood the implication that "@translations can't be consumed" when you mentioned that "the @ sigil converts to positional by default an Array iirc". Hence, my overall confusion but now I know. [13:02] anyway https://docs.raku.org/language/variables#index-entry-sigil_@ [13:03] Lol. [13:03] Thank you for answering, though. I appreciate it. [13:06] * grondilu looks up how to type emojis on linux [13:06] * grondilu sets up typing booster [13:07] th [13:07] thinking_ [13:08] do you have some shorthand for "ACTION" or do you just type it every single time? 😄 [13:10] * grondilu can now type emojis too 😁 [13:10] * grondilu still has to learn their names, though [13:18] in IRC, you can write "/me writes" to do an action [13:19] * lizmat agrees [13:23] 😄 [13:23] *** p6steve joined [13:25] *** morte_ joined [13:28] *** Guest35 joined [13:29] *** perlbot left [13:30] *** simcop2387 left [13:34] *** RaycatWhoDat left [13:35] *** discord-raku-bot left [13:36] *** discord-raku-bot joined [13:37] o/ [13:37] *** simcop2387 joined [13:38] *** perlbot joined [13:39] *** MitarashiDango[m joined [13:39] I want to transfer a module (perl6-WebService-Github) to the Raku org since it's switched maintainers twice already. I guess it makes sense to rename it as well. Is there any consensus of whether there should be a "raku-" prefix in module repo names? [13:39] perhaps it should be moved to raku-community-modules ? [13:40] Is there any thing else to do except renaming the repo and transfering ownership (both via the web interface)? [13:40] oh [13:40] right [13:40] update the ecosystem ? [13:41] that's obviously the right place (in contrast to the Raku org) [13:41] Yes, I also want to do a release. [13:41] (on zef) [13:41] *** frost left [13:41] you have a fez login ? [13:42] Modules in raku-community-modules are still uploaded as the author that does the release (me in this case), right? [13:42] Yes I do. Already did some releases. [13:43] ok, lemme send you an invite so you can release raku-community-modules to zef [13:43] what's your fez login ? [13:44] patrickb ? [13:45] yes [13:45] invite sent [13:52] Does raku not support generics? [13:54] it does: [13:54] m: role A[::T] { method foo(T:D) { dd } }; A[Int].foo(42) [13:54] rakudo-moar 530e17848: OUTPUT: «method foo(A[Int]: Int:D, *%_)␤» [13:54] m: role A[::T] { method foo(T:D) { dd } }; A[Str].foo(42) [13:54] rakudo-moar 530e17848: OUTPUT: «Type check failed in binding to parameter ''; expected Str but got Int (42)␤ in method foo at line 1␤ in block at line 1␤␤» [13:56] Is there any preference wrt repo name prefix "raku-" vs no prefix at all? [13:56] Did not find enough relevant information, it is best to have covariant and inverse content [13:57] Most in raku-community-modules don't have a prefix. I think I'll just go for "WebService::GitHub" then. [14:01] Repo move in progress. [14:22] *** londoed left [14:29] *** saint- joined [14:31] *** londoed joined [14:48] *** p6steve left [14:49] *** p6steve joined [14:54] *** Sgeo joined [14:54] *** p6steve left [14:55] *** p6steve joined [14:56] patrickb: I think the raku prefix only make sense if you the same lib for different languages on the same user root in github [14:56] *s [15:01] *** p6steve left [15:02] *** p6steve joined [15:07] *** p6steve left [15:08] *** londoed left [15:08] *** londoed_ joined [15:08] *** p6steve joined [15:13] *** p6steve left [15:14] *** p6steve joined [15:19] *** p6steve left [15:20] *** p6steve joined [15:25] *** p6steve left [15:26] *** p6steve joined [15:30] *** p6steve left [15:32] *** p6steve joined [15:36] *** p6steve left [15:38] *** p6steve joined [15:42] *** p6steve left [15:44] *** p6steve joined [15:45] <[Coke]> I've done it when there's a p5 original mine is based on, but it's not mandatory [15:48] *** p6steve left [15:49] *** p6steve joined [15:54] *** p6steve left [15:55] *** p6steve joined [16:36] *** swaggboi left [16:36] *** dakkar left [16:37] *** rir joined [16:38] ¦ doc: acfd787831 | rbt++ (committed using GitHub Web editor) | doc/Language/modules.pod6 [16:38] ¦ doc: Update modules.pod6 [16:38] ¦ doc: [16:38] ¦ doc: Change "perl" version in META6 to "raku" version. [16:38] ¦ doc: review: https://github.com/Raku/doc/commit/acfd787831 [16:38] ¦ doc: bc40322fd6 | (Will Coleda)++ (committed using GitHub Web editor) | doc/Language/modules.pod6 [16:38] ¦ doc: Merge pull request #4052 from rbt/patch-1 [16:38] ¦ doc: [16:38] Link: https://docs.raku.org/language/modules [16:38] ¦ doc: Update modules.pod6 [16:38] ¦ doc: review: https://github.com/Raku/doc/commit/bc40322fd6 [16:44] ¦ doc: a24a775967 | Coke++ | META6.json [16:44] ¦ doc: update perl to raku [16:44] ¦ doc: [16:44] ¦ doc: following best practice as described in #4052 [16:44] ¦ doc: review: https://github.com/Raku/doc/commit/a24a775967 [16:45] *** linkable6 left [16:47] *** linkable6 joined [16:49] *** rir left [16:50] *** swaggboi joined [16:54] *** abraxxa left [17:01] *** p6steve left [17:09] *** p6steve joined [17:13] *** p6steve left [17:15] *** guifa joined [17:22] *** timo left [17:27] *** p6steve joined [17:28] *** wingfold left [17:58] ¦ doc: JJ assigned to coke Issue Delete TODO file https://github.com/Raku/doc/issues/4055 [17:58] ¦ doc: JJ assigned to Altai-man Issue Delete TODO file https://github.com/Raku/doc/issues/4055 [17:59] *** grondilu left [18:07] *** reportable6 left [18:09] *** reportable6 joined [18:20] ¦ doc: 1a5a516bb9 | (JJ Merelo)++ | xt/links-not-links.t [18:20] ¦ doc: Adds new rule to exclude some lines [18:20] ¦ doc: [18:20] ¦ doc: Rules for finding URLs were heuristic, and this file had a couple of examples that put URLs in some markup. This closes #4053, eliminating also skip code. All tests pass now, including that file [18:20] ¦ doc: review: https://github.com/Raku/doc/commit/1a5a516bb9 [18:20] *** linkable6 left [18:21] *** linkable6 joined [18:22] *** Geth left [18:22] *** Geth joined [18:26] *** Geth left [18:26] *** Geth joined [18:47] ¦ doc: f6c1d0ece2 | Coke++ | TODO [18:47] ¦ doc: Remove file [18:47] ¦ doc: [18:47] ¦ doc: Closes #4055 [18:47] ¦ doc: review: https://github.com/Raku/doc/commit/f6c1d0ece2 [18:48] *** linkable6 left [18:51] *** linkable6 joined [19:17] *** grondilu joined [19:18] * grondilu finally managed to reproduce the error he was mentioning earlier : [19:18] m: constant words = (1..100).map: *.flip; say words.pick xx 2 [19:18] rakudo-moar 530e17848: OUTPUT: «The iterator of this Seq is already in use/consumed by another Seq (you␤might solve this by adding .cache on usages of the Seq, or by assigning␤the Seq into an array)␤ in block at line 1␤␤» [19:18] this is quite mysterious to me, but I guess I just don't understand Seq well [19:19] especially since : [19:19] m: constant words = (1..100); say words.pick xx 2 [19:19] rakudo-moar 530e17848: OUTPUT: «(70 71)␤» [19:19] why would that stop working if I add a map? [19:20] m: say .WHAT for ^10, (^10).map(* * 2) [19:20] rakudo-moar 530e17848: OUTPUT: «(Range)␤(Seq)␤» [19:20] well ok [19:21] *** morte_ left [19:23] *** saint- left [19:36] *** morte_ joined [20:01] grondilu: Assigning to an unsigiled constant means that you just want to directly store the Seq object itself in the constant, not the values that Seq would produce. [20:09] *** eseyman left [20:13] *** eseyman joined [20:28] m: constant @words = (1..100).map: *.flip; say @words.pick xx 2 [20:28] rakudo-moar 530e17848: OUTPUT: «(61 45)␤» [20:28] japhb: noted [20:29] *** grondilu left [20:46] Is there some straightforward way I could get a custom handle that I could both write to and read from? Basically a drop-in replacement for a handle like $*IN, except instead of getting its data from a file or STDIN, it could get them from a list or some other object in the program itself? [20:48] (If I’m getting this right, a handle does not have resources of its own, but is meant to provide access to the resources of something else; a file or a ‘stream’ by the docs. So I’m wondering if it can provide access to data I already have in the program.) [20:51] (Also, I haven’t used them much, but it feels like Supply would normally fulfill this role in Raku? Except that supplies have a different interface, and I’m wondering if I could get something that can be talked to exactly like a handle.) [21:02] Tirifto: not sure exactly what you mean by similar to a handle but https://raku.land/zef:tony-o/Event::Emitter might be relevant [21:06] *** morte_ left [21:10] tonyo, thank you; probably doesn’t fit this task, but I’ll have to look into it later! [21:11] I guess that by ‘similar to a handle’ I meant I could ‘put’ stuff there and ‘get’ stuff out. Though now when I think about it, I guess any custom class implementing these methods would do? It doesn’t feel robust, but I suppose it should work if that’s all I do with them. `o` [21:11] Tirifto: Mocking IO is often used in Tests. So, you might fine inspiration in a module meant for testing. [21:21] Well… this worked, so… yay for polymorphism! # class ToDo is Array { method get { self.shift } } [21:23] gfldex, I’ll look into that, too; thank you! [21:53] *** melezhik joined [21:53] . [21:53] 2022-04-21T10:47:03Z #raku melezhik I'll try to fix some Pg tests as soon as possible to test it, thanks! [21:53] .tell SmokeMachine - thanks [21:53] melezhik, I'll pass your message to SmokeMachine [22:53] *** evalable6 left [22:53] *** linkable6 left [22:54] *** evalable6 joined [22:55] *** linkable6 joined [22:59] *** lichtkind left [23:06] *** bdju left [23:08] *** bdju joined