github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
00:03 dogbert17 left 01:10 AlexDani` joined 01:14 AlexDaniel left 01:34 Kaiepi left
Geth MoarVM: f8743c1127 | (Daniel Green)++ | src/core/coerce.c
Add type to exception if a thing can't be coerced
01:57
02:38 AlexDani` is now known as AlexDaniel, AlexDaniel left, AlexDaniel joined 02:43 Kaiepi joined 05:17 releasable6 left 05:21 releasable6 joined 05:32 robertle left 06:16 domidumont joined 06:20 AlexDaniel left 07:15 robertle joined 07:34 zakharyas joined 08:01 patrickb joined 09:14 zakharyas left 09:15 brrt joined
brrt \o 09:18
jnthn o/ brrt 09:20
brrt ohai jnthn 09:23
do you have anything you're working on recently? 09:27
jnthn Was making the EA be PEA :) 09:28
brrt I saw that you're going to Riga for perlcon eu
what's the difference between those?
jnthn Though last week I had family visiting and took them on a trip to Olomouc, plus had some customers visiting, so didn't really get to touch any of it.
P = Partial, so we can handle things only escapsing on some code-paths 09:29
nwc10 that's short enough to be a URL. Who needs a blog post? :-)
timotimo escapsism 09:31
i'm finally putting an interpreter into moarvm so we can run code in it
nwc10 Ook? 09:32
timotimo Oog, oog!
nwc10 ./r
aha. ther'es my focus
brrt I see 09:35
Okay, that's fairly cool. It's a speculative optimization then :-)
10:10 domidumont left 10:27 zakharyas joined 10:50 brrt left 10:55 brrt joined 12:14 domidumont joined 12:16 sena_kun joined 12:29 squashable6 left 12:33 squashable6 joined 12:41 domidumont1 joined 12:45 domidumont left 12:52 brrt left 13:50 domidumont joined 13:51 domidumont1 left 13:55 brrt joined
brrt I had one of those 'ideas' today 14:07
timotimo i'm glad i'm not the only one who gets those
brrt Actually, this is a backport of an idea that I had in another context
I can improve the register allocator in steps
More specifically, I can assign to each live range, the register set of permissible registers 14:08
a register set is a 32 bit number
so that's cheap
timotimo look, what is this strange output: 14:11
this is the name of the frame we're running from
run-the-program
thank you for your attention
i wonder if it has anything to do with the program that has "log = sf.name" in it
brrt timotimo: where is it output from? 14:12
jnthn :) 14:13
timotimo compile_confprog.p6 14:16
Geth MoarVM/configurable-subsystems: c872509718 | (Timo Paulssen)++ | 6 files
with lots and lots of hacks, the first useful program!

it just outputs the name of the current staticframe.
14:22
brrt timotimo++ 14:29
timotimo the validator is currently very forgiving when it comes to registers being written to/read from with different kinds of operators declared for the ops, though 14:30
Geth MoarVM/more-pea: 21 commits pushed by (Jonathan Worthington)++
review: github.com/MoarVM/MoarVM/compare/8...1d48d0a600
14:36
timotimo 21 commits sounds like a rebase
jnthn It was :) 14:40
timotimo a fresh base to have great new stuff put onto it
today it turns out that my understanding of "characters outside the BMP must be turned into backslash sequences of UTF16 surrogate pairs" was actually wrong (for json, that is) 14:41
that is only for *if* you *want* to escape a character that happens to be outside of BMP
you can just use literal utf8 data inside strings if you want 14:42
Geth MoarVM/more-pea: de5ce1c801 | (Jonathan Worthington)++ | src/spesh/pea.c
A little more detail in the PEA debug output
14:58
15:04 brrt left 15:08 brrt joined 15:15 patrickb left 15:17 robertle left
japhb timotimo: What's the reference on that? I was always under that impression as well (needing to transform characters outside the BMP for JSON), but I admit I have just trusted received wisdom, not read the specs myself. 15:34
15:35 brrt left 15:42 domidumont left
Geth MoarVM/more-pea: 665194d2bb | (Jonathan Worthington)++ | 3 files
Implement sp_takewrite_bi op and JIT it

This is used when we have a big integer in a register and we need to materialize.
15:53
MoarVM/more-pea: f60c70c1e9 | (Jonathan Worthington)++ | 2 files
Smarter heuristics around bigints in PEA

We benefit from the lowering sufficiently to go ahead and apply PEA.
15:58 zakharyas left 16:02 brrt joined 16:05 domidumont joined 16:33 domidumont left 16:46 robertle joined 17:06 TimToady left 17:21 brrt left
Geth MoarVM/more-pea: 08c2cdc3fa | (Jonathan Worthington)++ | src/core/vector.h
Remove duplicate macro definition
17:26
MoarVM/more-pea: 45690cba0b | (Jonathan Worthington)++ | 2 files
Only bind used attributes in materialization

Otherwise, we can write values into attributes that would otherwise vivify. This also prepares the way for more proper handling of the attribute vivification in general, which we decidedly cheat on at the moment.
nwc10 jnthn: NQP master doesn't like that more-pea - it bombs out with a "MoarVM oops: Malformed DU chain: writer sp_fastcreate of 3(2) in BB 14 is incorrect 17:42
jnthn I'll get. 17:44
*bet
Still a few missing pieces before it works "in theory" :) 17:45
Let alone in practice.
Geth MoarVM/more-pea: bed960afdb | (Jonathan Worthington)++ | src/spesh/pea.c
Refactor in preparation for handling attr viv

For now, always bail saying that we cannot handle it. This is the hook for us to put in proper hanlding.
17:46
MoarVM/more-pea: 4b5080fb03 | (Jonathan Worthington)++ | src/spesh/pea.c
Handle no-vivify case of attribute viv reading

In this case, we can simply turn it into a register access, like any other attribute read op.
17:57
jnthn dinner time & 18:00
18:05 Altai-man_ joined 18:07 sena_kun left 18:48 Altai-man_ left 19:02 brrt joined 19:35 sena_kun joined 19:38 zakharyas joined 20:08 zakharyas left 20:10 brrt` joined 20:12 brrt left 21:04 robertle left 21:10 robertle joined, brrt`` joined 21:12 brrt` left 21:41 brrt`` left 21:43 brrt`` joined 21:58 brrt`` left 22:07 sena_kun left