Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2016-11-26

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:37 * viki is confused by this text https://github.com/MoarVM/MoarVM/blob/master/src/core/oplist#L6-L17
00:38 geekosaur ?
00:38 viki The rule is: add ops to end of file. But then the text says there's an exception to it: spesh ops. But then it says they must go to the end of file...
00:38 geekosaur the rule is more correctly: don't renumber existing ops
00:38 geekosaur "add ops to end of file" is mechanism
00:38 viki OK.
00:39 viki Alright.
00:39 geekosaur but spesh ops should always come after the normal ops including any of those that you add, and since they are generated on the fly at runtime they never go into bytecode files and so don't need to be stable
00:41 viki What are the w() and r()? isnanorinf w(int64) r(num64) :pure
00:48 viki eh... I'm too dumb for this shit
00:49 geekosaur r is read register, w is write register, rl is read lexical, wl is write lexical
00:50 geekosaur (from https://github.com/MoarVM/MoarVM/blob/master/tools/update_ops.p6#L253-L258)
00:50 geekosaur no flag is an immediate value
00:51 viki Thanks, but I've no idea what any of the other stuff means. I looked at interp.c and there's a bunch of MVM.
00:51 viki And I don't know C, so heh
00:51 geekosaur read the rest of that script I pointed to, it's what parses the oplist file and generates C and NQP source fom it
00:54 viki Well, before I do all that, is it agreed that we need nqp::negzero() that can tell whether you're dealing with -0e0 or 0e0?
00:57 viki m: use nqp; for ^1000_000 { nqp::islt_n(nqp::atan2_n(-0e0, -1e0), 0e0) }; say now - INIT now
00:57 camelia rakudo-moar 15f51a: OUTPUT«0.23019159␤»
00:57 viki m: use nqp; for ^1000_000 { nqp::isnanorinf(-0e0) }; say now - INIT now
00:57 camelia rakudo-moar 15f51a: OUTPUT«0.2291996␤»
00:57 viki I'm guessing negzero would have similar perf to isnanorinf, and that is pretty much the same as islt+atan2.
00:58 viki I'm just gonna use atan2 for the fix.
00:59 viki And will mark it as XXX TODO to change to a proper op if there turns up to be more usecases for it
01:04 viki m: nqp: nqp::say(nqp::islt_n(nqp::div_n(1e0,0e0), 0e0))
01:04 camelia rakudo-moar 15f51a: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Could not find nqp::div_n, did you forget 'use nqp;' ?␤at <tmp>:1␤------> nqp::say(nqp::islt_n(nqp::div_n(1e0,0e0)⏏, 0e0))␤»
01:05 viki ^ gonna use that. No need for an op
02:48 ilbot3 joined #moarvm
02:48 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
05:11 TimToady joined #moarvm
06:19 xtt2 joined #moarvm
06:23 domidumont joined #moarvm
06:28 domidumont joined #moarvm
08:00 geekosaur joined #moarvm
09:49 vendethiel joined #moarvm
09:51 FROGGS joined #moarvm
09:52 FROGGS o/
09:53 nwc10 \o
11:14 domidumont joined #moarvm
11:47 jnthn o/
12:42 timotimo \o
14:19 timotimo i'll havee something interesting to show in about half an hour
14:25 timotimo okay
14:25 timotimo http://hack.p6c.org/~timo/mysterious_but_harmless_binary
14:28 timotimo jnthn: ^ you may find this intriguing
14:45 domidumont joined #moarvm
14:47 FROGGS timotimo: what is that?
14:51 timotimo please re-download it from the same URL now and make sure the sha1sum is c37e662155612839aceb11a070c5a47a895dcf1e
14:51 FROGGS still, what does it do?
14:51 timotimo well, i already told the others in #perl6 what it does, but i wanted to give you a little bit of a challenge for finding out what it is
14:52 FROGGS hmmm, will look into it after buying some stuff
14:52 timotimo you can buy my mysterious_but_harmless_binary if you want!
14:58 cygx joined #moarvm
14:59 cygx timotimo: been there, done that: https://irclog.perlgeek.de/moarvm/2015-05-12#i_10592179
14:59 cygx congrats, anyway!
14:59 FROGGS ohh, I did that too :o)
15:00 FROGGS had an nqp and rakudo executable
15:00 timotimo well, i did it without the linker.
15:00 timotimo why didn't you go ahead and make a rakudo fakecutable then?
15:01 cygx I did, but there where issues with properly loading the setting
15:01 cygx I don't quite remember the edtails, it's been a year
15:02 cygx *were
15:09 cygx what I moved on to was having a proper MoarVM embedding API and a single DLL for rakudo and nqp each that would embed the bytecode files
15:10 cygx my half-baked attempt at it can still be found at https://github.com/cygx/librakudo/
15:12 timotimo hm.
15:17 timotimo *** Error in `./full_rakudo': double free or corruption (out): 0x00007f5227492220 ***
15:17 timotimo well, that's fun
15:18 timotimo the annoying thing is that running the binary with valgrind makes it unable to find its shit
15:22 timotimo p6captureouters got non-code object
15:22 timotimo at src/Perl6/World.nqp:3162  (blib/Perl6/World.moarvm:resolve)
15:22 timotimo from SETTING::src/core/traits.pm:467  (./CORE.setting.moarvm:<unit>)
15:22 timotimo from gen/moar/CORE.setting:1  (./CORE.setting.moarvm:<unit-outer>)
15:22 timotimo from <unknown>:1  (./CORE.setting.moarvm:<load>)
15:22 timotimo from gen/moar/ModuleLoader.nqp:196  (blib/Perl6/ModuleLoader.moarvm:)
15:22 timotimo from gen/moar/ModuleLoader.nqp:186  (blib/Perl6/ModuleLoader.moarvm:load_setting)
15:22 timotimo cygx: does that look familiar?
15:25 cygx timotimo: I *think* it failed differently, but I'm too lazy to check right now :p
17:56 zakharyas joined #moarvm
18:02 lizmat_ joined #moarvm
18:37 timotimo well, i'm still happy i made it work without requiring the use of a linker or compiler or anything
18:37 dalek MoarVM/concat_moar_binary: c9144bd | timotimo++ | / (6 files):
18:37 dalek MoarVM/concat_moar_binary: can put stuff at the end of binary and get it from inside.
18:37 dalek MoarVM/concat_moar_binary:
18:37 dalek MoarVM/concat_moar_binary: linux-only, and not endian-safe, doesn't yet handle
18:37 dalek MoarVM/concat_moar_binary: extops yet, because it's tricky, but other than that it works!
18:37 dalek MoarVM/concat_moar_binary: review: https://github.com/MoarVM/MoarVM/commit/c9144bd925
19:19 zakharyas joined #moarvm
22:54 lizmat .tell jnthn some HARNESS_TYPE=6 failures: https://gist.github.com/lizmat/0bd1a0668a7dd7f3c5c75ac6dffac399
22:54 yoleaux2 lizmat: I'll pass your message to jnthn.
23:23 Ven joined #moarvm

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary