[00:02] I realized why .= is such a tough case, by the way [00:04] it is not really just another shortcut assignment operator, even though it looks like one [00:04] it mostly has method call semantics [00:04] the docs don't imply it's a methodoperator but it definitely behaves like . operators [00:04] the . part dominates the = part [00:05] for example, .= acting on the topic operator cannot be explained from the shortcut assignment nature, only from the method call nature [00:05] and the precedence is also like that [00:06] *** irc_user joined [00:07] *** reportable6 left [00:09] *** reportable6 joined [00:23] *** [Coke]_ joined [00:23] *** [Coke] left [00:34] *** [Coke] joined [00:35] *** [Coke]_ left [01:02] *** jetchisel joined [01:10] *** Colere left [01:11] *** Colere joined [01:13] *** Furor joined [01:16] *** Colere left [02:15] *** irc_user left [02:16] *** irc_user joined [02:19] *** cbk joined [02:34] .= is a method operator. It's the method op . with the metaop = The catch is just that (right now) that IIRC it needs to be special cased in the compiler [02:38] *** MasterDuke joined [02:56] *** frost joined [02:57] *** [Coke]_ joined [02:58] *** cbk left [02:59] *** cbk joined [02:59] *** [Coke] left [02:59] *** cbk left [03:23] *** bigdata joined [03:35] *** epony left [03:38] *** epony joined [03:39] *** [Coke]_ left [03:41] *** [Coke] joined [03:49] *** [Coke]_ joined [03:51] *** [Coke] left [04:00] *** Heptite left [04:16] *** frost left [04:55] *** discord-raku-bot left [04:55] *** discord-raku-bot joined [05:35] *** irc_user left [06:04] *** bigdata left [06:07] *** reportable6 left [06:08] *** reportable6 joined [06:13] *** [Coke]_ left [06:15] *** abraxxa joined [06:16] *** [Coke] joined [06:21] *** abraxxa left [06:21] *** abraxxa joined [06:53] *** [Coke] left [06:56] *** [Coke] joined [07:00] *** Sgeo left [07:04] *** [Coke]_ joined [07:06] *** [Coke] left [07:47] *** lichtkind joined [07:48] *** dakkar joined [08:03] *** sena_kun joined [08:41] so yeah... here it seems like yet another X= operator https://docs.raku.org/routine/.= [08:47] Here it's noted as a methodop https://docs.raku.org/language/operators#methodop_.= [08:48] *** ProperN[out] joined [08:48] *** ProperNoun left [08:53] It's a problem, because method calls don't need () [08:54] m: sub infix:<.&>($t, &call) { call($t) }; sub x { "x$^a" }; my $p = "hi"; $p .&= &x ; say $p [08:54] rakudo-moar 2070ceebb: OUTPUT: «xhi␤» [08:54] (the .&= operator doesn't exist) [08:54] and the &x looks like an ugly syntax thanks to that [08:59] m: sub x($self is rw) { $self = 42; }; my $r = 21; $r.&x; dd $r [08:59] rakudo-moar 2070ceebb: OUTPUT: «Int $r = 42␤» [09:00] the .& is the source of my endless sadness, btw [09:00] m: sub x($self is rw) { $self = 42; }; my $r = 21; $r .& x; dd $r [09:00] rakudo-moar 2070ceebb: OUTPUT: «===SORRY!=== Error while compiling ␤Malformed postfix call (only basic method calls that exclusively use a dot can be detached)␤at :1␤------> s rw) { $self = 42; }; my $r = 21; $r .⏏& x; dd $r␤» [09:00] m: sub x($self is rw) { $self = 42; }; my $r = 21; $r .&x; dd $r [09:00] rakudo-moar 2070ceebb: OUTPUT: «===SORRY!=== Error while compiling ␤Malformed postfix call (only basic method calls that exclusively use a dot can be detached)␤at :1␤------> s rw) { $self = 42; }; my $r = 21; $r .⏏&x; dd $r␤» [09:01] since it doesn't work like a normal operator, it doesn't like any whitespace [09:02] m: sub x($self is rw) { $self = 42; }; my $r = 21; $r\ .&x; dd $r [09:02] rakudo-moar 2070ceebb: OUTPUT: «Int $r = 42␤» [09:03] m: sub x($self is rw) { $self = 42; }; my $r = 21; $r\ .&\ x; dd $r [09:03] rakudo-moar 2070ceebb: OUTPUT: «===SORRY!=== Error while compiling ␤Missing required term after infix␤at :1␤------> { $self = 42; }; my $r = 21; $r\ .&\ x⏏; dd $r␤ expecting any of:␤ prefix␤ term␤» [09:03] m: class XXX { method hi() { "hi".say; } }; my $x = XXX.new; $x. hi; # didn't realize this didn't need un-whitespaced [09:03] rakudo-moar 2070ceebb: OUTPUT: «hi␤» [09:03] that does seem a bit inconsistent [09:03] it gets especially hairy when your method calls are obnoxiously long [09:04] because of nested lambdas and so on [09:04] I'm betting that rakuast will be able to rewrite those easily [09:05] *** smol-hors joined [09:13] you could just hop on the tuxic slang and make that work ^ [09:13] hmmm... the tuxic slang is hairy enough as it is... :-) [09:14] m: sub x($self is rw) { $self = 42; }; my $r = 21; $r.: x; dd $r [09:14] rakudo-moar 2070ceebb: OUTPUT: «===SORRY!=== Error while compiling ␤Malformed postfix call␤at :1␤------> s rw) { $self = 42; }; my $r = 21; $r.:⏏ x; dd $r␤» [09:14] tonyo: I seem to be missing context on " looks like no extra processing is done on $thisname in that method - i'm basically just trying to inject some data into the `use` statement as a shortcut" [09:15] i'm messing around with the do_pramga_or_load_module [09:15] aah... ok [09:15] wow, that's been a while :-) [09:16] eight years for most of it [09:19] Looks like it is only there to handle -M command line argument ? [09:19] in what looks like a bad hack to me now, really :-) [09:21] *** frost joined [09:24] I got disturbed and didn't follow [09:24] Oh yeah, what I wanted to say is... [09:26] I don't know what the implications (of .= being a methodop) are on the user's end, but I think it's a source of confusion that it's advertised as [something=] kind of operator when it's in fact rather a [.something] kind of operator [09:27] fwiw, it took Juerd a long time to convince TimToady for that feature :-) [09:28] its current precedence and syntactic position makes it seem more like a "mutating method call" than "infix dot applied in an assignment shortcut" [09:28] *** [Coke]_ left [09:30] I hope I'm making sense [09:30] *** [Coke] joined [09:32] lizmat: it's used in the `` grammar as well [09:32] yeah, but without the additional $thisname argument [09:32] is what I meant to say :-) [09:33] ah [09:40] I totally get the point about mutating method call, but in fact it _can_ be mutating without that extra bit [09:45] yes yes, sure thing [09:45] it's just that the dot is the fixed part of this "operator cluster", not the = [09:45] it could be .! or something [09:46] the thing I don't fancy about immutability is that methods `$obj.do-mutation` and `$obj .= with-mutation` can't be marked mutable/immutable anyhow [09:47] because it's not really like $a = $a.method [09:47] well the latter does mutate, no matter what [09:48] the former also could, that we don't know [09:49] *** guifa left [09:50] imo the `$a .= b` should be equivalent to `$a = $a.b` [09:54] What about `$a .= b.c`? [09:54] `$a = $a.b.c` [09:54] *** frost left [09:55] imo it gets a lot easier to reason about when it works like that [09:57] The only exception I could see is the ()-form call, so `$a .= &b(1, *, 3)` would become `$a = b(1, $a, 3)` but honestly I'm not sure if that's practical [10:00] especially that there'd be multiple ways to achieve that without fancy syntax [10:01] Then yeah no, doesn't work that way [10:02] sure it doesn't [10:03] But also, last time tonyo pointed out that .= method can work on the topic variable [10:04] That capability also comes from the dot, against the nature of a regular infix [10:05] wait what [10:06] m: $_ = 42; .= msb; .say [10:06] rakudo-moar 2070ceebb: OUTPUT: «===SORRY!=== Error while compiling ␤Preceding context expects a term, but found infix .= instead.␤at :1␤------> $_ = 42; .=⏏ msb; .say␤» [10:06] m: $_ = 42; .=msb; .say [10:06] rakudo-moar 2070ceebb: OUTPUT: «5␤» [10:06] …huh [10:07] *** [Coke] left [10:07] cool and spooky [10:07] I know right? 😄 I mean I kinda like this, in isolation, but would expect it to fail if .= is a shortcut assignment [10:09] *** [Coke] joined [10:10] hi [10:10] 2022-09-15T15:05:15Z #raku El_Che I have freed up memory on VM, the link should be accessible now - https://sparrowhub.io:4000/report/rakudo-build/5367 [10:10] 2022-09-15T21:00:45Z #raku El_Che the should work - https://sparky.sparrowhub.io/report/rakudo-build/5367 [10:10] 2022-09-16T14:28:55Z #raku El_Che I will think about it, there is another build for fedora os - https://sparky.sparrowhub.io/report/rakudo-build/5410 [10:10] 2022-09-16T17:44:38Z #raku El_Che I enabled color output for sparky builds - https://sparky.sparrowhub.io/report/rakudo-build/5449 [10:10] lizmat: ping [10:10] pong [10:10] just checking [10:10] it's like people pingen google.com in a test [10:11] hehe [10:11] (but with caring on how you are doing :) ) [10:11] you could at least print round trip time and package loss, El_Che :D [10:11] :-) [10:11] she's almost local in my case :) [10:11] yeah, only 120km or so :-) [10:12] it's been far too long that I've been local there... :-) [10:12] *** razetime joined [10:12] moritz: indeed [10:14] Moritz also showed up, hello, just in time for my joke [10:14] Nemokosch: Though no lvalue seems like a special case of `.=` (that turns the first operand into $_), similar to how `- 42` can be special case of `0 - 42` [10:14] Voldenet, I'll pass your message to Nemokosch [10:14] I have the feeling that the Raku grammar is complex... however [10:14] The Raku grammar of the Raku grammar, is probably even more complex [10:15] it's not that complex, it's only one file… :D [10:15] that's not quite true [10:16] it inherits from the NQP grammar (or mixes in some roles? or so) [10:18] *** [Coke]_ joined [10:20] *** [Coke] left [10:20] jokes aside, it's most sane that there's a difference between `.= a .= b and .= a.b` but I'm not sure if that's useful in practice [10:27] *** frost joined [10:35] especially when most things don't mix mutable/immutable apis [10:47] Let me alter your statement [10:47] "It's most sane that there's a difference between `+= a += b` and `+= a + b` [10:48] How do we feel about this? [10:48] `+ b` has no mutable side effects [10:48] that's why it's nonsense [10:50] but `.=a.b` can make sense when .b is side-effect and .a creates a copy [10:52] m: my $a = [1, 2, 3]; my $b = $a; $b.=clone.pop.say; ($a, $b).say [10:52] rakudo-moar 2070ceebb: OUTPUT: «3␤([1 2 3] [1 2])␤» [10:54] + b could also have mutable side-effects though, it's a mere convention that it doesn't [10:54] Right, it _has_ side-effects [10:55] can set cpu flags [10:57] Nemokosch: by that notion, *anything* in Raku can have side effects, even just accessing a variable's value if it has a Proxy in which the FETCH does a counter increment [10:57] lizmat, I'll pass your message to Nemokosch [10:58] so the remark that + b can have side-effects, is really kicking in an open door [10:58] *** frost left [11:02] Yes, and I wanted to draw attention to something else anyway. I don't think - partially because of what you are pointing out - that the mutating/non-mutating approach is good here [11:03] I wanted to point out that chaining "shortcut assignments" is conceptually bizarre [11:04] Raku sometimes throws warnings about things that work but "you probably don't want". Now, I think `x op= y op= z` is a candidate for that [11:05] Regardless whether op tends to mutate or not [11:07] chaining of =, albeit niche, can be useful with custom containers [11:08] i've depended on it once [11:08] just adding more operations on top narrows that further [11:10] I think for these discussions, we badly need to decide on certain presumptions. Like here: do we consider .= "the always-mutating dot" - or do we consider it "the short-hand assignment with dot as the infix"? [11:10] it's an assignment of the return value of a method call, down to the grammar level [11:11] m: my $a := 42; $a .= Str [11:11] rakudo-moar 2070ceebb: OUTPUT: «Cannot modify an immutable Int (42)␤ in block at line 1␤␤» [11:11] clearly it is an assignment [11:14] If it is an assignment, I think it should behave just like +=. With that precedence and failing in prefix position [11:14] m: $_ := 42; .= Str [11:14] rakudo-moar 2070ceebb: OUTPUT: «===SORRY!=== Error while compiling ␤Preceding context expects a term, but found infix .= instead.␤at :1␤------> $_ := 42; .=⏏ Str␤» [11:15] m: $_ = 42; .= Str [11:15] rakudo-moar 2070ceebb: OUTPUT: «===SORRY!=== Error while compiling ␤Preceding context expects a term, but found infix .= instead.␤at :1␤------> $_ = 42; .=⏏ Str␤» [11:15] seems to me it does ? [11:17] m: $_ = 42; .=Str [11:17] rakudo-moar 2070ceebb: ( no output ) [11:17] don't even ask why [11:18] Oh right, it was whitespace-sensitivr [11:18] m: $_ = 42; .=Str; dd $_ # duh :-) [11:18] rakudo-moar 2070ceebb: OUTPUT: «Str $_ = "42"␤» [11:19] this feature works when doing data traversal: my $name = $current.=sender.=as-person.name; [11:19] it definitely looks weird though [11:20] Again, I don't mind that it does something, but I suppose your average op= wouldn't work in prefix position 😛 [11:22] m: class Fun { has $.s = (); method FALLBACK($v) { self.new: s => (|$!s, $v) }; method presents { say "I am {self} now" }; method Str { $!s.join(" ") }}; my Fun $a .= new; $a.=ministry.=of.=silly.=apis.presents; [11:22] rakudo-moar 2070ceebb: OUTPUT: «I am ministry of silly apis now␤» [11:25] m: $_ = 42; say .++; .say [11:25] rakudo-moar 2070ceebb: OUTPUT: «42␤43␤» [11:26] still, I think TimToady thought it would be too magic if += 42 in a prefix position would apply to $_ [11:27] now, anything starting with a . in a prefix position is more natural, as that is widely used [11:34] yes, I think that's "defendable" or how to put it [11:35] I can take the argument that operators starting with the dot have this widely used "magic behavior" [11:36] *** Furor is now known as Colere [11:36] *** lichtkind_ joined [11:38] *** Kaipei joined [11:39] *** tellable6 left [11:39] *** tib left [11:40] *** squashable6 left [11:40] *** rypervenche left [11:41] *** goblin left [11:42] *** tellable6 joined [11:43] *** linkable6 left [11:43] *** committable6 left [11:43] *** bloatable6 left [11:43] *** notable6 left [11:43] *** sourceable6 left [11:43] *** committable6 joined [11:43] *** statisfiable6 left [11:43] *** ecocode left [11:44] *** notable6 joined [11:44] *** ecocode joined [11:44] *** releasable6 left [11:46] *** [Coke]_ left [11:46] *** lichtkind left [11:46] *** reportable6 left [11:46] *** Tirifto left [11:46] *** unicodable6 left [11:46] *** nativecallable6 left [11:46] *** quotable6 left [11:46] *** greppable6 left [11:46] *** bisectable6 left [11:46] *** cnx left [11:46] *** Kaiepi left [11:46] *** perlmaros left [11:46] *** shareable6 left [11:48] *** rypervenche joined [11:49] *** notable6 left [11:49] *** ecocode left [11:50] *** ecocode joined [11:51] *** razetime left [11:51] *** ProperN[out] left [11:52] *** discord-raku-bot left [11:52] *** MasterDuke left [11:52] *** swaggboi left [11:52] *** japhb left [11:52] *** bdju left [11:52] *** avar left [11:52] *** djerius left [11:52] *** hexology left [11:52] *** peder left [11:52] *** bartolin_ left [11:52] *** tinita left [11:52] *** GreaseMonkey left [11:52] *** sftp left [11:52] *** mykhal left [11:52] *** BinGOs left [11:52] *** Grrrr left [11:52] *** camelia left [11:52] *** skaji left [11:52] *** leont left [11:52] *** gordonfish left [11:52] *** KotH left [11:52] *** nicole left [11:52] *** thowe_ left [11:52] *** zostay left [11:52] *** aqua2 left [11:52] *** Altreus left [11:52] *** rjbs left [11:52] *** kawaii_ left [11:52] *** charsbar left [11:52] *** leedo_ left [11:52] *** jcallen left [11:52] *** Ekho left [11:52] *** Maylay left [11:52] *** TieUpYourCamel left [11:52] *** human_blip left [11:52] *** Zero_Dogg left [11:52] *** mtj left [11:52] *** kjp left [11:52] *** coleman left [11:52] *** samcv left [11:52] *** kybr left [11:52] *** a3r0 left [11:52] *** gfldex left [11:52] *** jmcgnh left [11:52] *** tailgate left [11:52] *** leah2 left [11:52] *** goblin joined [11:53] *** Maylay joined [11:54] *** perlmaros_ joined [11:54] *** tib_ joined [11:54] *** razetime joined [11:54] *** ProperN[out] joined [11:54] *** discord-raku-bot joined [11:54] *** MasterDuke joined [11:54] *** TieUpYourCamel joined [11:54] *** human_blip joined [11:54] *** Zero_Dogg joined [11:54] *** swaggboi joined [11:54] *** japhb joined [11:54] *** bdju joined [11:54] *** avar joined [11:54] *** mtj joined [11:54] *** djerius joined [11:54] *** kjp joined [11:54] *** coleman joined [11:54] *** Ekho joined [11:54] *** jcallen joined [11:54] *** leedo_ joined [11:54] *** charsbar joined [11:54] *** kawaii_ joined [11:54] *** rjbs joined [11:54] *** Altreus joined [11:54] *** aqua2 joined [11:54] *** zostay joined [11:54] *** thowe_ joined [11:54] *** nicole joined [11:54] *** KotH joined [11:54] *** gordonfish joined [11:54] *** skaji joined [11:54] *** leont joined [11:54] *** camelia joined [11:54] *** BinGOs joined [11:54] *** mykhal joined [11:54] *** sftp joined [11:54] *** Grrrr joined [11:54] *** GreaseMonkey joined [11:54] *** tinita joined [11:54] *** bartolin_ joined [11:54] *** peder joined [11:54] *** hexology joined [11:54] *** samcv joined [11:54] *** kybr joined [11:54] *** leah2 joined [11:54] *** tailgate joined [11:54] *** jmcgnh joined [11:54] *** gfldex joined [11:54] *** a3r0 joined [11:54] *** jmcgnh left [11:54] *** rypervenche left [11:54] *** linkable6_ joined [11:54] *** [Coke]_ joined [11:54] *** reportable6 joined [11:54] *** Tirifto joined [11:54] *** unicodable6 joined [11:54] *** nativecallable6 joined [11:54] *** quotable6 joined [11:54] *** greppable6 joined [11:54] *** bisectable6 joined [11:54] *** cnx joined [11:54] *** rypervenche joined [11:55] *** perlmaros_ left [11:55] *** tib_ left [11:55] *** razetime left [11:55] *** ProperN[out] left [11:55] *** discord-raku-bot left [11:55] *** MasterDuke left [11:55] *** swaggboi left [11:55] *** japhb left [11:55] *** bdju left [11:55] *** avar left [11:55] *** djerius left [11:58] *** tadzik left [11:58] *** CIAvash left [11:58] *** crystalfrost[m] left [11:58] *** AlexDaniel left [11:59] *** MitarashiDango[m left [11:59] *** Matthew|m left [12:00] *** perlmaros joined [12:00] *** tib joined [12:00] *** razetime joined [12:00] *** ProperN[out] joined [12:00] *** discord-raku-bot joined [12:00] *** MasterDuke joined [12:00] *** swaggboi joined [12:00] *** japhb joined [12:00] *** bdju joined [12:00] *** avar joined [12:00] *** djerius joined [12:03] *** jmcgnh joined [12:07] *** reportable6 left [12:10] *** reportable6 joined [12:14] *** Matthew|m joined [12:14] *** tadzik joined [12:15] *** MitarashiDango[m joined [12:18] *** AlexDaniel joined [12:18] *** CIAvash joined [12:23] *** crystalfrost[m] joined [12:35] lizmat: re(https://irclogs.raku.org/raku/2022-09-15.html#21:49) - do you recall what module it was? or, if you're around, can we do that right now and i can watch the log? [12:37] https://irclogs.raku.org/raku/2022-08-27.html#10:25 [12:38] also: https://irclogs.raku.org/raku/2022-08-26.html#22:38 [12:38] the module was rak, version 0.0.14 [12:38] https://raku.land/zef:lizmat/rak does not list version 0.14 [12:41] *** shareable6 joined [12:41] *** releasable6 joined [12:42] *** statisfiable6 joined [12:42] *** squashable6 joined [12:44] *** [Coke]_ left [12:46] *** [Coke] joined [12:46] *** notable6 joined [12:50] tonyo: is that what you wanted to know ? [12:51] *** bloatable6 joined [12:51] *** sourceable6 joined [12:52] yea [12:52] are you able to send it up right now? i don't keep logs that far back [13:01] uploaded rak 0.0.14 just now [13:01] tak [13:02] looks like it indexed [13:02] but it did not index then :-( [13:03] booo, hopefully i am a little more attentive next time it's refusing to index [13:04] fwiw, I also didn't get mail that the index failed [13:04] it just said it was going to be indexed after the upload, and then didn't (silently) [13:06] ahh, i'm not seeing a log file was even created for it - wonder if aws was having some problems [13:06] FWIW, it was the same for me: my latest attempt for HTTP::Tiny didn't index [13:07] jjatria: you want to give it a shot now while i'm in there looking at logs? [13:07] Let's see [13:11] Ok, it said it would index shortly [13:11] I didn't keep the old tarball around, so I minted a new one [13:14] i don't see it even getting to aws .. hmm [13:15] Is there a debug option I can set to send you more detailed output, maybe? [13:18] *** razetime left [13:18] 0.2.4 ? [13:19] there's a flag to keep the .tar.gz around [13:20] i think i do actually see it, and it did get stored, just not indexed - may be a bug 360.zef.pm/H/TT/HTTP_TINY/e147a2a973fb5eb925b776c00b3eb3b1dd8f1597.tar.gz [13:21] * lizmat clickbaits https://rakudoweekly.blog/2022/09/19/2022-38-another-wave/ [13:27] *** razetime joined [13:28] *** vrurg left [13:29] *** vrurg joined [13:29] I've been making my own tarballs, and then using `fez upload --file` to push them [13:29] gotcha, i think i've figured out where the bug might be [13:30] tonyo: yeah, 0.2.4 was the latest one [13:30] and it's a non-obvious one of how to trigger [13:30] So the one for 0.2.3 might also be lying around somewhere in there... 🤔 [13:31] tonyo: so does it depend on the content, or is there some internal issue / race condition ? [13:31] just OOC :-) [13:32] there shouldn't be a race, i think S3 is failing to update the index file and there's no retry built in [13:33] it serializes changes through a queue so the processor adds a message to the queue to add/remove (that way if you remove a dist it will actually wait to remove it until after it's been added to the index, if that makes sense) [13:33] in this case i don't know what the error is but it updated the `/H/TT/HTTP_TINY/index.json` but failed on `/index.json` [13:37] TIL you can remove a dist [13:37] only within 1 day of its upload [13:38] wow, 736 dists for yours truly :-) [13:38] 1 failure on those is still pretty good :) [13:41] curl -s 360.zef.pm |jq -s '.[] | group_by(.auth) | map({auth: .[0].auth, agg: map(1) | add})' [13:42] i'm only getting 626 :) - hopefully i can fix this one and we won't see this error [13:53] what is the difference between a bare sub and an `only` sub? [14:00] only sub is explicit [14:00] sub a() { } [14:00] is 'our only sub a() { }' [14:01] if it is in the mainline [14:01] of a compunit [14:05] hmm... so you can always get away without writing `sub`, except lambdas? [14:06] I think `sub a` is `my only sub a` [14:06] not our [14:07] my only sub... sounds much sadder [14:09] or romantic, it's my only one, after all! [14:11] Oh okay... but then sub has a BDSM undertone, no? 🤣 [14:12] *** melezhik joined [14:12] o/ [14:12] 2022-09-17T16:57:27Z #raku melezhik i tried a few ways and no joy [14:13] .tell El_Che I have integrated raku-zef-deps and sparkyci - please see this build - https://ci.sparrowhub.io/report/1178 , deps report [14:13] melezhik, I'll pass your message to El_Che [14:14] deps tab [14:15] moritz: you're right, I had a Perlism in my head :- [14:15] ) [14:15] m: sub a() { dd }; dd OUR::<&a> [14:15] rakudo-moar 2070ceebb: OUTPUT: «Any element{'&a'} = Any␤» [14:15] m: our sub a() { dd }; dd OUR::<&a> [14:15] rakudo-moar 2070ceebb: OUTPUT: «Sub a = sub a { #`(Sub|3966133159264) ... }␤» [14:15] m: sub a() { dd }; dd MY::<&a> [14:15] rakudo-moar 2070ceebb: OUTPUT: «Sub a = sub a { #`(Sub|5552587949408) ... }␤» [14:18] so typing `only` instead of `sub` for a named function is mostly about stylistics, [14:18] so typing `only` instead of `sub` for a named function is mostly about stylistics? [14:18] I thought it enforced no other candidates [14:18] I mean, if that's the default for subs anyway [14:18] and you can apparently drop `sub` if you type out `only` [14:19] .tell El_Che - https://raw.githubusercontent.com/melezhik/images/master/Screen%20Shot%202022-09-20%20at%209.17.34%20AM.png [14:19] melezhik, I'll pass your message to El_Che [14:20] > only sub you () {"Can make all the world seem right"}; [14:20] okay, this IS romantic 😄 [14:20] ups probably should have told to [Coke] )) [14:22] .tell [Coke] - https://twitter.com/melezhik2/status/1572229449029980165 sparkyci and App::Zef-Deps integration [14:22] melezhik, I'll pass your message to [Coke] [14:23] *** Heptite joined [14:24] *** jaguart joined [14:24] main. with-zef-deps: true in .sparkyci.yaml enables App::Zef-Deps report [14:25] *** Sgeo joined [14:28] just uploaded a new version of the processor that should give me some better insight ( jjatria ) [14:29] *** razetime left [14:30] *** razetime joined [14:32] *** xinming joined [14:34] *** Some-body_ joined [14:37] *** DarthGandalf left [14:37] *** Some-body_ is now known as DarthGandalf [14:51] *** melezhik left [14:53] tonyo Shall I try to upload again? [14:56] *** japhb left [14:57] yes please [14:58] m: my %a = :42a, :666b; my %b = :314c; %a ,= %b; dd %a # me just fell in love with the ,= idiom on 2 hashes [14:58] rakudo-moar 2070ceebb: OUTPUT: «Hash %a = {:a(42), :b(666), :c(314)}␤» [14:59] Steady as she goes~ [14:59] I got the same success message as before [14:59] lizmat: live and learn, truly. [15:07] *** japhb joined [15:18] *** razetime left [15:25] *** razetime joined [15:29] <[Coke]> .tell melezhik ooh, nifty [15:29] [Coke], I'll pass your message to melezhik [15:30] *** sena_kun left [15:44] tonyo: Yeah, that didn't get indexed either it seems [15:52] *** sena_kun joined [15:54] *** Papercombo joined [15:54] hmmm [15:54] it looks like it's not even processing your tar [15:55] you mind sending me the tar you've built? [15:55] Sure. Email? [15:59] *** abraxxa left [16:12] *** Guest80 joined [16:13] *** Guest80 left [16:14] *** [Coke] left [16:15] yea [16:15] *** lesihctej joined [16:15] pmd [16:16] *** [Coke] joined [16:16] *** jetchisel left [16:21] *** bigdata joined [16:22] *** Papercombo left [16:28] *** Papercombo joined [16:36] *** [Coke]_ joined [16:37] *** [Coke] left [16:39] *** tokomak joined [16:41] *** dakkar left [16:43] *** Papercombo left [16:43] *** bigdata_ joined [16:43] *** bigdata left [16:43] *** bigdata_ is now known as bigdata [16:48] *** [Coke] joined [16:49] *** [Coke]_ left [17:10] *** sena_kun left [17:21] *** sena_kun joined [17:35] *** razetime left [17:36] *** archenoth left [17:37] *** archenoth joined [18:07] *** reportable6 left [18:09] *** reportable6 joined [18:59] *** tokomak left [19:12] *** [Coke] left [19:15] *** [Coke] joined [19:30] *** jaguart left [19:32] *** Papercombo joined [19:33] *** sena_kun left [19:43] *** Papercombo left [19:50] *** MoC joined [19:51] *** [Coke] left [19:54] *** [Coke] joined [20:02] jjatria: bug should be fixed [20:03] if you upload again, it should index this time [20:04] tonyo++ [20:04] *** [Coke] left [20:04] turns out that gzip in particular was taking longer than the lambda timeout [20:07] *** [Coke] joined [20:07] anyone familiar with QAST around? i would've thought that in a slang returning the QAST::Op(:bind, QAST::Var, ) was the way to register a symbol in the scope [20:08] https://github.com/Raku/nqp/blob/master/docs/qast.markdown ? [20:08] afk& [20:16] i'm doing what the example says but getting that var doesn't exist in scope at runtime [20:17] *** sena_kun joined [20:21] *** deoac joined [20:35] tonyo: You need QAST::Var for that. [20:36] tonyo: What you do is actually `nqp::bind(sym, $val)` where `sym` is not declared yet. [20:36] https://gist.github.com/tonyo-tatari/ae8d8728ae8841368481556abd5d19e0 [20:37] this is what's in the actions right now and method fact is definitely being called [20:37] the double up was me experimenting [20:38] Frankly, I don't remember what is the meaning of 'lexicalref', but just 'lexical' must work. [20:38] i get `Variable '$x' is not declared. Perhaps you forgot a 'sub' if this was [20:38] intended to be part of a signature?` with `lexical` and `lexicalref` [20:41] Could it depend on now the AST you make is used after? [20:41] now -> how [20:44] BTW, you can actually declare the symbol where you use it and reduce the number of ops. Just a note. [21:04] what do you mean? the Action isn't being applied in a way where nqp::bind can affect the scope it's used in the script [21:08] err, oh, you mean the first Var in there is unnecessary [21:11] *** jjido joined [21:22] *** bigdata left [21:31] *** deoac left [21:39] *** Colere left [21:40] tonyo: sorry, I'm not always around. Yes, the note was about the redundant Var. But that's minor. More important is what block the Var gets installed into? This could be the reason for the error. [21:40] *** Colere joined [21:41] part of the error was i wasn't making that stmt in the right spot, that's corrected but i still get the var not found thing. currently looking at $*W.install_lexical_symbol [21:42] Have you tried get rid of the redundant Var? There is a little chance it can help. But otherwise I suspect there is a bigger problem. [21:48] *** lichtkind_ left [21:52] yea [21:53] just updated the gist [21:55] *** Heptite left [22:05] *** MoC left [22:19] *** sena_kun left [22:20] *** Heptite joined [22:25] *** [Coke]_ joined [22:26] *** [Coke] left [22:35] find_single_symbol must be wrapped into WVal. But you can use just QAST::WVal.new(:value(Any)) because you have it already in Raku. [22:41] like this? $*W.install_lexical_symbol($*W.cur_lexpad(), '$test', QAST::WVal.new(:value(Any))); [22:41] fails with: This type (Scalar) does not support positional operations [22:46] That's because they're not designed for use in Raku, but in NQP. The first arguments gets containerized. [22:46] ah [22:47] But you must not need it anyway. [22:47] what's the right way to make the symbol known at compile time so it can be known that there is a symbol with that name in the current scope? [22:48] You mean there is code ran at compile time which needs to access the symbol? [22:50] last week i updated module V [22:52] tonyo: actually, you can try $*W.install_lexical_symbol(nqp::decont($*W.cur_lexpad()), '$test', Any). [22:53] module Calendar which now has some limited functions, the most useful of which is the same output as the *nix program 'cal' BUT with a choice of one of 13 languages... [22:54] * vrurg is afk for a while [23:04] tonyo: before I'm gone for another hour, what you probably need is the symbol to be installed at node 0 of $*W.cur_lexpad. It is a block node where 0 element is for declarations, and 1 is for the actual code. [23:05] *** [Coke] joined [23:07] *** [Coke]_ left [23:18] *** [Coke]_ joined [23:19] *** [Coke] left [23:25] tonyo: Thanks! I've re-uploaded, let's see what happens [23:39] Looks like no joy [23:42] *** habere-et-disper joined