Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes.
Set by lizmat on 24 May 2021.
00:00 JoeyeS left, japhb left, Nicholas left, Nicholas joined 00:05 japhb joined 00:07 reportable6 left 00:09 reportable6 joined, JoeyeS joined 00:10 JoeyeS is now known as Guest4061, Guest4061 is now known as JoeyeS 00:26 frost joined 00:40 JoeyeS left 00:46 frost left, frost joined 01:34 JoeyeS joined 01:35 JoeyeS is now known as Guest2934, Guest2934 is now known as JoeyeS 01:47 JoeyeS left, JoeyeS joined, JoeyeS is now known as Guest6552 01:48 Guest6552 is now known as JoeyeS 02:05 JoeyeS is now known as pshhh, pshhh is now known as JoeyeS 02:16 JoeyeS is now known as pshhh 02:42 pshhh is now known as JoeyeS 02:50 JoeyeS is now known as pshhh 02:51 pshhh is now known as JoeyeS 03:24 JoeyeS is now known as pshhh 03:26 pshhh is now known as JoeyeS 03:39 frost left 03:44 JoeyeS is now known as pshhh, pshhh is now known as JoeyeS 03:52 JoeyeS left 04:52 reportable6 left, greppable6 left, bisectable6 left, shareable6 left, committable6 left, notable6 left, unicodable6 left, benchable6 left, sourceable6 left, quotable6 left, releasable6 left, evalable6 left, coverable6 left, nativecallable6 left, bloatable6 left, linkable6 left, statisfiable6 left, benchable6 joined, bisectable6 joined, reportable6 joined 04:53 greppable6 joined, notable6 joined, linkable6 joined, bloatable6 joined 04:54 releasable6 joined, shareable6 joined, nativecallable6 joined, unicodable6 joined 04:55 quotable6 joined, evalable6 joined, statisfiable6 joined, sourceable6 joined, committable6 joined, coverable6 joined 05:43 AlexDaniel left, uzl[m] left, jjatria left, jjatria joined 05:45 uzl[m] joined, AlexDaniel joined 05:50 JoeyeS joined 05:56 JoeyeS left 06:07 reportable6 left 06:09 reportable6 joined
Nicholas good *, * 06:44
06:58 nebuchadnezzar joined 07:36 frost joined 07:54 sena_kun left 07:55 sena_kun joined 08:40 JoeyeS_ joined 08:56 JoeyeS_ left 11:37 JoeyeS_ joined 12:03 JoeyeS_ left 12:04 Altai-man joined 12:06 reportable6 left 12:07 reportable6 joined
MasterDuke jnthnwrthngtn: are "Make the AST compiler support return types..." and "Make us indicate slurpiness when signatures are introspected." listed here github.com/rakudo/rakudo/tree/raku...nt-to-help actually done? 12:16
i see stuff related to return types and slurpiness in github.com/rakudo/rakudo/blob/raku...re.rakumod 12:17
lizmat and yet another Rakudo Weekly News hits the Net: rakudoweekly.blog/2022/04/11/2022-15-wordling/ 12:30
jnthnwrthngtn MasterDuke: Those relate to the thing that compiles the stuff under src/Raku/ast into the NQP code that goes into the bootstrap 12:37
So one can introspect the RakuAST API itself via the MOP (and thus IDEs can auto-complete on AST node types, etc.)
MasterDuke: So, it's in github.com/rakudo/rakudo/blob/raku...mpiler.nqp 12:38
nine After you've written your first one, compilers seem to be the solution for every problem 13:00
MasterDuke ah 13:01
jnthnwrthngtn Why write code when you could instead write code that writes the code? :) 13:03
Nicholas there's no problem that can't be made better with anohter level of abstraction 13:05
13:25 frost left 13:54 Altai-man left, Altai-man joined 14:17 childlikempress joined 14:18 moon-child left 14:32 JoeyeS_ joined 14:54 JoeyeS__ joined 14:57 JoeyeS_ left 15:24 JoeyeS__ left 15:57 JoeyeS_ joined, JoeyeS_ left, JoeyeS_ joined 16:13 sena_kun_ joined, Altai-man left, dogbert17 joined 16:15 dogbert11 left 16:20 JoeyeS_ left 16:40 JoeyeS_ joined 16:51 JoeyeS_ left 17:14 sena_kun_ left 17:35 RakuIRCLogger__ joined, TempIRCLogger left, Geth left 17:36 lizmat_ joined, RakuIRCLogger left 17:37 lizmat left, lizmat_ left 17:38 lizmat joined, RakuIRCLogger__ left 18:05 discord-raku-bot left 18:06 discord-raku-bot joined, reportable6 left 18:08 reportable6 joined 19:14 discord-raku-bot left 19:15 discord-raku-bot joined 19:47 childlikempress is now known as moon-child
jnthnwrthngtn Today's little RakuAST bit from me netted some new passes. Up to 381 fully passing now. 21:28
MasterDuke am i correct in thinking that we don't have any built-in way of directly getting the parts (significand and exponent) of a num? 21:36
jnthnwrthngtn I'm not aware of anything more than writing the num into a Buf with `write-num64` and then pulling the appropriate bits out. 21:43
Probably would need to account for denormals too 21:44
MasterDuke i was thinking about www.reddit.com/r/rakulang/comments...f_feature/ and wondering if there was any additional smarts that could be added to Num's Rat method 21:48
but i haven't been able to come up with anything. since at the point of calling .Rat, we just have a plain num/float, not the literal form with the parts nicely broken out 21:49
22:09 linkable6 left
SmokeMachine Do we already have a way of creating new compiler custom passes using RakuAST? 22:09
22:11 linkable6 joined
lizmat SmokeMachine: to my understanding: not yet 22:20
SmokeMachine Thanks lizmat 22:21
lizmat MasterDuke: looking forward to further review 23:08
calling it a day now
MasterDuke maybe the slowdown was using the `if foo() -> $bar {` construct, which is slower than explicitly doing the assignment before the `if` 23:13
nqp: my %h := nqp::hash("a", 1, "n", 2, "f", 3, "v", 4, "g", 5, "e", 6, "k", 7, "o", 8, "c", 9, "x", 10); my $a; my int $i := 0; my int $s := nqp::time; while $i++ < 100_000_000 { if nqp::elems(%h) -> $e { $a := $e + 1 }; }; say(nqp::div_n(nqp::time - $s, 1000000000e0)); say($a) 23:15
camelia 1.449024658
11
MasterDuke nqp: my %h := nqp::hash("a", 1, "n", 2, "f", 3, "v", 4, "g", 5, "e", 6, "k", 7, "o", 8, "c", 9, "x", 10); my $a; my int $i := 0; my int $s := nqp::time; while $i++ < 100_000_000 { my $e := nqp::elems(%h); if $e { $a := $e + 1 }; }; say(nqp::div_n(nqp::time - $s, 1000000000e0)); say($a) 23:16
camelia 0.972030957
11