🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). This channel is logged for the purpose of keeping a history about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | Log inspection is getting closer to beta. If you're a beginner, you can also check out the #raku-beginner channel!
Set by lizmat on 25 August 2021.
00:06 reportable6 left 00:07 reportable6 joined, jrjsmrtn left 00:08 dac left, jrjsmrtn joined, dcx joined, Kaiepi left, Kaipi joined 00:11 jargan joined 00:12 Voldenet left, bingos_ joined, gordonfish- joined 00:13 Maximus joined, Voldenet joined, sivoais left, dg left, Sevalecan left, Maximus is now known as Sevalecan, ingy left, a3r0 left, Ekho left, gordonfish left 00:14 gordonfish- is now known as gordonfish, jast left, Scotteh left, BinGOs left, bingos_ is now known as BinGOs 00:15 sivoais joined, a3r0 joined, BinGOs left, BinGOs joined 00:18 Scotteh joined, dg joined 00:25 Ekho joined 00:28 ingy joined 01:28 linkable6 left, evalable6 left, evalable6 joined 01:30 linkable6 joined 02:01 m_athias left 02:02 m_athias joined 02:03 jargan is now known as jast 02:09 silug2 joined, Geth left, silug left, silug2 is now known as silug 02:10 goblin left, ggoebel left, goblin joined, dutchie_ joined 02:11 dutchie left 02:23 ggoebel joined
elcaro bisectable6: gist.github.com/0racle/53101975f09...bfd4b6a96f 03:10
bisectable6 elcaro, Will bisect the whole range automagically because no endpoints were provided, hang tight
elcaro, It looks like a URL, but mime type is ‘text/html; charset=utf-8’ while I was expecting something with ‘text/plain’ or ‘perl’ in it. I can only understand raw links, sorry.
elcaro bisectable6: gist.githubusercontent.com/0racle/...15-07.raku
bisectable6 elcaro, Will bisect the whole range automagically because no endpoints were provided, hang tight
elcaro, Successfully fetched the code from the provided URL
elcaro, Output on all releases: gist.github.com/34ad99093f172a2036...6704d30629 03:11
elcaro, Successfully fetched the code from the provided URL
elcaro, Bisecting by output (old=2021.12 new=2022.02) because on both starting points the exit code is 0
elcaro, bisect log: gist.github.com/541e050efc4f0e4bdc...b65f67e457
elcaro, (2021-12-27) github.com/rakudo/rakudo/commit/91...08296a481d
elcaro, Output on all releases and bisected commits: gist.github.com/c8bcae75000f04a5c8...4edd863f64
03:21 euandreh left, euandreh joined 04:21 reportable6 left, nativecallable6 left, committable6 left, notable6 left, bloatable6 left, statisfiable6 left, greppable6 left, evalable6 left, sourceable6 left, linkable6 left, benchable6 left, bisectable6 left, quotable6 left, releasable6 left, coverable6 left, shareable6 left, unicodable6 left 04:22 bloatable6 joined, statisfiable6 joined, evalable6 joined, unicodable6 joined, sourceable6 joined, releasable6 joined 04:23 quotable6 joined, coverable6 joined, notable6 joined, bisectable6 joined 04:24 greppable6 joined, shareable6 joined, benchable6 joined, linkable6 joined, reportable6 joined, committable6 joined, nativecallable6 joined 04:46 xinming left 04:47 xinming joined 05:47 unicodable6 left, linkable6 left, benchable6 left, greppable6 left, reportable6 left, sourceable6 left, evalable6 left, bloatable6 left, statisfiable6 left, releasable6 left, committable6 left, nativecallable6 left, shareable6 left, quotable6 left, bisectable6 left, coverable6 left, notable6 left, quotable6 joined, coverable6 joined 05:48 notable6 joined, evalable6 joined, nativecallable6 joined, reportable6 joined, greppable6 joined, linkable6 joined, unicodable6 joined, statisfiable6 joined, bloatable6 joined 05:49 sourceable6 joined, shareable6 joined, releasable6 joined, committable6 joined, bisectable6 joined 05:50 benchable6 joined 06:07 reportable6 left 06:09 reportable6 joined 06:23 mexen joined 06:28 renormalist left, renormalist joined 06:33 epony left 07:13 xinming left 07:14 xinming joined, dutchie_ is now known as dutchie 07:32 jjido joined 07:44 Sgeo left 07:50 epony joined 08:01 abraxxa joined 08:05 abraxxa left 08:06 abraxxa joined 08:07 dakkar joined 09:01 jjido left 09:18 Geth joined 09:22 discord-raku-bot left 09:23 discord-raku-bot joined 09:25 RakuIRCLogger left, RakuIRCLogger joined 09:30 neither joined
lizmat clickbaits rakudoweekly.blog/2022/04/04/2022-...completer/ 09:45
Nemokosch > multi f(1 --> -1) {} 09:53
if this is a syntax error but with `1 --> 1` it isn't, how am I supposed to mark a negative return value?
09:54 lichtkind joined
lizmat that's an interesting one 09:57
it's purely a parsing issue
m: my constant minusone = -1; sub a(--> minusone) { }; dd a 09:58
camelia -1
lizmat if there isn't an issue for it yet, one should be made I think
Nemokosch yes, I used pretty much the same workaround 😄 10:00
I will check on it but first I want to get the overall thing working 10:02
okay, another interesting unexpected phenomenon 10:08
adding a type notation for a parameter messes up the dispatch order for multis 10:10
lizmat ? example? 10:23
10:30 neither left 10:31 Geth left, Geth joined
Nemokosch Hm, this has something to do with the type coercion as well... 10:39
Okay, I still don't really know how dispatching for constant values happens 10:45
it's not really smartmatching because f('0') doesn't actually get dispatched to f(0)
gist.github.com/2colours/999dc5b37...99430d6479 this works as intended 10:49
if I change the third multi clause to `multi möbius(Int() $n) {`, it takes priority at dispatching, hence breaks the outcome
10:50 neither joined
MasterDuke what if you put `is default` on the literal 1 multi? 10:51
Nemokosch won't help 10:55
not when the input is 5 😛
if the input is 1 then it works even without `is default` 10:56
lizmat m: sub a(0) { dd }; a 0 10:57
camelia sub a(0)
Nemokosch so yeah one could say the type notation takes priority over the value constraint
lizmat m: sub a("0") { dd }; a 0
camelia Type check failed in binding to parameter '<anon>'; expected Str but got Int (0)
in sub a at <tmp> line 1
in block <unit> at <tmp> line 1
lizmat m: say 0 eqv '0' 10:58
camelia False
Nemokosch Seems like IntStr can be dispatched to an integer constant since that's what I'm doing 10:59
lizmat m: say 0 ~~ <0> 11:00
camelia True
lizmat m: say <0> ~~ 0
camelia True
11:20 wingfold joined
tbrowder howdy. anyone know of a raku existing or wip module to work with couchdb? there seem to be several perl modules on cpan which could be a good start. 11:41
Nemokosch I'm gonna add a Rakudo issue for negative numeric literals as function return values 11:49
github.com/rakudo/rakudo/issues/4851 dang 11:57
Geth doc/patrickbkr-META6-provides: ab02675ad6 | (Patrick Böker)++ (committed using GitHub Web editor) | doc/Language/modules.pod6
Correct META6.json `provides` snippet

To use a module of the own distribution, it must be listed in the `provides` section, not the `depends` section.
doc: patrickbkr++ created pull request #4048:
Correct META6.json `provides` snippet
12:07 reportable6 left 12:09 reportable6 joined 12:24 ggoebel left 12:56 razetime joined 13:40 djerius joined 13:51 neither left
Geth doc/master: 4 commits pushed by Coke++ 14:22
14:24 Sgeo joined 14:38 Guest80 joined, Guest80 left 14:39 djerius left 14:41 djerius joined 14:42 jgaz joined 14:48 vrurg_ joined, vrurg left
CIAvash m: sub MAIN (:$a where !.defined || say 'value: ' ~ .raku) {} 14:59
camelia value: Bool::True
14:59 swaggboi left
CIAvash is this normal? 15:00
lizmat m: dd True.defined 15:03
camelia Bool::True
15:03 vrurg_ is now known as vrurg
lizmat m: dd !Any.defined || say "foo" 15:04
camelia Bool::True
lizmat m: sub MAIN (:$a where !*.defined || say 'value: ' ~ .raku) {} 15:05
camelia ( no output )
lizmat m: sub MAIN (:$a where { !.defined } || say 'value: ' ~ .raku) {}
camelia ( no output )
15:05 discord-raku-bot left
lizmat m: sub MAIN (:$a where { !.defined || say 'value: ' ~ .raku) } {} 15:05
camelia ===SORRY!=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> re { !.defined || say 'value: ' ~ .raku⏏) } {}
expecting any of:
statement end
statement modifier
15:05 discord-raku-bot joined 15:10 abraxxa left 15:11 abraxxa joined 15:12 swaggboi joined 15:17 razetime left 15:27 razetime joined 15:31 martinthewildpig joined 15:38 martinthewildpig left 15:40 djerius left 15:41 djerius joined, xinming left 15:42 xinming joined
Voldenet regarding `sub MAIN (:$a where !.defined || say 'value: ' ~ .raku) {}` 15:45
m: sub MAIN (:$a where Backtrace.new.Str.say) { }
camelia in block <unit> at <tmp> line 1

in block <unit> at <tmp> line 1

in sub MAIN at <tmp> line 1
in block <unit> at <tmp> line 1
Voldenet apparently refinee gets called more than once 15:46
15:52 jgaz left 15:53 jjido joined 16:16 perlbot left 16:17 simcop2387 left 16:22 simcop2387 joined, perlbot joined, coleman joined
coleman I see an edit I can make to raku.org raku.org/community/ 16:23
You say commit bits are handed out liberally
Can I get one?
Otherwise: mybf.io is defunct afaict 16:24
So I was going to remove that
lizmat could you do a PR? 16:25
that would be easiest... if that's the only change you wanna make :-) 16:26
coleman Comin' right up
16:30 p6steve_ left, p6steve left 16:31 p6steve_ joined, p6steve joined
Geth raku.org: dontlaugh++ created pull request #167:
Remove mybf.io from Community page
16:36 p6steve_ left, p6steve left, p6steve_ joined, p6steve joined 16:41 dakkar left 16:42 jjido left 16:43 p6steve_ left, p6steve left 16:50 kueppo joined
Geth raku.org: ef83e89f2e | (Coleman McFarland)++ (committed using GitHub Web editor) | source/community/index.html
Remove mybf.io from Community page (#167)

This website is offline and unmaintained, for now. Bring it back if it gets revived!
lizmat coleman++ 16:51
coleman thnx lizmat
16:51 jgaz joined 16:53 jgaz left
coleman I have a question about mi6; would that functionality ever be absorbed into zef? 16:53
lizmat I don't think so... 16:57
but never say never :-)
16:58 abraxxa left 17:05 coleman left, p6steve_ joined, p6steve joined 17:06 razetime left
gfldex m: say 'never' xx ∞; 17:08
camelia (...)
17:09 p6steve_ left, p6steve left 17:11 kueppo left 17:45 p6steve joined, p6steve_ joined 17:58 n1to joined 18:02 jjido joined 18:03 discord-raku-bot left, discord-raku-bot joined 18:04 Xplorator joined 18:06 wingfold left 18:07 reportable6 left 18:10 reportable6 joined 18:12 discord-raku-bot left, discord-raku-bot joined 18:37 sena_kun left
Geth doc: 3d05949933 | (Patrick Böker)++ (committed using GitHub Web editor) | doc/Language/modules.pod6
Correct META6.json `provides` snippet (#4048)

To use a module of the own distribution, it must be listed in the `provides` section, not the `depends` section.
linkable6 Link: docs.raku.org/language/modules
18:39 linkable6 left, sena_kun joined 18:40 linkable6 joined 18:44 morte_ joined 18:45 melezhik joined
melezhik . 18:45
if someone is interested to test out SparkyCI -  feel free - sparrowhub.io:2222/ , I've added GH authentication so users can add theirs Raku modules from GH 18:47
18:51 melezhik left 18:56 jjido left 19:00 MasterDuke left 19:01 jjido joined 19:04 sena_kun left 19:05 sena_kun joined 19:08 jjido left 19:14 euandreh_ joined 19:17 euandreh left 19:18 simcop2387 left, perlbot left 19:19 euandreh_ left 19:20 perlbot joined 19:21 MasterDuke joined 19:23 simcop2387 joined, euandreh joined 19:31 Altai-man joined 19:34 sena_kun left 19:43 swaggboi left 19:45 morte_ left 19:46 Altai-man left 19:55 swaggboi joined 20:08 monkey_ joined 20:10 melezhik joined
melezhik . 20:10
20:11 melezhik left 20:32 monkey_ left 20:33 sena_kun joined 20:35 monkey_ joined 20:55 guifa joined 21:07 melezhik joined
melezhik . 21:07
21:08 melezhik left
guifa o/ 21:10
Tirifto \o
Is there a way one can exit a block which is not a routine? Something like ‘return’ but for blocks? I’d like to have a condition for exiting early, and I’d like to avoid putting the block’s contents in a nested ‘if’ statement (or similar). 21:12
lizmat m: leave 21:16
camelia leave not yet implemented. Sorry.
in block <unit> at <tmp> line 1
lizmat Tirifto ^^ 21:17
it was thought of to have a "leave" statement
Nemokosch `when` can still help I guess?
lizmat but nobody so far has really seen the need for it, as wrapping something in a sub and using return will give you the same 21:18
21:20 discord-raku-bot left, discord-raku-bot joined
Tirifto lizmat: Ah, right, I accidentally ran into that error few days ago, but wasn’t sure what the intended purpose was. I guess prefixing with ‘sub’ might be the cleaner solution then. 21:20
21:21 epony left
lizmat indeed 21:21
guifa m: my $a = 5; NOT-LOOP: { last NOT-LOOP if $a < 10; say "nope" }; say "done"
camelia labeled last without loop construct
in block <unit> at <tmp> line 1
guifa meh, worth a shot
Tirifto @Nemokosch#9980: ‘when’ doesn’t exit in statement modifier form though, so you still have to nest another block, right? 21:22
21:24 euandreh left
Tirifto (Oh, actually it wouldn’t be the issue of the statement modifier but what might come before it. >_<) 21:26
21:26 lichtkind_ joined
moon-child well, you could say NOT-LOOP: for ^1 { ... }, giving effectively the same result 21:29
21:29 lichtkind left
moon-child and, following the abov,e you could say NOT-LOOP: for ^$condition { ... } 21:29
if $condition is false, the range will be empty and the loop will not be entered
Nemokosch I didn't understand it 21:38
my example was complete in the sense that I tried to give exactly equivalent one-liners
`when` causes the surrounding block to terminate if the condition is true. indeed it needs a block - but who said we have to put anything inside? 😉 21:39
actually I'm almost sure I've used this "pattern" before 21:40
21:49 monkey_ left, Xplorator left 21:51 n1to left 22:03 euandreh joined
Tirifto @Nemokosch#9980: Oh right, I could just invert the condition and use that! I guess a sub is more ‘proper’, but this would be pretty elegant, too. 22:04
Thank you all for pointing at the butterfly! :D
23:03 linkable6 left, evalable6 left 23:04 evalable6 joined 23:05 linkable6 joined, ggoebel joined 23:14 djerius left 23:16 djerius joined 23:22 jmcgnh left 23:25 lichtkind_ left 23:37 jmcgnh joined 23:42 mexen left, atweiden_air-- joined
atweiden_air-- is it possible to combine Signatures? 23:43
drakonis i'm thinking about implementing a stack machine in raku 23:54
it looks like it'd need TCO for that? 23:55
signature combination? 23:58
23:59 epony joined