🦋 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:46 vrurg left 00:47 vrurg joined 05:43 sena_kun joined 09:23 RakuIRCLogger joined
nemokosch hah, it's kind of reassuring that vrurg came to a very similar conclusion about versioning 10:33
Reassuring but not exactly relieving
Geth rakudo/main: d9f2767c27 | (Elizabeth Mattijsen)++ | src/core.c/RakuAST/Deparse.rakumod
RakuAST: cleanup deparsing of simple RegexDeclarations
11:12
12:11 jgaz joined
lizmat m: default { say "default" }; say "not seen" 12:18
camelia default
lizmat that was a bit unexpected :-) 12:19
nemokosch Well, that's the charm of when 12:23
Actually I wish succeed existed outside of when stuff 12:24
lizmat I sorta expected it to be a compile-time error without any when
nemokosch Hm, can it even be resumed? 12:26
m: default { say 'that is a funny way to introduce a block'; proceed; } say 'the temple of consumption' 12:27
Raku eval Exit code: 1 ===SORRY!=== Error while compiling /home/glot/main.raku Strange text after block (missing semicolon or comma?) at /home/glot/main.raku:1 ------> ny way to introduce a block'; proceed; }⏏ say 'the temple of consumption'
nemokosch Right, the semicolon 12:28
m: default { say 'that is a funny way to introduce a block'; proceed; }; say 'the temple of consumption'
Raku eval that is a funny way to introduce a block the temple of consumption
nemokosch For the record with that pull request: en.wikipedia.org/wiki/Nonsense usually if I write an "essay" of a comment, I wouldn't want to ruin it with random insults, sometimes one just has to invoke a definition 12:40
By the way, I wonder 12:45
m: my \if = 5; if.succ.say 12:46
Raku eval 6
nemokosch :DD
lizmat m: sub if($a) { say $a }; if 42 12:47
camelia ===SORRY!=== Error while compiling <tmp>
Missing block
at <tmp>:1
------> sub if($a) { say $a }; if 42⏏<EOL>
expecting any of:
block or pointy block
nemokosch m: my \if = 5; say if + 4;
lizmat m: sub if($a) { say $a }; if(42)
camelia 42
Raku eval Exit code: 1 ===SORRY!=== Error while compiling /home/glot/main.raku Unsupported use of bare "say". In Raku please use: .say if you meant to call it as a method on $_, or use an explicit invocant or argument, or use &say to refer to the function as a noun. at /home/glot/main.raku:1 ------> my \if = 5; say⏏ if + 4;
nemokosch Aalmoost 12:48
m: my \if = 5; dd if + 4;
Raku eval block <unit>()
nemokosch Hm
Does Raku even have reserved words? 12:49
lizmat yes, syntax consists of fixed strings in the grammar 12:51
nemokosch I think this is like approaching the same broader phenomenon from two directions 13:13
there are words that have special meaning in the Raku grammar, that's for sure
but those words can (seemingly) also appear in contexts (within the same slang) where they don't retain the special meaning 13:14
lizmat m: "foo" "bar" 13:15
camelia ===SORRY!=== Error while compiling <tmp>
Two terms in a row
at <tmp>:1
------> "foo"⏏ "bar"
expecting any of:
infix
infix stopper
statement end
statement modifier
statement m…
lizmat depends on whether they are in a term position or not
13:18 Xliff joined
Xliff 58.18671 13:18
48.3895
19.32329
16.74337
18.96529
89.14353
20.0511
8.3518
44.73086
10.17522
35.16032
27.81778
36.40519
193.4173
22.96845
51.43319
52.14229
13.82014 13:19
41.72478
31.29072
30.25855
21.61069
19.343
nemokosch then the question would more accurately be: are there words that cannot be used as terms?
Xliff 62.8221
10.53869
23.90838
111.47869
3.14051
4.90335
13.4291
30.62174
21.35918
9.55734
7.73768
Oops...
Raku-GLib suite timing statistics for Raku 2023.09.9.gb.58.c.3203.cc
Using the following processor: 13th Gen Intel(R) Core(TM) i9-13900K
Total number of projects: 34 (518011 loc)
Total non-parallel compile times: 7343.420 (215.983 avg)
Total parallel compile times: 1208.283 (35.538 avg) 6.078x speedup
vrurg Xliff: In your GLib it looks like using something like `submethod BUILD (:$hash-table, :$!type) { $!h = $hash-table }` is a common pattern. Why not safer `submethod TWEAK(:hash-table($!h), :$!type) {}`? 16:00
nemokosch what exactly is BUILD for? what uses it? 16:21
Geth rakudo/main: f4ceaf95d9 | (Elizabeth Mattijsen)++ | lib/RakuAST/Deparse/L10N/NL.rakumod
RakuAST: tweak some of the NL L10N
16:48
Xliff vrurg: Thanks for noticing. PRs welcome! You'll find that there is a lot of that all over this and subsequent releases. Mainly becuase I haven't touch that code in years. My style has changed since then and you will notice your pattern cropping up in later releases.
If you feel like it, please create an issue and I'll get to it when I can. 16:49
Thanks for looking at GLib!
20:52 AlexDaniel joined 21:49 sena_kun left 22:54 MasterDuke left