🦋 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.
00:00 reportable6 left 00:02 reportable6 joined 03:11 nativecallable6 left, notable6 left, sourceable6 left, greppable6 left, benchable6 left, committable6 left, squashable6 left, statisfiable6 left, bloatable6 left, coverable6 left, bisectable6 left, linkable6 left, unicodable6 left, quotable6 left, tellable6 left, reportable6 left, releasable6 left, evalable6 left, shareable6 left, bisectable6 joined, linkable6 joined, notable6 joined, shareable6 joined, committable6 joined, greppable6 joined 03:12 statisfiable6 joined, sourceable6 joined, reportable6 joined, unicodable6 joined, bloatable6 joined, releasable6 joined 03:13 quotable6 joined, nativecallable6 joined, benchable6 joined, tellable6 joined, coverable6 joined 03:14 squashable6 joined, evalable6 joined 04:14 unicodable6 left, greppable6 left, benchable6 left, reportable6 left, shareable6 left, committable6 left, bloatable6 left, evalable6 left, squashable6 left, sourceable6 left, tellable6 left, notable6 left, bisectable6 left, coverable6 left, nativecallable6 left, quotable6 left, statisfiable6 left, releasable6 left, linkable6 left, tellable6 joined, notable6 joined, evalable6 joined, nativecallable6 joined 04:15 shareable6 joined, unicodable6 joined, coverable6 joined, linkable6 joined, bisectable6 joined, statisfiable6 joined, committable6 joined 04:16 sourceable6 joined, releasable6 joined, bloatable6 joined, benchable6 joined 04:17 greppable6 joined, reportable6 joined, squashable6 joined, quotable6 joined 05:17 shareable6 left, tellable6 left, nativecallable6 left, squashable6 left, bloatable6 left, notable6 left, greppable6 left, statisfiable6 left, linkable6 left, reportable6 left, unicodable6 left, committable6 left, coverable6 left, quotable6 left, evalable6 left, benchable6 left, bisectable6 left, releasable6 left, sourceable6 left, reportable6 joined, coverable6 joined 05:18 nativecallable6 joined, greppable6 joined, evalable6 joined, bloatable6 joined, notable6 joined, committable6 joined 05:19 squashable6 joined, sourceable6 joined, bisectable6 joined, statisfiable6 joined, shareable6 joined, linkable6 joined, quotable6 joined, benchable6 joined, tellable6 joined, unicodable6 joined 05:20 releasable6 joined 06:00 reportable6 left 06:03 reportable6 joined
Geth rakudo/main: 3e81831a8e | (Elizabeth Mattijsen)++ | 2 files
RakuAST: move "whenever" to block- section for translation
10:38
rakudo/main: 8c2062c273 | (Elizabeth Mattijsen)++ | 2 files
RakuAST: ready grammar/actions for translation, Part 1

Instead of checking for literal strings such as "if" or "elsif", replace these by sub-classable tokens.
Part 1 covers the block- and constraint- version as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
Problematic tokens where the if/with elsif/orwith / else group
  (which needed action methods to store the type), and while/until
because these groups are handled by a single rule in the grammar.
11:00
nine While the issues individually don't seem to be much of a problem, they become one in combination. It comes down to the question of how we know whether to generate a runtime lexical lookup for a declaration or a constant value. 11:49
We need lexical lookups for everything that resolved to a declaration within the dynamically compiled comp unit and constant values for everything found outside.
The resolver would know where it found something. But the resolver may be run at a time where we don't know that something will be compiled dynamically. 11:51
Geth rakudo/main: cbfdaeec9c | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 2

Instead of checking for literal strings such as "and" or "cmp", replace these by sub-classable tokens.
Part 2 covers the infix- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
nine The QAST generating code knows about dynamic compilation but does not get the memo about where it was actually found.
Of course the latter could be fixed by spreading a lot of attach methods around 11:57
lizmat: wasn't jnthn working on changing the whole attach thing? 11:58
lizmat not sure... 11:59
12:00 reportable6 left
Geth rakudo/main: f9de816082 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 2

Instead of checking for literal strings such as "so" or "not", replace these by sub-classable tokens.
Part 3 covers the prefix- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
12:01
12:03 reportable6 joined
lizmat Part 3 obviously, duh 12:26
Geth rakudo/main: b7a59287a8 | (Elizabeth Mattijsen)++ | 2 files
RakuAST: ready grammar/actions for translation, Part 4

Instead of checking for literal strings such as "BEGIN" or "END", replace these by sub-classable tokens.
Part 4 covers the phaser- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
12:35
rakudo/main: d08c2f9891 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 5

Instead of checking for literal strings such as "for" or "given", replace these by sub-classable tokens.
Part 5 covers the modifier- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
13:10
13:20 evalable6 left, linkable6 left 13:21 evalable6 joined 13:23 linkable6 joined
Geth rakudo/main: 4d1ff7324a | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 6

Instead of checking for literal strings such as "proto" or "multi", replace these by sub-classable tokens.
Part 6 covers the multi- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
13:27
rakudo/main: d6b2a46569 | (Elizabeth Mattijsen)++ | 2 files
RakuAST: add hooks for "knowhow" and "native"

Which are also (internal) package declarators
13:34
rakudo/main: cdc7c1d5bf | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 7

Instead of checking for literal strings such as "class" or "grammar", replace these by sub-classable tokens.
Part 7 covers the package- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
13:48
rakudo/main: 714f2f6d93 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 8

Instead of checking for literal strings such as "sub" or "method", replace these by sub-classable tokens.
Part 8 covers the routine- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
14:03
rakudo/main: 783c7900d9 | (Elizabeth Mattijsen)++ | 2 files
RakuAST: add hooks for "augment" and "supersede"

These are internally considered to be scopes
14:15
rakudo/main: bc3cc07a28 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 9

Instead of checking for literal strings such as "my" or "our", replace these by sub-classable tokens.
Part 9 covers the scope- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
14:24
14:38 linkable6 left, evalable6 left, evalable6 joined, linkable6 joined
Geth rakudo/main: c716de92ce | (Elizabeth Mattijsen)++ | 2 files
RakuAST: add hook for "supply"
14:44
15:02 ab5tract joined
leont I don't understand how the termish rule works in the grammar, so I don't understand how to use its result 15:56
Only action named termish is in RegexAction, while I was expecting it in the main actions class 16:00
nemokosch github.com/Raku/nqp/blob/6669ea2ec...s.nqp#L147 16:09
are you looking for this?
Geth rakudo/main: e3f2389628 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 10

Instead of checking for literal strings such as "do" or "quietly", replace these by sub-classable tokens.
Part 10 covers the stmt-prefix- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
Sadly using stmt-prefix-do causes a regression, so don'y actually apply that right now
16:11
leont Probably, yes 16:14
Though isn't that nqp instead of raku? 16:16
lizmat leont: the Raku grammar still is a subclass of HLL::Grammar
leont Ah, that makes sense 16:17
lizmat I'm working on removing this dependence
*y
rewriting EXPR was .... interesting :-)
Geth rakudo/main: 9da6db8f75 | (Elizabeth Mattijsen)++ | 2 files
RakuAST: add hook for "handles"
16:19
16:27 jgaz joined
Geth rakudo/main: 1e797d64d1 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 11

Instead of checking for literal strings such as "is" or "does", replace these by sub-classable tokens.
Part 11 covers the trait- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
16:34
rakudo/main: cdcd9c58df | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 12

Instead of checking for literal strings such as "enum" or "subset", replace these by sub-classable tokens.
Part 12 covers the typer- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
17:00
rakudo/main: c776e55a88 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 13

Instead of checking for literal strings such as "use" or "require", replace these by sub-classable tokens.
Part 13 covers the use- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
17:20
lizmat and that leaves the elephant in the room, aka the "core-" section 17:21
Geth rakudo/main: 19bd308947 | (Elizabeth Mattijsen)++ | 2 files
RakuAST: remove some unnecessary <sym> captures
17:29
rakudo/main: 35bdbbc619 | (Elizabeth Mattijsen)++ | 2 files
RakuAST: don't bother using especially named captures

For the handling of if / with / elsif / orwith
17:38
rakudo/main: 446591057c | (Elizabeth Mattijsen)++ | 2 files
RakuAST: add support for the new "nano" term
17:58
18:00 reportable6 left 18:01 reportable6 joined
Geth rakudo/main: f4fc256b04 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: get rid of <tok> token

The <end-keyword> token is good enough
18:31
leont I think my problem is in RakuAST::Term::Capture.IMPL-EXPR-QAST, I'm starting to get a hunch on how to fix it 18:34
Geth rakudo/main: d6fd0f60c4 | (Elizabeth Mattijsen)++ | 3 files
RakuAST: add "term-" section in L10N
18:53
19:01 evalable6 left, linkable6 left 19:02 linkable6 joined 19:04 evalable6 joined 19:17 ab5tract left
Geth rakudo/main: 65cc4b660d | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 14

Instead of checking for literal strings such as "time" or "self", replace these by sub-classable tokens.
Part 14 covers the term- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
19:18
19:26 ab5tract joined
Geth rakudo/main: 150488c117 | (Elizabeth Mattijsen)++ | 3 files
RakuAST: add translation hooks for statement "also"
19:29
rakudo/main: 65d84a4d56 | (Elizabeth Mattijsen)++ | 3 files
RakuAST: add "meta-" section in L10N
19:42
rakudo/main: 1702a8e273 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: ready grammar/actions for translation, Part 15

Instead of checking for literal strings such as "R" or "X", replace these by sub-classable tokens.
Part 15 covers the meta- section as found in lib/RakuAST/Deparse/L10N/CORE.rakumod
19:50
rakudo/main: b70ca769f1 | (Elizabeth Mattijsen)++ | src/Raku/Grammar.nqp
RakuAST: make a lot of <sym>s non-capturing

As these captures are not needed
20:13
lizmat and that concludes my hacking for today&