00:02 arkiuat left 00:15 arkiuat joined 00:25 arkiuat left 00:36 arkiuat joined 00:41 arkiuat left 00:45 arkiuat joined 00:50 arkiuat left 01:04 arkiuat joined 01:08 sibl joined 01:09 arkiuat left 01:14 arkiuat joined 01:19 melezhik_ joined 01:21 melezhik_ left 01:26 mehbark joined, mehbark left, mehbark joined 01:30 arkiuat left 01:33 melezhik_ joined 01:36 arkiuat joined 01:38 melezhik_ left 01:59 librasteve_ left 02:23 Aedil left 02:55 hulk joined 02:56 kylese left 03:15 hulk left, kylese joined 03:28 sibl left 03:33 melezhik_ joined 03:35 melezhik_ left 04:06 melezhik_ joined 04:10 melezhik_ left 04:34 melezhik_ joined 04:36 melezhik_ left 05:51 Aedil joined 06:15 arkiuat left 06:28 arkiuat joined 06:33 arkiuat left 06:44 arkiuat joined 06:49 arkiuat left 06:54 Sgeo left
disbot6 <jubilatious1_98524> @Voldenet I don't see how you can .andthen anything because andthen creates a local $_ , which is useful when you're juggling two variables. 07:13
<jubilatious1_98524> m: my $a = "cat"; my $b = 3; $a.chars eq $b andthen say "$a is $b characters is $_"; 07:15
<jubilatious1_98524> raku -e 'my $a = "cat"; my $b = 3; $a.chars eq $b andthen say "$a is $b characters is $_";' cat is 3 characters is True 07:17
07:18 arkiuat joined 07:25 arkiuat left 07:36 melezhik_ joined 07:42 melezhik_ left, melezhik_ joined 07:46 melezhik_ left 07:56 arkiuat joined 08:01 arkiuat left 08:31 arkiuat joined 08:36 arkiuat left 08:55 dakkar joined 08:57 arkiuat joined 09:02 arkiuat left 09:13 melezhik_ joined 09:16 arkiuat joined 09:20 melezhik_ left 09:21 arkiuat left 09:23 melezhik_ joined 09:33 arkiuat joined 09:38 arkiuat left 09:42 melezhik_ left 09:46 melezhik_ joined 09:50 arkiuat joined 09:52 melezhik_ left 09:54 arkiuat left 09:58 arkiuat joined 10:03 arkiuat left
disbot6 <rcmlz> weekly: glot.io/snippets/hdjxplylcc 10:05
10:10 librasteve_ joined
librasteve_ weekly: glot.io/snippets/hdjxplylcc 10:10
notable6 librasteve_, Noted! (weekly)
10:15 arkiuat joined 10:19 arkiuat left 10:32 lichtkind joined, arkiuat joined 10:36 arkiuat left 10:48 arkiuat joined 10:52 arkiuat left 11:17 arkiuat joined 11:22 arkiuat left 11:35 arkiuat joined 11:39 arkiuat left 11:59 melezhik_ joined 12:00 arkiuat joined 12:04 arkiuat left 12:08 melezhik_ left 12:20 arkiuat joined 12:25 arkiuat left 12:37 arkiuat joined 12:42 arkiuat left 12:56 arkiuat joined 13:00 melezhik_ joined 13:13 melezhik_ left, melezhik_ joined
disbot6 <antononcube> @rcmlz I didn't know skip... 13:15
13:25 melezhik_ left, melezhik_ joined 13:43 melezhik_ left, melezhik_ joined
Geth raku-mode: frou++ created pull request #63:
Fix repo URL in Emacs package metadata
13:46
13:50 melezhik_ left, melezhik_ joined
lizmat m: dd <a b c>.skip 13:52
camelia ("b", "c").Seq
lizmat m: dd Any.skip
camelia ().Seq
lizmat on a non-iterable value, it just creates an empty Seq antononcube
fwiw, I would have written adjacent-difference as: self Z- self.skip 14:00
or: $_ Z- .skip with self 14:01
or: $_ Z- .skip given self
but yeah: .skip is an easy way to skip the first element of an Iterable 14:02
disbot6 <rcmlz> I was watching www.youtube.com/watch?v=LvFTyvYM-ds and wondering how I could use the tricks shown such that I can re-use it easily, because I keep forgetting all the nifty tricks quite quickly 14:09
<rcmlz> Collecting them in a Role seemed a valid option … 14:10
<rcmlz> and looks much better when used in a chained method call on the array compared to .&{} 14:13
14:14 leah2 left 14:17 melezhik_ left, leah2 joined, melezhik_ joined 14:29 Guest35 joined, Guest35 left 14:31 Guest35 joined 14:33 Guest35 left
disbot6 <antononcube> @rcmlz Did Daniel share the slides used in that presentation? 14:43
librasteve_ weekly: www.youtube.com/watch?v=LvFTyvYM-ds 14:44
notable6 librasteve_, Noted! (weekly)
14:47 melezhik_ left, melezhik_ joined 14:56 melezhik_ left, melezhik_ joined
patrickb librasteve_: that video is 4 years old 14:57
14:58 human-blip left 15:00 human-blip joined
disbot6 <librasteve> tx for the heads up ... I am going to check for any nice tips an tricks! 15:01
15:04 melezhik_ left, melezhik_ joined 15:06 arkiuat left
Voldenet jubilatious1_98524: we were talking about new promises api, not andthen operator 15:14
15:19 arkiuat joined
disbot6 <librasteve> hi, I am wrestling with a Cro route - have this gist.github.com/librasteve/870ce7d...7943e0c826 in a route block but it only works when my list of @redirects has one elem ... I suspect that this is due to me overloading the same signature ... if I had literals in the get signature, then would work fine ... is there a practicak way to do this? 15:19
<librasteve> sorry - back in 40 mins
15:24 melezhik_ left, melezhik_ joined 15:30 arkiuat left 15:32 melezhik_ left 15:45 arkiuat joined
Voldenet librasteve: no need to complicate it: `get -> $old, *@drop { redirect $new }` would work 15:51
nevermind 15:53
it doesn't work
15:54 arkiuat left
ab5tract does using a named subset change anything? 15:56
ah, but that's not simple to with @redirects
15:58 arkiuat joined
Voldenet I got fooled by it appearing to work, but the redirect was totally wrong 16:00
ab5tract what if the redirects are stored in a hash and looked up via $old ? 16:01
I guess the issue is that the signature is too ambiguous 16:02
so that wouldn't help much 16:03
Voldenet well `before { %redirects{.path} andthen redirect $_ }` is an option I think 16:10
disbot6 <librasteve> Voldenet: thanks … yes i have been fooled a couple of time seems that the route{} block is unhappy with many similar signatures … one time i had two routes working but they both redirect to the first value of $new 16:35
<librasteve> i don’t quite understand your before idea … can you maybe do a bigger example? 16:36
Voldenet > my %redirects = ['/community' => '/nav/1/community', …]; my $application = route { before { %redirects{.path} andthen redirect $_ }; … 16:39
downside is that it'd execute all matching middlewares later I think 16:40
other option
> delegate "$old" => route { get -> { say "$old $new"; redirect $new } };
it does sub-routing for the path 16:41
I'm not sure which of these is better option 16:43
I wish you could do `get -> "/$old"` but obviously that won't work trivially, some ast/eval magic would need to be there 16:44
disbot6 <librasteve> is delegate documented anywhere? I havent got a clue what is it doing but it seems to do the trick 16:46
<librasteve> oh I found it cro.raku.org/docs/reference/cro-ht...:Transform 16:49
16:51 melezhik joined
disbot6 <librasteve> omg that's a cool trick! 16:52
17:50 dakkar left 18:03 melezhik_ joined 18:07 melezhik_ left
Voldenet btw, route is quite wasteful Cro::Transform, because it always does routing underneath (checks path-matcher etc.) 18:49
so actual delegate can use somewhat easier code for redirects, that doesn't check anything and always returns redirect 0x0.st/KyYe.raku 18:53
18:59 melezhik_ joined
tonyo . 19:05
19:27 melezhik_ left, melezhik_ joined 19:32 melezhik_ left, melezhik_ joined 19:40 max__ joined 19:41 max__ left 19:42 max__ joined 19:43 max__ left 19:45 max__ joined 19:48 melezhik_ left 19:49 melezhik_ joined 19:52 max__ is now known as dasdsaddas 19:53 dasdsaddas left, dasdsaddas joined 19:56 librasteve_ left, maskd left, maskd joined 19:58 melezhik_ left 19:59 melezhik_ joined
disbot6 <aruniecrisps> Is there a commonly used UUID library? 20:00
20:05 melezhik_ left, melezhik_ joined 20:06 arkiuat left
[Coke] raku.land/?q=UUID 20:13
UUID::V4 looks best? 20:14
20:16 silug joined
[Coke] s/?// 20:17
20:17 arkiuat joined 20:22 arkiuat left 20:29 dasdsaddas left 20:42 melezhik_ left, melezhik_ joined 20:46 rir joined, rir left 20:47 rir joined 20:50 arkiuat joined 20:51 rir left 20:55 arkiuat left 21:08 melezhik_ left 21:09 melezhik_ joined 21:15 melezhik_ left, melezhik_ joined
Voldenet no uuid lib is great though, they get higher collision chance over time 21:20
21:21 Aedil left 21:23 arkiuat joined
Voldenet uuid should not be entirely random, because this requires very high quality randomness 21:23
usual algorithms use randomness, but also include timestamp as part of guid 21:24
there are things like uuidd (which is a daemon app for generating guids) or libuuid (which uses high-quality randomness or if it's not present uses timestamp, mac address and some low-quality randomness) 21:27
21:28 arkiuat left
Voldenet other approaches use md5(as many unique things as possible) 21:34
huh there's even rfc with it datatracker.ietf.org/doc/html/rfc4122
21:39 human-blip left 21:41 human-blip joined, arkiuat joined 21:46 arkiuat left 21:48 arkiuat joined 21:50 melezhik_ left 21:53 arkiuat left 22:03 arkiuat joined 22:15 human-blip left 22:17 human-blip joined 22:46 melezhik_ joined, melezhik_ left 23:22 Sgeo joined 23:46 melezhik left 23:47 melezhik_ joined 23:49 melezhik_ left