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 reportable6 left, reportable6 joined 00:04 Guest46 joined 01:02 Kaiepi left 01:14 epony left 02:37 evalable6 left, linkable6 left 02:38 evalable6 joined 02:39 linkable6 joined 02:57 epony joined 05:18 evalable6 left, greppable6 left, reportable6 left, squashable6 left, linkable6 left, sourceable6 left, tellable6 left, statisfiable6 left, coverable6 left, nativecallable6 left, notable6 left, benchable6 left, quotable6 left, committable6 left, shareable6 left, unicodable6 left, bloatable6 left, releasable6 left, bisectable6 left, shareable6 joined, linkable6 joined 05:19 sourceable6 joined, bisectable6 joined, unicodable6 joined, reportable6 joined, committable6 joined, nativecallable6 joined, squashable6 joined 05:20 quotable6 joined, benchable6 joined, greppable6 joined 05:21 bloatable6 joined, releasable6 joined, tellable6 joined, evalable6 joined, statisfiable6 joined, notable6 joined, coverable6 joined 06:00 reportable6 left 06:01 Guest46 left 06:02 reportable6 joined 07:53 Kaiepi joined 08:30 sena_kun joined 08:51 sena_kun left
nine rakuast now passing 83 test and 585 spectest files 09:29
Nicholas Christmas is coming
10:46 frost joined
timo test files here means t/* except t/spec/*? 11:01
nine timo: yes 11:07
timo cool
11:19 squashable6 left 11:21 squashable6 joined
jnthn vrurg: I think the QAST compiler only cares about them on QAST::Stmt and QAST::Stmts 11:23
ah, and QAST::Block
Well, not sure about QAST::Block. But certainly attaching it on statements is the important thing 11:24
vrurg: Didn't have time to look at the PRs for now, but it occurs to me that "source" is probably better than "origin" if a simpler name than the original proposal is wanted. 11:25
origin risks a bit of confusion with .orig
(On a Match)
Which I was trying to avoid. More generally, the thinking is that in normal compilation mode we'll just attach integer char offsets, but in cases where we really would want to be able to map in detail onto original source, there's the NFG-style negative integers plus looku 11:27
(Like when building a formatter, for example)
Since RakuAST is abstract, it erases for example which exact quotes were used in a quoting construct
Which one might want to know in certain non-compilation use cases 11:28
12:00 reportable6 left 12:03 reportable6 joined
jnthn Some sad news for the VM community twitter.com/jnthnwrthngtn/status/1...8722257920 13:55
lizmat weekly: twitter.com/jnthnwrthngtn/status/1...8722257920 13:59
notable6 lizmat, Noted! (weekly)
14:10 frost left
gfldex We are not made to last. But we can make things that outlast us. 14:14
vrurg jnthn: As to the naming – it's better be left off for the PR comments. As to the keeping indexes in a table, I've been there, experimented a lot and came down to requiring a tree structure. There is a problem about nodes like where there are gaps in the source between children nodes. The best search algorithm for them would be a tree traversal anyway. 14:29
As to the quoted string and alikes, we do know their exact from/to positions in the source anyway. So, we can use them. Or the strings must be wrapped into a helper node, defined by do_nibbling. 14:32
japhb vrurg: Well, if you're compiling from source, as opposed to generated AST ... 15:51
vrurg japhb: And? ;) 15:53
japhb: BTW, the origin attribute on node is optional in my model. It could also refer to different sources. 15:54
With regard to strings and alikes, the wrapper node could be optional too and be a non-code generator. Or the optional data could be part of the string node. In either case, do_nibbling rule knows the exact location of the string and we can use that info. 15:56
18:00 reportable6 left 18:01 reportable6 joined 18:46 [Coke] left 18:48 [Coke] joined
vrurg jnthn: will the current structure of RakuAST CompUnit remain the same, with no <unit-outer>? Backtrace doesn't work with it. 21:24
21:32 linkable6 left, evalable6 left 21:33 linkable6 joined 21:35 evalable6 joined
jnthn I think <unit-outer> was a bit of a hack; it was to hold references to symbols from the real outer to keep QAST compilers happy. 22:43
(The better compiler startup time is largely thanks to avoiding shoving all the setting symbols into that) 22:44
Could potentially reinstate it as an empty block, but nicer if we can just be rid of it 22:45
vrurg Ok, I will adapt Backtrace. Thanks! 22:49
23:50 squashable6 left, evalable6 left, unicodable6 left, nativecallable6 left, committable6 left, greppable6 left, quotable6 left, linkable6 left, shareable6 left, bisectable6 left, tellable6 left, notable6 left, statisfiable6 left, benchable6 left, releasable6 left, reportable6 left, coverable6 left, sourceable6 left, bloatable6 left 23:51 reportable6 joined, coverable6 joined, notable6 joined, tellable6 joined, shareable6 joined 23:52 statisfiable6 joined, nativecallable6 joined, releasable6 joined, evalable6 joined, quotable6 joined, unicodable6 joined, bisectable6 joined, benchable6 joined 23:53 squashable6 joined, greppable6 joined, committable6 joined, bloatable6 joined, sourceable6 joined 23:54 linkable6 joined