🦋 Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). Log available at irclogs.raku.org/raku/live.html . If you're a beginner, you can also check out the #raku-beginner channel!
Set by lizmat on 6 September 2022.
El_Che .tell melezhik a possible usecase could be as a rakudo smoker? 08:35
tellable6 El_Che, I'll pass your message to melezhik
melezhik o/ 14:28
tellable6 2022-09-16T08:35:48Z #raku <El_Che> melezhik a possible usecase could be as a rakudo smoker?
melezhik .tell El_Che I will think about it, there is another build for fedora os - sparky.sparrowhub.io/report/rakudo-build/5410
tellable6 melezhik, I'll pass your message to El_Che
melezhik but I guess rakudo build process is more or less irrelevant to an underlying linux distribution ? well it be helpful to test rakudo installation for many linuxes, in the end of the day these are all the same build tools - gcc/make and friends, right ? 14:30
melezhik .tell El_Che I enabled color output for sparky builds - sparky.sparrowhub.io/report/rakudo-build/5449 17:44
tellable6 melezhik, I'll pass your message to El_Che
[Coke] anyone have a pointer on a clean way to optionally use a module? Previous attempts of mine can do the require optionally but then had trouble getting the default symbols imported. 18:24
ugexe use is compile time, so is that really what you want? 18:57
like you might not want to compile-time use e.g. IO::Socket::SSL optionally if i might get installed later 18:58
[Coke] yes, I don't mean literally use 19:04
Nemokosch Still working on my "magnum opus": the issue regarding the semantics (expectations, specs, actual behavior) of hyper meta-operators. And seems like I will barely cover deeply nested structures, literally just scratching the surface now haha 19:30
ugexe you can do like `try require ::("PathTools") qw<&ls>;` 19:38
but then using `ls(...)` when loading e.g. PathTools fails will error
Nemokosch github.com/Raku/problem-solving/issues/346 well this got huge, any feedback is welcome on how to make it more processable... 21:03
tbrowder [Coke]: i can't find it yet, but someone recently, maybe you, showed me a way that works for me. i'm away from my main host but will search. i assume by "default" exports you are using "is export" inside the module. 22:44
.tell [Coke] ^^^ 22:45
tellable6 tbrowder, I'll pass your message to [Coke]
Voldenet m: my $neighbors = (-1, -i, 1, i); my $p = 2 + 3i; say $neighbors >>>>+<<>> $p 23:17
camelia (1+3i 2+2i 3+3i 2+4i)
Voldenet m: my $neighbors = (-1, -i, 1, i); my $p = 2 + 3i; say $neighbors >>+>> $p 23:19
camelia (1+3i 2+2i 3+3i 2+4i)
Voldenet m: say 2 >>+<< 3 23:20
camelia 5
Voldenet Nemokosch: regarding the %a >>+>> %b syntax, it's not intersection, it's `set difference` op, no idea why `intersection` and `union` are used in docs but not the `set difference` 23:28
tellable6 Voldenet, I'll pass your message to Nemokosch
Voldenet ah, that's because it's a different operation 23:32
it's a union without the unique keys from the other set 23:34
m: my %a = :4both, :only-a; my %b = :8both, :only-b; say %a >>+>> %b; say %a <<+<< %b;
camelia {both => 12, only-a => 1}
{both => 12, only-b => 1}
Nemokosch a union without the unique keys from the other set in other words... is the set itself 😄 23:41
I mean, the set of keys is the same for the output and the open end of the hyper 23:42
and this is what I expected, based on lists, and unlike the two other configurations 23:43
Voldenet right, it's the set itself, silly me :D 23:47
So, `intersection of keys including keys from %outer` 23:57