Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2017-04-24

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

All times shown according to UTC.

Time Nick Message
01:18 BenGoldberg joined #moarvm
01:18 BenGoldberg Has this happened for anybody before me: /usr/bin/moar: error while loading shared libraries: libmoar.so: cannot enable executable stack as shared object requires: Invalid argument
01:20 BenGoldberg This is with ubuntu on windows (aka WSL), right after I typed 'sudo apt-get install rakudo-star' then 'perl6'
01:24 MasterDuke_ hm, i think there's something you need to do to build moar on windows in WSL, maybe need to do the same?
01:25 BenGoldberg I'm not building it from sources.
01:26 BenGoldberg I mean, if I really really had to, I could, but ...
01:33 geekosaur you can try: execstack -c libmoar.so
01:33 geekosaur and then see if anything breaks
01:49 ilbot3 joined #moarvm
01:49 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
02:41 geekosaur joined #moarvm
02:42 * BenGoldberg thanks geekosaur++
05:39 brrt joined #moarvm
05:49 brrt \o #moarvm
05:50 samcv \o brrt
05:50 brrt \o samcv
05:51 samcv Unrecognized backslash sequence: '\o'
05:51 brrt hehe
05:52 brrt how are things?
05:54 brrt in a grumbling-old-guy kind of way, i don't get how
05:55 brrt 'cracking the coding interview' has become some sort of rite-of-passsage for the young'un
06:17 brrt hmmm
06:18 brrt i've added some debugging logs and somehow dynasm broke
06:18 brrt that aint' right
06:19 samcv that sounds like the title of some book or something
06:19 samcv well probably is. idk lol
06:19 samcv but you put it in quotes. or whatever
06:30 domidumont joined #moarvm
06:35 domidumont joined #moarvm
06:46 brrt joined #moarvm
06:48 brrt 'cracking the coding interview' is all the rage
06:49 brrt it's a piss-poor analogy for a algorithms textbook, specifically optimized for the things that technical reviewers also optimize for, i.e. brevity and conceptual depth
06:49 brrt *an
06:49 brrt anyway, 'twas an off-by-one
07:03 Geth ¦ MoarVM/even-moar-jit: 2824cd77b9 | (Bart Wiegmans)++ | 6 files
07:03 Geth ¦ MoarVM/even-moar-jit: Log tile list basic blocks
07:03 Geth ¦ MoarVM/even-moar-jit:
07:03 Geth ¦ MoarVM/even-moar-jit: Add a logging method for tile list and some debug info; it appears
07:03 Geth ¦ MoarVM/even-moar-jit: that stuff is not entirely right just yet, so good to have.
07:03 Geth ¦ MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/2824cd77b9
07:24 zakharyas joined #moarvm
08:20 brrt i think the bug is in the 'closing' of the basic blocks...
08:35 domidumont joined #moarvm
09:29 timotimo as long as it's closing and not cloning
09:35 dogbert17_ \o
09:36 dogbert17_ timotimo: what do you think about this? https://gist.github.com/dogbert17/4972c06318996448b479f3715dba7c6d
09:37 timotimo did the diff get cut off in the middle?
09:37 timotimo other than that i think it's fine
09:38 dogbert17_ it might have been cut of but all the changes are there
09:38 dogbert17_ s/of/off/
09:39 timotimo yeah, i say commit it
09:39 dogbert17_ not sure I have such powers :)
09:39 dogbert17_ guess I'll have to do two PR's instead
09:40 timotimo that's fine
09:40 timotimo is nqp also going to have the "usage on stderr if unknown flags passed"?
09:41 dogbert17_ haven't tried but can do so when I get home from work. You mean running nqp with 'bad' options?
09:42 dogbert17_ the fix worked when running perl6 though so there's hope at least
09:42 timotimo yup
09:42 timotimo just have to honor the :$use-stderr in nqp's compiler, too
09:43 dogbert17_ will fix
09:45 * dogbert17_ notices that Zoffix 'vacation' seems to have been cut short
09:58 AlexDaniel joined #moarvm
10:32 TimToady joined #moarvm
10:49 Geth ¦ MoarVM/even-moar-jit: a52cbffa7f | (Bart Wiegmans)++ | src/jit/tile.c
10:49 Geth ¦ MoarVM/even-moar-jit: Fix off-by-one in block-generation
10:49 Geth ¦ MoarVM/even-moar-jit:
10:49 Geth ¦ MoarVM/even-moar-jit: Range of basic block is [start, stop) so that we can
10:49 Geth ¦ MoarVM/even-moar-jit: for (i = start; i < stop; i++) 'standard' C looping rather than
10:49 Geth ¦ MoarVM/even-moar-jit: 'i <= stop', which is really just as easy but more confusing.
10:49 Geth ¦ MoarVM/even-moar-jit: Anyway, +1-ing start was wrong. Add some debug names in WHEN,
10:49 Geth ¦ MoarVM/even-moar-jit: could do the same in other construct but not necessary yet.
10:49 Geth ¦ MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/a52cbffa7f
10:50 brrt there aren't many complex examples yet, but everything seems to be in ordr
10:50 timotimo neato
10:51 brrt yeah
10:52 brrt i especially like how a single basic block can have only two successors, so we can have a static number of successors, so we can encode the graph structure entirely (and in this case, sufficiently) with just those two numbers per bb
10:52 brrt matter of fact, i think i can do a little better
10:52 brrt as you may have noticed, i'm obsessively against allocating dynamic structures if it's not strictly necessary
10:53 timotimo right
10:53 timotimo you can make one packed successors-array
10:53 timotimo with a simple indexing strategy
10:53 brrt :-)
10:55 brrt not sure if you've seen it, but i'm using a linked list for value references in linear scan? and all linked list nodes are allocated from a single buffer
10:55 brrt and that was a major compromise from my perspective
11:00 timotimo i haven't looked deeply at your code, tbh
11:11 brrt i didn't expect that, tbh :-)
11:13 timotimo OK, tbh
11:22 brrt :-P{
11:28 domidumont joined #moarvm
11:39 timotimo how did your mustache move to the tip of your tongue? :)
11:52 domidumont joined #moarvm
11:58 domidumont joined #moarvm
12:06 brrt hehe
12:06 brrt that reminds me
12:06 brrt i need to shave
12:06 brrt also
12:06 brrt jnthn++ for a very nice blog post
12:06 brrt i have a few due myself
12:06 * jnthn wonders if brrt read the "proof" at the bottom :)
12:06 brrt obviously i did
12:07 jnthn Figured you'd be one of the folks who did :-)
12:07 jnthn I also thought it would be a heck of a detour in the middle of the post, thus why it got footnoted :-)
12:07 brrt :-) obviously a single broken implementation is not exhaustive proof, hence the quotes
12:10 jnthn Well, if you're trying to prove "it never ends up with in-use memory on the free list" then proof by contradiction is sufficient :-)
12:11 jnthn The proof of correctness for FREE is far more handwavey
12:11 brrt hmm…. let me think about it for a bit
12:11 brrt …. yes, i think you are right
12:11 brrt anyway, it's an interesting assymetry
12:12 brrt asymmetry
12:13 jnthn That you can lock-free push but not lock-free pop? Yes.
12:14 jnthn If you're in a GC'd language then you have a lot of get-outs from ABA though
12:14 jnthn Because you know a memory address can never be re-used until all references are gone, including the one held by the sleeping thread.
12:15 brrt well, that's true for the case of allocation, not for lists in general :-)
12:20 jnthn Well, it's something you can take advantage of generally as a problem-solving technique, but you may need an extra LOI :)
12:21 timotimo jnthn: did you notice that valgrind + --full-cleanup is a bit mad at the new freelist stuff?
12:21 * timotimo AFK for a bit
12:22 jnthn timotimo: No, hmm
12:22 jnthn :)
12:22 jnthn File a MoarVM issue on that, if you think there's new bustage
12:36 Geth ¦ moarvm.org: 407a767fb9 | jnthn++ | 2 files
12:36 Geth ¦ moarvm.org: Update MoarVM site for 2017.04 release.
12:36 Geth ¦ moarvm.org: review: https://github.com/MoarVM/moarvm.org/commit/407a767fb9
12:39 jnthn I'll be away from now until noon on Wed :)
12:39 nwc10 have fun
12:39 nwc10 (I hope)
12:42 jnthn Me too :-)
12:42 jnthn o/
12:52 brrt see you, have fun
13:33 ggoebel joined #moarvm
13:45 domidumont1 joined #moarvm
14:05 MasterDuke_ i've heard good things about intel's vtune amplifier, and it looks like Open Source developers may be able to get a license for free https://software.intel.com/en-us/intel-vtune-amplifier-xe/try-buy
14:06 MasterDuke_ anybody here think it would be useful for analyzing/optimizing moarvm?
14:28 dogbert17_ MasterDuke_: why not :)
14:30 timotimo it can do python and such, maybe theres simple hooks we couldnuse to get line annotations into the profiler, too
14:34 MasterDuke_ i wouldn't consider myself knowledgeable enough about moarvm or proficient enough in C to deserve a free license (and i don't actually know how hard they are to get), but i'd thought i'd mention the possibility in case people didn't know
14:35 MasterDuke_ but who knows, maybe they hand them out like candy?
15:47 brrt joined #moarvm
15:47 Geth ¦ MoarVM/even-moar-jit: daaadd34b4 | (Bart Wiegmans)++ | src/jit/tile.c
15:47 Geth ¦ MoarVM/even-moar-jit: More pseudotile debug names
15:47 Geth ¦ MoarVM/even-moar-jit:
15:47 Geth ¦ MoarVM/even-moar-jit: For better understanding the generated code
15:47 Geth ¦ MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/daaadd34b4
15:47 Geth ¦ MoarVM/even-moar-jit: dc07cb85e4 | (Bart Wiegmans)++ | src/jit/tile.c
15:47 Geth ¦ MoarVM/even-moar-jit: Fix basic block ranges during tile list insertion
15:47 Geth ¦ MoarVM/even-moar-jit:
15:48 Geth ¦ MoarVM/even-moar-jit: When we insert tiles into the tile lists, the range of each of the
15:48 Geth ¦ MoarVM/even-moar-jit: associated basic blocks changes. Because of the linear order of basic
15:48 Geth ¦ MoarVM/even-moar-jit: blocks, simple in-place updating is sufficient to compensate. Note
15:48 Geth ¦ MoarVM/even-moar-jit: that this assumes the basic block structure itself is left unchanged.
15:48 Geth ¦ MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/dc07cb85e4
16:03 dogbert17 joined #moarvm
17:54 domidumont joined #moarvm
17:56 robertle joined #moarvm
18:01 geekosaur joined #moarvm
18:08 timotimo i wonder if we should have somezhing that inserts nops to help see the structure of nodes reflected in the assembly output
19:24 Ven joined #moarvm
19:29 vendethiel joined #moarvm
19:57 samcv good morning
20:05 Ven_ joined #moarvm
20:29 AlexDaniel joined #moarvm
20:42 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: 8bf37cc768 | (Timo Paulssen)++ | 5 files
20:43 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: enable --telemeh, --no-telemeh, and probe for rdtscp
20:43 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: review: https://github.com/MoarVM/MoarVM/commit/8bf37cc768
20:49 Ven joined #moarvm
20:54 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: 4aa1133107 | (Timo Paulssen)++ | Configure.pl
20:54 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: document --no-telemeh and --telemeh
20:54 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: review: https://github.com/MoarVM/MoarVM/commit/4aa1133107
20:56 MasterDuke_ timotimo: did you see my comment on your first commit?
20:57 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: 5fd7978d5d | (Timo Paulssen)++ | src/main.c
20:57 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: include or exclude telemetry log env var in usage/--help
20:57 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: review: https://github.com/MoarVM/MoarVM/commit/5fd7978d5d
20:58 timotimo i did not, let's see
20:59 timotimo good catch, thanks
21:00 MasterDuke_ np
21:00 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: 55e61aac83 | (Timo Paulssen)++ | Configure.pl
21:00 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: fix copy-pasto, MasterDuke17++
21:00 Geth ¦ MoarVM/configure-telemeh-probe-rdtscp: review: https://github.com/MoarVM/MoarVM/commit/55e61aac83
21:00 timotimo and that's why you don't commit to master at 11pm
21:47 lizmat and another Perl 6 Weekly hits the Net: https://p6weekly.wordpress.com/2017/04/24/2017-17-interesting-times/
23:03 japhb lizmat: Thank you for posting that in the quiet channel too.  :-)
23:13 japhb Zoffix++  # https://perl6.party/post/The-Failure-Point-of-a-Release  <-- Very clear postmortem
23:38 samcv lizmat, can you make telling people to tag their modules a bit more prominent? with a sentence or two?
23:38 samcv i often don't read the full list of blog posts every week

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