Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2015-11-09

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

All times shown according to UTC.

Time Nick Message
02:13 vendethiel joined #moarvm
04:10 tokuhiro_ joined #moarvm
07:38 FROGGS joined #moarvm
07:55 nwc10 good *, #moarvm
09:11 zakharyas joined #moarvm
10:48 brrt joined #moarvm
10:49 brrt good *
10:50 brrt i've a question
10:50 brrt for symmetry reasons it would be.. reasonable to add a 'zero label' at the beginning of the jit code
10:50 brrt well, let me first explain the challenge
10:50 lizmat brrt nwc10 o/
10:51 brrt \o lizmat
10:52 brrt i've decided on the following labeling strategy; all basic blocks receive a label that is equal to their basic block index; the graph end recieves a label equal to the number-of-basic-blocks (hence 1+ largest basic block);
10:54 brrt only before-instruction labels exists, and they are managed in an associative array, whereby the index + the instruction label offset equals the label number
10:54 brrt internal expression labels are calculated after that still
11:01 brrt anyway, because the first basic block is always a NOP, it is simply skipped during JIT graph building
11:01 brrt (first bb of a spesh graph, that is)
11:02 brrt but this bb has index 0; hence no basic block has index 0; hence this label is not initialized, hence a crash
11:02 brrt (label 0 is used as the initial entry label for a newly created frame)
11:03 timotimo brrt: you could just put nops in the code?
11:03 brrt i though it would be a sensible idea to have label 0 as the 'start of graph' label, except that it is of course completely redundant
11:03 brrt anyway, lecture &
11:03 timotimo good lecture, brrt
11:10 lizmat .tell jnthn I think we have a problem with nqp::readlinechompfh : if the last line in a file is empty, nqp::eoffh is 1 and nqp::chars=0
11:10 lizmat hmmm...no yoleaux here ?
11:11 lizmat .tell I wouldn't expect eoffh to be true until the next read
11:11 timotimo yeah, no yoleaux in here
11:23 camelia joined #moarvm
11:27 lizmat $ 6 'spurt("one","\n"); say open("one").get'
11:27 lizmat (Str)
11:27 camelia joined #moarvm
11:39 nwc10 brrt: yes, http://wingolog.org/archives/2015/11/03/two-paths-one-peak-a-view-from-below-on-high-performance-language-implementations is interesting. And seems to have created a sideline in (C)Python speed optimisation snark. For reasons I don't know why
11:39 nwc10 FAT Python looks interesting enough - as in, I'm curious to see how the experiment pans out: http://article.gmane.org/gmane.comp.python.devel/155300
11:39 nwc10 given that "no plan survives contact with the enemy"
11:41 nwc10 eg http://blog.kevmod.com/2014/04/pyston-faq/ -- PyPy uses a tracing loop JIT, and Pyston uses a method-at-a-time JIT.  A tracing JIT like PyPy can be impossible to beat when they hit their fast path, but my hope is that a method-JIT like Pyston could hit its fast path more often and more reliably, especially for larger codebases, which will end up being a win even if the fast path is not quite as fast.
11:52 jnthn timotimo: We actually compute the NFC/NFG "together" rather than producing all the codepoints as an intermediate step, and encodings are free to not send stuff through the normalizer; that's what the utf8-c8 decoder will do.
11:53 timotimo oh!
11:53 timotimo that's good!
11:54 timotimo ... AFK for a bit
11:54 timotimo oh, also: https://github.com/MoarVM/MoarVM/issues/149  this issue is about a "die" in a signal handler not causing the program to exit. i think it shouldn't, but i wanted input from someone else before i reject the addendum to this ticket.
11:57 jnthn timotimo: That's not a MoarVM issue any more
11:58 jnthn And there's already an RT about die in a tap getting swallowed
12:20 dalek MoarVM/utf8-c8: 8c0623f | jnthn++ | src/strings/utf8_c8.c:
12:20 dalek MoarVM/utf8-c8: Factor out repetitive resizing code.
12:20 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/8c0623fad4
12:28 dalek MoarVM/utf8-c8: e97782b | jnthn++ | src/strings/utf8_c8.c:
12:28 dalek MoarVM/utf8-c8: Flush normalizer upon an undecodable.
12:28 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/e97782bbc5
12:41 brrt nwc10, oh, backloggings
12:41 dalek MoarVM/utf8-c8: 065cd60 | jnthn++ | src/strings/utf8_c8.c:
12:41 dalek MoarVM/utf8-c8: Fix reject loop to not lose bytes.
12:41 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/065cd60f98
12:42 brrt nwc10: i can kind of explain the wingolog snark, i think
12:43 nwc10 oh? The comment snark seemed to be from people other than the blog owner
12:43 brrt the cpython core development team has decided not to add features that improve performance by x% if they increase complexity by >x%
12:43 brrt oh, really?
12:43 brrt i didn't read the comments
12:43 nwc10 there was somewhat snark in the blog
12:44 nwc10 and then similarly toned comments from at least one person
12:44 brrt well, it is a reasonable question; it's almost as if the cpython team doesn't care (gasp)
12:44 brrt and the cpython team *doesn't* care, and this is within their rights to do so
12:44 nwc10 and *yes*, it did all seem to agree - that the CPython folks aren't fretting about performance
12:45 brrt i liked the expression 'c extension furnace'
12:46 nwc10 me too
12:46 nwc10 loved that one
12:46 arnsholt Yeah, that was a brilliant turn of phrase
12:47 jnthn Choosing to compete by being the solid/stable/reliable choice is reasonable.
12:47 jnthn Many people *will* value that over performance
12:48 jnthn Part of the challenge of MoarVM development is that we need to both provide reliability and push the Perl 6 performance boundary too.
12:48 nwc10 Choosing to avoid painting yourself into a maintenance corner in the middle future also makes sense
12:49 nwc10 in the same vein, it's important to have "rigidly defined areas of doubt and uncertainty" otherwise you have no wiggle room to fix any bugs ever
12:49 nwc10 "but the existing implementation did that, and I relied on it"
12:50 arnsholt Yeah, Python suffers a bit from that, I think
12:52 jnthn We've yet to see how well "if it's not covered by the test suite it's our wiggle room" works out for Perl 6. :)
12:53 arnsholt Yeah, obviously =)
12:53 arnsholt But at least there's some consideration given to the potential existence of several implementations
12:53 arnsholt We've got that going for us, which is nice =)
12:56 nwc10 brrt: it's really hard to assess 'increase complexity by >x%'
12:56 brrt yes
12:56 nwc10 I agree that it's a legitimate choice. It's just that it's very hard to try to be objective about it
12:57 brrt well, it is a costly choice, too
12:57 brrt on the other hand....
12:58 brrt the other side of it, is that the JIT has seen a somewhat oscillatory process of complexity
12:58 brrt i.e. I add something to make something work, then I change it to be more understandable, then I add new features, then I rework them
12:58 brrt that is basically the only way I can keep going
12:59 brrt if you insert a barrier at >x% complexity, then you may never cross it
12:59 brrt because it tells people 'don't bother doing that, it is too complex'
13:00 brrt so, there is an important signal value in not wanting complexity, aside from the effect of reducing complexity
13:01 brrt and as an aside, the guile vm looks actually increasingly promising, i think
13:04 brrt timotimo: do you recall who it was that asked for illumos?
13:07 timotimo it was konobi
13:10 brrt hmmm... doesn't seem to be online now
13:11 brrt i would kind of need a good testcase for this
13:12 brrt it'd be really stupid if illumos support would fail because of this minor issue in minilua
13:12 brrt on the other hand
13:12 brrt we can configure to disable the JIT for illumos
13:13 timotimo why is konobi not online? at least in the nicklist
13:14 brrt oh, he is
13:14 brrt i was looking wrong
13:14 timotimo that's why i relied on my tab key
13:19 * brrt is using webchat because of the great it department of my $study-office
13:20 timotimo %)
13:22 brrt i can't listen to internet radio, either :-(
13:22 brrt (first world problems much... :-P)
13:23 stmuk_ joined #moarvm
13:25 timotimo that's a productivity reducing problem, IMO
13:25 timotimo well, it can be. depending on the person in question
13:26 kjs_ joined #moarvm
13:29 brrt happiness reducing problem, i think
13:30 brrt also, reducing stimuli problem in a shared office
13:40 dalek MoarVM/utf8-c8: 1650c8b | jnthn++ | src/strings/utf8_c8.c:
13:40 dalek MoarVM/utf8-c8: Fix off-by-one on the undecodable.
13:40 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/1650c8baba
13:40 dalek MoarVM/utf8-c8: 58f2bbb | jnthn++ | src/strings/utf8_c8.c:
13:40 dalek MoarVM/utf8-c8: Implement UTF-8 C-8 encoding.
13:40 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/58f2bbbe77
13:58 brrt (also the phrase 'powerful, bitter C++ wizard' - rather strong image)
14:35 brrt joined #moarvm
15:08 colomon_ joined #moarvm
15:14 dalek MoarVM/utf8-c8: 96fafa0 | jnthn++ | src/strings/utf8_c8.c:
15:14 dalek MoarVM/utf8-c8: Implement UTF-8 C-8 streaming decode.
15:14 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/96fafa01ef
15:14 jnthn Phew
15:14 nwc10 in that, you think that it's done?
15:15 jnthn The encoding, yes
15:15 jnthn Now I "just" need to update various places to use it
15:15 timotimo much triage
15:15 jnthn I also can't really write tests for its effectiveness on Windows
15:16 jnthn Because Windows was sensible enough specify the encoding for file system entries
15:16 brrt wait, what
15:16 jnthn I mean, the encoding I can test
15:16 brrt filesystem entries (file- and directorynames) are encoded in windows? :-o
15:16 brrt hmmm
15:16 * brrt wonders.. and wonders
15:17 brrt and sees potential for abuse
15:19 jnthn Well, hmm
15:19 jnthn "Use any character in the current code page for a name, including Unicode characters and characters in the extended character set"
15:20 timotimo so ... i wonder why loop { start { say "hello" } } hangs. should i spend time investigating that?
15:20 jnthn timotimo: I've no idea why it would
15:20 timotimo (that's issue 140 on github)
15:20 lizmat perhaps it doesn't get a lock to actually cue ?
15:21 lizmat I mean, start doesn't actually cue, does it ?
15:21 jnthn It cues
15:21 jnthn Well, it calls Promise.start({...}), which does
15:22 brrt cue?
15:22 lizmat so it pushes it to $!ququq
15:22 lizmat $!queue
15:23 timotimo it takes its sweet time to actually hang ...
15:23 lizmat does anything reading from the queue get a chance in that loop { start {} } setup ?
15:23 timotimo or perhaps i'm failing to reproduce that right now
15:23 timotimo sure, the code blocks get run all the time
15:23 timotimo now it hangs!
15:23 jnthn lizmat: Well, it's another thread that's reading
15:24 jnthn timotimo: Neat. Now get backtraces of the threads (C level should do) under the debugger :)
15:25 timotimo oh. why did i ctrl-c? :|
15:25 timotimo (because another snippet in that issue uses sleep 0.01 instead of say and is said to segfault)
15:25 timotimo it doesn't segfault here, but surprisingly its memory usage grows
15:26 nwc10 jnthn: it seems to break
15:26 timotimo stopped it just above a gig
15:26 nwc10 not ok 96 - nqp::escape
15:26 dalek MoarVM/utf8-c8: 3f77ddc | jnthn++ | src/strings/utf8_c8. (2 files):
15:26 dalek MoarVM/utf8-c8: Add "encode to C string" function for UTF-8 C-8.
15:26 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/3f77ddce18
15:26 jnthn nwc10: "it"?
15:26 nwc10 origin/utf8-c8
15:26 nwc10 yes, sorry, return key faster than me
15:27 jnthn nwc10: Suspect missing patches from master
15:28 nwc10 is that one of those "excuses" like:
15:28 nwc10 15:28 <dipsy> Your excuse is: clock speed
15:28 nwc10 :-)
15:28 lizmat so if I understand C-8 correctly, it creates 256 synthetics for each possible byte value ?
15:29 nwc10 well, 128, if I understand it, because it's only the octets 128-255
15:30 timotimo https://gist.github.com/timo/e718153e22177958174b  -  fun!
15:30 lizmat wouldn't that be usable for allowing regexen on binaries, given the right syntactic sugar ?
15:31 brrt timotimo: you might want to run that with MVM_JIT_DISABLE=1
15:31 brrt and see if that changes anything, anyway
15:31 timotimo one thing about regexes on binaries is that we'd like to switch interpretations between 8 and 16 and 32 bits and such
15:31 timotimo brrt: can do!
15:31 brrt :-)
15:32 timotimo i forgot about the backtrace screwyness we get ...
15:32 lizmat I think a lot of people would already be very happy with 8 bit  :-)
15:32 timotimo it looks a lot like a case we didn't yet cover in the GC orchestration code
15:33 timotimo brrt: any reason to go "bt full" on this?
15:33 brrt other than why not, i'm not sure
15:33 timotimo there's a second file in there now
15:33 brrt i'm surprised by how many threads there are
15:34 brrt oh, it's a loop, duh
15:34 timotimo brrt: because of         LABELS = {0x7ffff7afd0fe <MVM_interp_run+142>, 0x7ffff7b0dd31 <MVM_interp_run+68801>,
15:34 brrt oh, well, then not
15:34 brrt anyway, my spider sense is thinking OSR
15:34 brrt probably wrong, but worth a shot
15:37 timotimo now there's a third file in there
15:37 timotimo helpfully that file is right on top
15:38 jnthn nwc10: No, there actually is a patch in master about escape that landed after I started the branch :)
15:38 timotimo could just be that shift of ConcBlockingQueue has to mark the thread as "blocked"
15:39 jnthn timotimo: Ah, it doesn't?
15:39 jnthn It should
15:39 nwc10 people other than you commit stuff‽
15:39 jnthn I know, shocking!
15:39 timotimo hm, actually
15:39 timotimo it seems like it does
15:39 jnthn The project's at risk of having a community or something :P
15:39 timotimo because inside the thread that shows that particular variable, num_threads is 2
15:40 timotimo thread 15 is doing some atomic integer faffing about inside orchestrate.c
15:40 timotimo thread 1 is in gc_enter_from_allocator and has num_threads = 2
15:41 brrt we shouldn't let the bus factor get too high :-o
15:41 timotimo brrt: makes it more expensive for the government to shut our project down
15:42 timotimo thread 1 spins on if (threads && threads != last_starter)   ...  while (MVM_load(&tc->instance->gc_start) > 1);
15:43 timotimo thread 15 is inside the while (MVM_load(&tc->instance->gc_start))
15:45 timotimo oh, would you look at that
15:45 timotimo print tc->instance->threads
15:45 timotimo 0x0
15:45 timotimo who does that?
15:46 jnthn o.O
15:47 timotimo for some reason there's an if(threads && ...) in there
15:47 timotimo so ... do we expect tthat to be null in some cases?
15:47 dalek MoarVM/utf8-c8: 3f40008 | jnthn++ | src/ (11 files):
15:47 dalek MoarVM/utf8-c8: Use UTF-8 C-8 encoding in OS/IO interactions.
15:47 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/3f40008e3d
15:47 timotimo like, if there's only the one main thread?
15:48 * timotimo is definitely not on the GC orchestration bus
15:49 jnthn $ env - ACME=$'L\xe9on' ./perl6-m -e 'say "hi"'
15:49 jnthn hi
15:49 jnthn \o/
15:50 timotimo neato!
15:50 timotimo m: say chr(\xe9)
15:50 camelia rakudo-moar ea87a8: OUTPUT«===SORRY!=== Error while compiling /tmp/2b1CTawTcg␤Undeclared routine:␤    xe9 used at line 1␤␤»
15:50 timotimo m: say chr(0xe9)
15:50 camelia rakudo-moar ea87a8: OUTPUT«é␤»
15:51 timotimo m: say uniname(0xe9)
15:51 camelia rakudo-moar ea87a8: OUTPUT«LATIN SMALL LETTER E WITH ACUTE␤»
15:51 timotimo ah. damn this font.
15:54 brrt timotimo: we're distributed over multiple government areas already, so that makes it pretty hard for one government to shut moarvm down
15:54 brrt except ofcourse by the TPP agreement
16:02 kjs_ joined #moarvm
16:03 dalek MoarVM/utf8-c8: 43377bb | jnthn++ | src/strings/utf8_c8.c:
16:03 dalek MoarVM/utf8-c8: Be a little smarter about undecodables.
16:03 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/43377bb795
16:10 timotimo there is already a single world government. it's the one run by the lizard people
16:12 brrt lousy government at that, with so many civil wars, then
16:13 timotimo yeah
16:13 timotimo well ...
16:13 timotimo really depends on what metric you apply
16:13 timotimo they clearly have something different in mind than "world peace and the continuation of the human race"
16:14 timotimo that's not "typical lizard people stuff"
16:14 timotimo bbiab
16:18 jnthn Darn, that was a silly bug
16:19 dalek MoarVM/utf8-c8: e5a39f6 | jnthn++ | src/strings/utf8_c8.c:
16:19 dalek MoarVM/utf8-c8: Fix forgotten function call rename.
16:19 dalek MoarVM/utf8-c8: review: https://github.com/MoarVM/MoarVM/commit/e5a39f629f
16:20 jnthn $ echo 'say(42)' > $'L\xe9on' && ./perl6-m $'L\xe9on'  42
16:20 jnthn fail paste, that 42 at the end shoulda been on another line
16:20 jnthn But anyways, it works.
16:21 brrt \o/
16:39 dalek MoarVM: 1beea0b | jnthn++ | / (9 files):
16:39 dalek MoarVM: Work in progress UTF-8 Clean-8bit encoding.
16:39 dalek MoarVM:
16:39 dalek MoarVM: For allowing us to round-trip filenames and so forth. Only partially
16:39 dalek MoarVM: implemented so far.
16:39 jnthn Dear dalek, that was a merge :P
16:40 dalek joined #moarvm
16:48 dalek MoarVM: ee75b65 | jnthn++ | src/strings/utf8_c8.c:
16:48 dalek MoarVM: Tweak comment to be lik-er.
16:48 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/ee75b653bd
17:29 kjs_ joined #moarvm
17:35 dalek MoarVM/even-moar-jit: 7d88c3e | brrt++ | / (10 files):
17:35 dalek MoarVM/even-moar-jit: Refactor labelling
17:35 dalek MoarVM/even-moar-jit:
17:35 dalek MoarVM/even-moar-jit: Now all basic blocks receive a label equal to their basic block
17:35 dalek MoarVM/even-moar-jit: index. Because we skip the first basic block, the 'zeroth' label
17:35 dalek MoarVM/even-moar-jit: is available for the graph start, and the end-of-graph label is
17:35 dalek MoarVM/even-moar-jit: simply equal to the number of basic blocks (hence 1 greater than
17:35 dalek MoarVM/even-moar-jit: the latest basic block). Individual instructions are labeled,
17:35 dalek MoarVM/even-moar-jit: if necessary, using an associative array as before. Internal
17:35 dalek MoarVM/even-moar-jit: expression labels are computed during compilation based on the
17:35 dalek MoarVM/even-moar-jit: offset.
17:35 dalek MoarVM/even-moar-jit: review: https://github.com/MoarVM/MoarVM/commit/7d88c3e868
17:36 brrt joined #moarvm
17:38 brrt of course, the real work is now porting the labeling stuff to the epxression jit
17:39 brrt i'm wondering if i can try to make the interface between these things shared
17:41 jnthn brrt++ # the scheme sounds sane
17:41 * jnthn bbl
17:42 brrt :-)
17:44 brrt joined #moarvm
17:45 JimmyZ jnthn: I saw there was a gist about type coercion, I lost the url ...
17:47 kjs_ joined #moarvm
18:01 TimToady a datapoint on the non-complexifiying of Python; at Hackers Guido was showing off $9 Python board that they're gonna distribute a million of to British schoolchildren
18:03 TimToady I've always emphasized community, but Guido has usually aimed more for institutionalizing, which I figured out when he went to work for NIST :)
18:03 nwc10 what's "Hackers" in this context? I have a suspicion that it's pretty hard to Google
18:04 * japhb has to mentally recite "If you don't have anything nice to say, don't say anything at all" WRT institutionalized Python
18:04 nwc10 the board will be this, unless I'm confused: https://en.wikipedia.org/wiki/Micro_Bit
18:04 colomon joined #moarvm
18:05 nwc10 my employer had been at risk of becoming an institution. And those that could survive the environment, institutionalised.
18:05 nwc10 Fortunately, regime change happened.
18:07 japhb My wife once had a contracting job that was so stressful that people literally left the team via heart attack.
18:08 japhb (She was sufficiently mobile to leave of her own volition first, but sheesh.)
18:09 japhb nwc10: If the specs on the wikipedia page are correct, the I/O controller on that board is significantly more powerful than the CPU.
18:11 TimToady nwc10: the 31st Hackers Conference, which was this weekend
18:11 kjs_ joined #moarvm
18:12 * [Coke] still can't find a url even with that. (one major hit, but it's from 2014)
18:12 nwc10 me neither. :-)
18:13 nwc10 that probably shows how cool it is
18:13 TimToady it's invite only
18:14 TimToady and very off-the-record
18:15 TimToady no photos or recordings, by policy
18:20 [Coke] You're probably violating the first rule of hackers conference right now.
18:21 arnsholt Sounds vaguely like Chatham House rules (or whatever the name for it was)
18:25 TimToady [Coke]: undoubtedly :)
18:26 TimToady I don't think the project itself is secret, but perhaps the fact that Guido mentioned it at Hackers is :)
18:27 FROGGS joined #moarvm
18:28 nwc10 no, not secret now. eg http://pyfound.blogspot.co.at/2015/07/bbc-microbit-successfully-launched.html
18:28 nwc10 http://www.bbc.co.uk/mediacentre/mediapacks/microbit
18:29 nwc10 and most intestingly http://ntoll.org/article/story-micropython-on-microbit
18:29 TimToady "batteries not included" :)
18:30 timotimo moarvm has no chance to run on a slim device :|
18:30 timotimo well, moarvm itself does
18:31 timotimo rakudo ... not so much
18:52 * japhb wonders about nqp
18:52 Peter_R joined #moarvm
18:53 japhb Because for the embedded case, that would feel about right.
18:54 vendethiel joined #moarvm
19:02 TimToady JimmyZ: you were looking for https://gist.github.com/anonymous/8efdab238ead35b1d4fa maybe?
19:13 sivoais joined #moarvm
19:25 sivoais joined #moarvm
19:38 TimToady joined #moarvm
20:00 jnthn TimToady: I don't recall you ruling if you agreed with that gist or not ;)
20:07 timotimo jnthn: i was thinking about frames that may have multiple osrpoints and such; wouldn't it make sense to only kick out the osrpoint(s) that actually get hit? because of our logging and stuff?
20:08 timotimo and ... would that work at all? causing an already spesh'd frame to be spesh'd again?
20:09 timotimo and if it's not worthwhile to keep osrpoints around, perhaps we want to put in something that'd re-spesh after 10x as many rounds, so that we catch many more spesh'd callees on the second try
20:11 jnthn How common is having multiple osrpoints?
20:12 timotimo good Q. i was hoping to hear your intuition on it, but i could actually measure it
20:12 jnthn My suspicions is "not highly common"
20:12 timotimo i was thinking something like a little loop to prepare data, then a big loop to do stuff
20:13 timotimo and then the first loop would "steal" the logging phase
20:13 * timotimo does too much thinking with too little measuring
20:13 timotimo it's just that i have no answer for the "we spesh outers before our callees get speshed" situation and it bugs me
20:32 kjs_ joined #moarvm
21:07 Ven_ joined #moarvm
21:08 Ven__ joined #moarvm
21:12 kjs_ joined #moarvm
21:15 synbot6 joined #moarvm
21:21 Ven_ joined #moarvm
21:35 hoelzro http://jcdav.is/2015/11/09/More-JVM-Signal-Tricks/
21:35 hoelzro neat trick!
21:43 lizmat m: "\r\n".ords.say
21:43 camelia rakudo-moar aaf9fc: OUTPUT«(13 10)␤»
21:51 Ven_ joined #moarvm
21:57 konobi okay... i checked with the libuv folks... it seems that the compile error is specific to this build
22:05 konobi ugh... looks like an illumos glitch

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