github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
01:00 lizmat joined, p6bannerbot sets mode: +v lizmat 01:04 lizmat left 01:25 dalek left 02:23 synopsebot left
timotimo figured out why lots and lots of smrt_numify and smrt_strify in nqp code weren't being optimized: 02:44
spesh couldn't figure out whether or not BOOTInt, BOOTNum, or BOOTStr could have .Str or .Num called on them
so i put in a cheat saying "no, there's no methods on these types"
and since there were plenty int-to-num-to-ints in there as well, i gave spesh an opt for that 02:45
int-to-num-to-int is safe, whereas num-to-int-to-num isn't, since num can have values larger than int can handle 02:46
and since it's nqp and almost all num usage is accidental, i don't think we need to emulate precision loss at higher numbers
would be interesting to see if it makes Perl6 code unhappy 02:47
could perhaps limit it to places where the HLL is nqp 02:49
many coerce_in (that is, int to num) remain because of deopt usage and such 02:50
but at least we don't have to intify the num any more
it does pass spec tests, so there might be a hole there perhaps 02:58
07:43 Geth left 09:23 domidumont joined, p6bannerbot sets mode: +v domidumont 10:27 lucasb joined, p6bannerbot sets mode: +v lucasb 13:25 quotable6 left, bloatable6 left, bisectable6 left, squashable6 left, undersightable6 left, benchable6 left, coverable6 left, reportable6 left, releasable6 left, greppable6 left, statisfiable6 left, evalable6 left, unicodable6 left, notable6 left, shareable6 left, nativecallable6 left, committable6 left, bisectable6 joined, evalable6 joined, notable6 joined 13:26 p6bannerbot sets mode: +v bisectable6, p6bannerbot sets mode: +v evalable6, p6bannerbot sets mode: +v notable6, bloatable6 joined 13:27 greppable6 joined, p6bannerbot sets mode: +v bloatable6, p6bannerbot sets mode: +v greppable6, undersightable6 joined 13:28 reportable6 joined, quotable6 joined, p6bannerbot sets mode: +v undersightable6, benchable6 joined, squashable6 joined, releasable6 joined 13:29 p6bannerbot sets mode: +v reportable6, p6bannerbot sets mode: +v quotable6, p6bannerbot sets mode: +v benchable6, p6bannerbot sets mode: +v squashable6, p6bannerbot sets mode: +v releasable6, coverable6 joined, nativecallable6 joined 13:30 shareable6 joined, p6bannerbot sets mode: +v coverable6, p6bannerbot sets mode: +v nativecallable6, statisfiable6 joined, unicodable6 joined, committable6 joined 13:31 p6bannerbot sets mode: +v shareable6, p6bannerbot sets mode: +v statisfiable6, p6bannerbot sets mode: +v unicodable6, p6bannerbot sets mode: +v committable6
timotimo oh, neat: gdb has $_regex and $_streq convenience functions available in breakpoint conditions 13:48
13:56 lizmat joined, p6bannerbot sets mode: +v lizmat 14:42 brrt joined, p6bannerbot sets mode: +v brrt
brrt \o 14:49
timotimo++ 14:50
(for your late night research)
something that bothers me 14:55
MoarVM uses the name 'num' for floating points
lizmat so does Perl 6
brrt everything else in the world uses 'float' 14:57
which is, to be honest, far more accurate
lizmat was not involved in the naming 15:01
mornfall yes i get regularly bitten by Num :( 15:07
i expect that to be the root of the numerical type hierarchy
specifically i'm prone to write Num as a type constraint and then go wtf do you mean Int is not a Num /o\ 15:09
brrt i wonder what is the top of the number chain 15:10
jnthn The Numeric role 15:12
timotimo oh, Real ly?
lucasb timotimo :D 15:14
timotimo fwiw, javascript, which everybody loves, also calls floats "number" 15:17
brrt well, not everybody loves javascript, tbh 15:18
lucasb it's the only kind of Number JS has :)
brrt also for lua 15:19
and it works well for them, tbh 15:20
jnthn I suspect "make all the basic numeric types 3 letters long" was a design consideration too :)
brrt flt 15:24
oh well :-)
timotimo Cpx
brrt heh, I can even understand that
timotimo ctrl-printscrn-x? emacs users these days ...
15:59 zakharyas joined 16:00 p6bannerbot sets mode: +v zakharyas 16:05 brrt left 16:30 brrt joined 16:31 p6bannerbot sets mode: +v brrt
brrt \o 16:31
no Geth?
.tell samcv - minilua can be compiled with just '-lm', and it'll work on any platform 16:51
yoleaux brrt: I'll pass your message to samcv.
brrt And that also fixes issue #999 (or at least I believe it ought to)
I'm beginning to think that having size parameters to operands was a bad idea 16:55
17:19 brrt left 17:47 zakharyas left
timotimo in the jit? 17:50
17:51 dalek joined, SourceBaby left, p6lert_ left, synopsebot joined, p6lert joined, Geth joined 17:52 p6bannerbot sets mode: +v dalek, p6bannerbot sets mode: +v synopsebot, p6bannerbot sets mode: +v p6lert, p6bannerbot sets mode: +v Geth 17:56 lucasb left
timotimo say "hello again" to geth 17:57
samcv .tell brrt then we don't need to worry about libraries on the users computer changing? 17:58
yoleaux 16:51Z <brrt> samcv: - minilua can be compiled with just '-lm', and it'll work on any platform
samcv: I'll pass your message to brrt.
19:20 zakharyas joined 19:21 p6bannerbot sets mode: +v zakharyas 20:09 domidumont left 20:23 lizmat left 20:30 lizmat joined, p6bannerbot sets mode: +v lizmat
timotimo Frame size: 33046 bytes (3318 from inlined frames) 20:41
Specialization took 26781us (total 83586us)
JIT was successful and compilation took 56558us
Bytecode size: 141470 byte
oh 20:42
i have --optimize=0
that will make a difference
the code is doing "save the $_ around this block" apparently 20:43
22:08 Kaypie is now known as Kaiepi 22:11 zakharyas left 22:23 lucasb joined, p6bannerbot sets mode: +v lucasb