🦋 Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | Logs available at irclogs.raku.org/raku-dev/live.html | For MoarVM see #moarvm
Set by lizmat on 8 June 2022.
[Coke] ok, all the top level pages on the raku.org site are now using the same styling. 01:30
[Coke] a few tickets left that are asking for big changes on the front page = if asomeone can split those up into actionable items, I'd appreciate it. 01:57
[Coke] also, feedback on reorging the cards on individual pages welcome. I tried to improve placement and ordering 03:11
Geth rakudo: ab5tract++ created pull request #5460:
RakuAST: Use stubby meta for Routine
11:09
ab5tract_ lizmat: 2 more spec tests ^^ 11:10
Geth rakudo/main: fd99f6dc70 | ab5tract++ (committed by Elizabeth Mattijsen) | 2 files
RakuAST: Use stubby meta for Routine

This is much cleaner approach, as it means that anything that has a reference to the stubbed meta object will still have a reference to it after names/types are reset.
11:12
lizmat 982 +2 :-) 11:32
Geth rakudo: lizmat self-assigned deparse drops parentheses github.com/rakudo/rakudo/issues/5457
ab5tract++ created pull request #5462: RakuAST: Make multi subs check for re-declaration of signatures
11:41
ab5tract_ Is there an existing pattern for de-duplicating exceptions that get thrown twice with the same parameters for the same exceptions in a single compilation cycle? 14:35
ab5tract_ Found it :D 14:48
[Coke] any issues with moving the examples site to use the same styling as raku.org ? 16:47
lizmat not from me 17:28
Geth rakudo/main: 12a13c4842 | (Elizabeth Mattijsen)++ | src/core.c/RakuAST/Deparse.rakumod
RakuAST: fix various issues with ApplyPostfix deparsing
18:41
Geth rakudo/main: 92522e890c | (Elizabeth Mattijsen)++ | 7 files
RakuAST: deparse method calls without args without ()

And adapt tests accordingly.
20:33
Geth rakudo/main: 50b8e191a3 | (Elizabeth Mattijsen)++ | 5 files
RakuAST: add :no-parentheses hint to ::Call::Name

This will make a lot of deparses a lot more readable, as it will deparse an original:
   say "foo";
... (9 more lines)
21:26
nine_ lizmat: feels to me like this ^^^ is a syntactic detail that should not be present in the AST. After all the A stands for abstract. Trying to retain the source information makes the AST more complicated than needed. I think instead, deparse should use a reasonable heuristic to create nice looking code in a standard format regardless of what the input was. 21:50
lizmat nine_: I've tried to do that, but it just basically becomes a nightmare with many special cases 21:57
it's like you're parsing the tree all over again 21:58
that's why I added the attribute: if you're building trees manually, you can simply ignore it
and it will deparse safely with parentheses 21:59
in the grammar it's very clear whether its a say("foo") or a say "foo"
so it just needs to set the attribute in one location
and yes, I understand the A in AST 22:00
nine_ Why not just always produce the parentheses then? Seems like a safe choice. 22:04
lizmat that's what it did before... 22:05
and it bothered me to no end that `say "foo"` became `say("foo")`
and since we're going to use deparsing for changing of localization, it felt better that a change in localization would not change that 22:06
m: say Q|say "foo"|.AST.DEPARSE("NL") 22:07
camelia zeg "foo"
lizmat rather than `zeg("foo")`
nine_ But where do you draw the line then? 22:13
lizmat nine_: I plan to draw the line after adding a deparsing hint to QuotedRegex 22:14
and that's it, as far as I can see right now
either that, or creating different (dummy) processors that would deparse differently 22:15
but *that* really feels yucky to me 22:16
nine: alternately, I could create a subclass RakuAST::Call::Name::WithoutParentheses of RakuAST::Call::Name and just add different deparsing for that ? 22:18
nine_: would that feel better for you?
AlexDaniel oh, whateverable actually doesn't have any moarvm builds because I wiped them to save space 22:48
interesting
I don't remember myself doing that, but apparently I did! 22:49
Geth whateverable/main: a6d775d813 | (Aleks-Daniel Jakimenko-Aleksejev)++ | xbin/Buildable.p6
Stop Buildable from pretending to work when asked

The idea is that if any other mechanism breaks (e.g. webhooks are down), then you should be able to “wake” it up by just asking for the status. However, in this case the functionality was a bit too eager, which resulted in the bot always saying “Building” even when it was idle.
22:52
whateverable/main: b7fb536f56 | (Aleks-Daniel Jakimenko-Aleksejev)++ | xbin/Buildable.p6
Let Buildable build MoarVM too

It turns out that at some point I wiped all MoarVM builds to save space. This means that from now on the bot will attempt to build *everything* from scratch. That's fine, it's just that it'll take some time.
AlexDaniel buildable6: status 23:11
buildable6 AlexDaniel, (⏳ Building…) 32606 rakudo-moar builds in 10450 archives (71.9 GB); 12 moarvm builds in 12 archives (0.1 GB)
AlexDaniel and so it begins :)
buildable6 AlexDaniel, Done building! 23:18