🦋 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.
01:34 [Coke] left 01:56 [Coke] joined 08:31 sena_kun joined
nine It occurs to me that we really don't have a good story for pragmas in RakuAST yet. Most just call $*LANG.set_pragma which is fine for pragmas that only influence parsing and AST generation. It's definitely no good for pragmas like fatalize. 08:49
Geth rakudo/main: bfdbf1cfa3 | (Stefan Seifert)++ | 6 files
RakuAST: no need to traverse the whole AST for BEGIN time

Each node should already get a chance to run BEGIN time effects when it gets added to the AST. IMPL-BEGIN is a very blunt tool that hides places where we miss to-begin-time calls. It is however only meant to be used for synthetic ASTs.
14:54
nine Turns out, actually understanding the design really helps with applying it correctly :) Anyway, this change speeds up compilation a bit more and saves a few % of compilation time. RakuAST should now be a little bit faster than the old frontend, even with optimizer disabled. 14:55
Looks like I successfully procrastinated on implementing use fatal; today
16:43 japhb_ joined 16:47 japhb left, timo left 16:48 timo joined
nine m: dd (defined 1 div 0) 17:37
camelia Bool::False
nine m: dd ((1 div 0).defined)
camelia Bool::False
nine m: use fatal; dd (defined 1 div 0) 17:38
camelia Bool::False
nine m: use fatal; dd ((1 div 0).defined)
camelia Attempt to divide 1 by zero using div
in block <unit> at <tmp> line 1
nine m: use fatal; dd ((1 div 0).so) 17:39
camelia Attempt to divide 1 by zero using div
in block <unit> at <tmp> line 1
nine Arguably that's a bit too fatal
I wonder if I could piggyback on the sinking infrastructure for fatalizing 17:47
OTOH maybe I should just steal the old implementation. Sometimes processing QAST is really the lesser evil. fatalize is just 42 LOC and I guess it's ok to do this ast QAST gen time 17:55
21:28 sena_kun left
Geth rakudo/coolroot: 7c3db0041e | (Timo Paulssen)++ | src/vm/moar/ops/perl6_ops.c
Use fancy new root macro from moarvm pull request #1828
21:46