Camelia, the Perl 6 bug

IRC log for #moarvm, 2013-08-29

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

All times shown according to UTC.

Time Nick Message
00:02 benabik joined #moarvm
00:09 jnap joined #moarvm
00:21 jnap joined #moarvm
00:51 FROGGS joined #moarvm
01:15 dalek MoarVM: f3ceedd | jimmy++ | build/setup.pm:
01:15 dalek MoarVM: Add -lkvm on OpenBSD NetBSD
01:15 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f3ceedd2ce
01:38 FROGGS joined #moarvm
02:01 cognominal joined #moarvm
02:15 dalek MoarVM: 1b7507f | jimmy++ | / (2 files):
02:15 dalek MoarVM: [build] remove CoreFoundation dependency
02:15 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/1b7507fab7
02:19 dalek MoarVM: b391438 | jimmy++ | build/setup.pm:
02:19 dalek MoarVM: fixed darwin build
02:19 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/b391438b96
02:35 dalek MoarVM: 64d89c5 | diakopter++ | nqp-cc/t/moar/ (3 files):
02:35 dalek MoarVM: kill broken tests "fernau"
02:35 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/64d89c502b
02:35 dalek MoarVM: c9b0ea8 | diakopter++ | / (2 files):
02:35 dalek MoarVM: Merge branch 'master' of https://github.com/MoarVM/MoarVM
02:35 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/c9b0ea8663
02:56 dalek MoarVM: a5e9118 | diakopter++ | src/core/exceptions.c:
02:56 dalek MoarVM: note todo
02:56 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a5e911886b
02:58 dalek MoarVM: 36b1491 | diakopter++ | src/core/exceptions.c:
02:58 dalek MoarVM: note todo better
02:58 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/36b14915e5
03:04 FROGGS joined #moarvm
03:10 JimmyZ diakopter: why needs cache? Isn't MVM_exception_backtrace_line called before exit()?
03:10 diakopter tracing is slow
03:10 diakopter could be much faster
03:10 diakopter me likey tracing
03:11 JimmyZ oh
03:11 JimmyZ yes, tracing need it
03:12 JimmyZ diakopter: do you know why the top trace is always unkonw?
03:12 diakopter I'm looking at that now
03:12 JimmyZ *unkown
03:12 JimmyZ great
03:14 JimmyZ so it could be nice to cache it only when  make TRACING=1
03:14 diakopter .tell not_gerd if you didn't build with TRACING=1 but then you do, it doesn't rebuild something so --tracing option doesn't appear in the help and doesn't work
03:14 yoleaux diakopter: I'll pass your message to not_gerd.
03:14 diakopter JimmyZ: heh, okay
03:18 diakopter it's hard to debug tracing using tracing
03:18 JimmyZ :)
03:20 JimmyZ add a printf("==== start =====\n") in interp.c before after call  MVM_exception_backtrace_line helps
03:23 diakopter sweet...   Your Amazon.com order of "Microsoft Sculpt Ergonomic Desktop (L5V-00001)" has shipped!
03:23 diakopter awesome
03:25 JimmyZ that's nice
03:28 JimmyZ Did you have a cherry keyborad?
03:28 diakopter I have the non-wireless predecessor
03:28 diakopter at work and home
03:28 diakopter 7000
03:30 Tene joined #moarvm
03:31 JimmyZ e
04:31 cognominal joined #moarvm
05:04 FROGGS joined #moarvm
05:14 ggoebel2 joined #moarvm
05:37 cognominal joined #moarvm
06:30 FROGGS joined #moarvm
07:54 odc joined #moarvm
08:45 foo_bar_baz joined #moarvm
08:57 donaldh joined #moarvm
09:37 dalek joined #moarvm
12:24 jnap joined #moarvm
12:27 grondilu joined #moarvm
12:55 jnap joined #moarvm
13:05 not_gerd joined #moarvm
13:05 not_gerd O/
13:05 yoleaux 03:14Z <diakopter> not_gerd: if you didn't build with TRACING=1 but then you do, it doesn't rebuild something so --tracing option doesn't appear in the help and doesn't work
13:06 not_gerd .tell diakopter `make tracing` and `make no-tracing` should take care of deleting main.o and core/interp.o
13:06 yoleaux not_gerd: I'll pass your message to diakopter.
13:09 not_gerd https://gist.github.com/gerdr/30f83aabd3c323249f08
13:10 not_gerd is a 20% gcc-only performance improvement to fib(35) worth the effort of adding a goto-based runloop?
13:11 jnthn not_gerd: Depends on the development overhead to maintain it...
13:12 JimmyZ not_gerd: did you see extops.markdown?
13:13 not_gerd jnthn: computed gotos are mostly drop-in (ie could be handled via #ifdefs)
13:13 JimmyZ It is
13:13 JimmyZ not known whether the various C compilers compile these any more efficiently
13:13 JimmyZ than a flat switch/case of all 65536 potential opcodes with all cases
13:13 JimmyZ enumerated (in order).
13:13 jnthn not_gerd: *nod*
13:13 JimmyZ in extops :)
13:13 jnthn not_gerd: I think we want it eventually. I mean, it's a notable win.
13:14 JimmyZ that is: remove bank
13:14 jnthn not_gerd: For now perhaps development velocity is more important and so the current simplicity is worth holding onto for a bit.
13:14 jnthn JimmyZ: The op bank thing's utility was greatly diminished when the ext-ops spec didn't decide to do loading at bank granularity, which was the original plan...
13:15 dalek MoarVM/cgoto: 7ccd7f1 | (Gerhard R)++ | src/core/interp.c:
13:15 dalek MoarVM/cgoto: Implement runloop using computed gotos
13:15 dalek MoarVM/cgoto: review: https://github.com/MoarVM/MoarVM/commit/7ccd7f115e
13:15 not_gerd ^ if anyone wants to play with it
13:16 JimmyZ jnthn: and in core?
13:17 jnthn JimmyZ: There it was largely organizational.
13:17 nwc10 IIRC Sun's compiler also did computed goto
13:17 nwc10 but no which generation of Sun's compiler, as they bought at least one exernal compiler vendor
13:17 not_gerd but MSVC doesn't
13:17 nwc10 however, I think stick with simplicity for now
13:17 not_gerd and with the removal of inline asm, you can't even hack around it
13:17 nwc10 at least until Panda works
13:17 JimmyZ not_gerd: how about clang?
13:18 not_gerd JimmyZ: clang should do it
13:18 nwc10 one of the classic Parrot mistakes was to re-re-redo working code
13:18 JimmyZ not_gerd: that's enough
13:18 nwc10 instead of actually finishing the missing parts
13:18 nwc10 and getting to the big picture
13:18 nwc10 it would be a shame to repeat that
13:19 jnthn nwc10: Yes, exactly.
13:21 JimmyZ jnthn: I have some problems to follow you. Could you tell me the bank will be removed or not, or how to be diminished?
13:21 not_gerd the nice thing about computed gotos is that if you don't do anything fancy, the structure of the switch loop is reproduced
13:21 not_gerd get rid of switch() and default, replace case by labels and break by continue and you're good to go
13:21 * JimmyZ has to improve his english knowledge
13:22 jnthn JimmyZ: I didn't decide if it will be removed yet. I just meant that it is now not as useful as I had expected.
13:22 JimmyZ jnthn: oh, thanks
13:22 jnthn JimmyZ: My original idea was that dynamic ops would just get a bank ID.
13:22 JimmyZ that's much clearer to me
13:23 jnthn JimmyZ: But we didn't end up designing it that way.
13:23 jnthn JimmyZ: So now there's not a very strong reason to keep the banks.
13:23 JimmyZ jnthn: aye
13:23 jnthn At some point we need to go and do an ops cleanup anyway.
13:24 jnthn The numbers need to become stable at some point.
13:24 JimmyZ I guess just needs re-order ops after running rakudo
13:24 jnthn We may want it sooner.
13:24 JimmyZ oh
13:24 jnthn NQP bootstrap is what will force the issue.
13:24 jnthn Once we are storing the stage0 bytecode, we have no choice but to retain at least some bytecode back-compat.
13:24 JimmyZ oh, that's right
13:25 jnthn It's good dogfooding. Anybody who breaks back-compat won't be able to build an NQP. :D
13:25 JimmyZ fair enough
13:30 JimmyZ not_gerd: this branch doesn't work for msvc?
13:30 jnthn MSVC doesn't do computed goto, so no, it won't work
13:30 not_gerd JimmyZ: right now, no
13:31 not_gerd you'd have to add some macros to abstract away the differences between switch and goto
13:36 JimmyZ I'd like +1 to merge cgoto if it doesn't break msvc :P
13:37 not_gerd +/- 0
13:37 not_gerd can easily wait until a more appropriate time
13:37 nwc10 I don't think that it is yet an appropriate time.
13:45 not_gerd did someone fix moar/threads.t?
13:45 not_gerd or did it magically fic itself?
13:45 not_gerd *fix
13:45 JimmyZ not_gerd: it exits before hangs
13:46 JimmyZ diakopter++ added an exits there
13:47 jnthn It's a memory corruption issue at its heart, so sometimes you Get Lucky...
13:48 dalek MoarVM/warnings: f3a8cc1 | (Gerhard R)++ | build/setup.pm:
13:48 dalek MoarVM/warnings: Add -lkvm on FreeBSD
13:48 dalek MoarVM/warnings: review: https://github.com/MoarVM/MoarVM/commit/f3a8cc1321
13:48 dalek MoarVM/warnings: 15fedd9 | jnthn++ | nqp-cc/t/qast/qast_core.t:
13:48 dalek MoarVM/warnings: Add qast_core.t tests, from nqp-jvm-prep.
13:49 dalek joined #moarvm
13:50 dalek joined #moarvm
13:50 not_gerd ^ branch maintenance
13:50 not_gerd I'll keep those alive until someone merges them in ot tells me to stop bothering ;)
13:50 not_gerd *or
13:51 JimmyZ I wouldn't mind merge it
14:13 diakopter .
14:13 yoleaux 13:06Z <not_gerd> diakopter: `make tracing` and `make no-tracing` should take care of deleting main.o and core/interp.o
14:19 FROGGS joined #moarvm
14:25 JimmyZ thread.t hangs in MVM_gc_enter_from_interrupt
14:50 FROGGS joined #moarvm
15:05 benabik joined #moarvm
15:07 FROGGS joined #moarvm
17:08 FROGGS joined #moarvm
17:18 yoleaux joined #moarvm
18:11 yoleaux joined #moarvm
18:17 nwc10 If I try the code example in the README, I get:
18:17 nwc10 $ ../moarvm nqp.moarvm -e 'say("Alive!")'
18:17 nwc10 Not enough positional arguments; needed 1, got 0 line 1 in <unknown>  (op <unknown>, instr 0<unknown>, frame frame_name_3158, compunit nqp.moarvm)
18:17 nwc10 ...
18:17 nwc10 and a lot of backtrace
18:18 nwc10 this is current HEAD
18:18 FROGGS $ ../moarvm nqp.moarvm -e '1'  # same for this?
18:18 nwc10 yes
18:18 FROGGS then it is (still) about nqp's MAIN
18:18 nwc10 OK
18:18 FROGGS jnthn++ said something about it
18:26 donaldh joined #moarvm
18:27 diakopter nwc10: the code example that says "Very soon, you will be able to run some NQP code by doing"?
18:28 diakopter :P
18:28 diakopter that's under the VAPORWARE section
18:28 nwc10 that would be the problem. :-)
18:28 nwc10 nqp nqp-moar-cc.nqp -e "say('Hello, MoarVM')"
18:28 nwc10 works
18:28 FROGGS diakopter: is there something I can do?
18:28 diakopter FROGGS: yes :)
18:29 FROGGS tell me
18:29 diakopter see the irclogs for 2 days ago
18:29 jnthn The next blocker is in code-gen
18:29 jnthn if foo() -> $x { }
18:29 jnthn doesn't yet pass
18:29 nwc10 use more 'condensers';
18:29 FROGGS hmmm
18:29 diakopter FROGGS: I was going to suggest working on the NativeCall stuff actually
18:29 diakopter instead of immediate blockers
18:29 FROGGS jnthn: that does not sound like a LHF :o)
18:30 jnthn FROGGS: Just needs a little hacking on the code-gen :P
18:30 FROGGS *g*
18:30 diakopter the NativeCall reprs and opcodes are much more immediately straightforward... well, sort of.
18:30 jnthn :)
18:30 FROGGS diakopter: I'm not sure I am capable of doing that
18:30 diakopter well you could definitely stub them all out
18:31 FROGGS I will look into the codegen thing in a bit
18:31 diakopter with empty function bodies
18:31 diakopter that'll save someone 30 min or so
18:31 * jnthn will have tuits for the code-gen thing later today also :)
18:32 nwc10 jnthn: I hate to trouble you, but there isn't that much left of today
18:32 jnthn nwc10: It should only be a 15 line diff or so...
18:33 diakopter monkeys could do that in a decade or so
18:33 diakopter if they started now
18:35 diakopter I wish we could be like the browser manufacturers and have major releases every month or two
18:35 diakopter tadzik: work on that for me. kthxbai
18:49 donaldh joined #moarvm
19:03 jnthn bah, I writed enough slajds, I'm gonna fix that code-gen bug
19:04 FROGGS hehe
19:04 FROGGS jnthn++
19:05 FROGGS when reading about ubuntu yesterday I though it must be ultracool to work for your open source project of choice at work
19:06 FROGGS so, when MoarVM Inc is hiring: dont forget me :o)
19:06 jnthn Inc? That sounds so US :P
19:07 FROGGS MoarVM Ltd.
19:07 FROGGS better?
19:07 dalek MoarVM: f408efb | jnthn++ | nqp-cc/src/QASTOperationsMAST.nqp:
19:07 dalek MoarVM: Fix another named/positional confusion.
19:07 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f408efbdd9
19:07 FROGGS :o)
19:08 diakopter jnthn: how in the world did that previously work
19:08 jnthn diakopter: Parrot bug.
19:08 jnthn FROGGS: That sounds so UK :P
19:09 jnthn OK, now for the bug I was going to fix...
19:09 nwc10 MoarVM Gmbh?
19:09 FROGGS jnthn: bah
19:09 FROGGS GmbH
19:10 jnthn That almost looks like grmbl :)
19:10 jnthn At least it looks central-Europe-er :)
19:10 jnthn nwc10: Is it that in Austria too, ooc?
19:11 nwc10 I think so
19:11 FROGGS Ges. mbH or so in Austria
19:16 jnthn Wien is nice :)
19:16 FROGGS hmmm, I was only in Graz, Innsbruck and Salzburg...
19:17 nwc10 Come to Salzburg. 2nd & 3rd November
19:17 jnthn It's confirmed yet?
19:19 nwc10 well, this is public: http://mail.pm.org/pipermail/vi​enna-pm/2013-August/003298.html
19:19 jnthn Cool
19:20 FROGGS ohh, and I was in Nüziders a few times...
19:20 FROGGS :o)
19:21 jnthn What an awesome place name
19:23 FROGGS well, I'd say the only reason to drive to Nüziders is to throw the ring into the fire
19:24 FROGGS but the rest of Austria is nice :o)
19:24 FROGGS (I was a technician from 2004 to 2007/8, and I was forced to drive through Austria and Bavaria mostly)
20:00 dalek MoarVM: 1b4f79d | jnthn++ | nqp-cc/src/QASTOperationsMAST.nqp:
20:00 dalek MoarVM: Implement arg-taking if/unless.
20:00 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/1b4f79d164
20:00 dalek MoarVM: 4a3df63 | jnthn++ | nqp-cc/src/QASTOperationsMAST.nqp:
20:00 dalek MoarVM: Fix some MAST::Label constructions.
20:00 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/4a3df6385a
20:07 FROGGS jnthn: there are more labels missing the :name, I fix these, k?
20:09 FROGGS jnthn: nvm, it was a generated file that wasn't updated yet :o(
20:16 dalek MoarVM: a28cbd7 | jnthn++ | src/6model/reprs/MVMCallCapture.c:
20:16 dalek MoarVM: Oversight in gc_mark for CallCapture.
20:16 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a28cbd7ccc
20:16 dalek MoarVM: 5b01aba | jnthn++ | src/core/interp.c:
20:16 dalek MoarVM: Make atkey and atpos handle type objects better.
20:16 dalek MoarVM:
20:16 dalek MoarVM: They now return NULL instead of trying to do the associative access
20:16 dalek MoarVM: and blowing up. This is in line with semantics on other backends, and
20:16 dalek MoarVM: enables QAST::VarWithFallback's generated code to work correctly.
20:16 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/5b01aba386
20:17 jnthn Darn, now a SEGV in MVM_gc_collect_free_nursery_uncopied
20:17 diakopter oopsie
20:21 FROGGS they say an engine of a car goes better directly before blowing up... maybe it is here there other way around?
20:29 jnthn It's nothing immediately obvious either
20:35 donaldh joined #moarvm
20:37 diakopter jnthn: it appeared just after the last commit?
20:38 diakopter jnthn: how much more bytecode is it running since then
20:38 diakopter also, how in the world are we getting a gc run already
20:43 diakopter sorry if these aren't helpful questions :)
20:48 jnthn diakopter: Oh, I think we already survive some GC runs :)
20:48 jnthn Just not this one.
20:48 diakopter ... in how many milliseconds..
20:48 jnthn diakopter: It appeared after the last commit because we got further than before.
20:49 jnthn diakopter: The last two actually were out of discovery order...
20:51 jnthn diakopter: So, I fixed the marking one a moment ago
20:51 jnthn diakopter: The issue now is in the post-GC scan through the old nursery.
20:56 jnthn It's in the second GC run, anyways.
21:01 dalek MoarVM/nativecall: d27ef12 | (Gerhard R)++ | / (13 files):
21:01 dalek MoarVM/nativecall: Import NativeCall-related Parrot code and do some basic translation
21:01 dalek MoarVM/nativecall: review: https://github.com/MoarVM/MoarVM/commit/d27ef1249f
21:01 diakopter .tell not_gerd make sure to start with CArray
21:02 jnthn CPoiner is easier... ;)
21:02 diakopter .tell yoleaux when you come back, please deliver the messages
21:02 arnsholt I was about to say the same
21:02 diakopter jnthn: you told me CArray was more up-to-date with the right things
21:02 arnsholt CPointer is the REPR with the least amount of leg-work
21:03 jnthn Bizzarely, the thing we fail on - an MVMObject with a null STable pointer - has a forwarder that points to an MVMSTable...
21:03 arnsholt And CPointer doesn't really have to deal with the whole compose stuff
21:04 diakopter jnthn: but how do you know it's an MVMObject if it doesn't have an STable pointer
21:04 diakopter sounds like corrupt instead
21:06 diakopter (I can't think of a way the STable pointer could be null'd and the rest of the object still be reliable data)
21:06 * diakopter wonders if jnthn finds the gc debug output helpful
21:08 jnthn diakopter: The flags claim it is...
21:08 jnthn diakopter: Well, are zero...
21:08 diakopter that's what I'm saying
21:08 jnthn diakopter: It may well be junk.
21:08 diakopter that's what I'm saying
21:08 diakopter :D
21:09 diakopter .tell not_gerd hopefully you're reading the irclog...
21:09 diakopter .tell not_gerd I don't know why I'm talking to an absent yoleaux
21:10 jnthn Indeed, the forwarder pointer points into fromspace, not tospace.
21:10 diakopter O_O
21:10 * diakopter is having trouble imagining how that could've happened
21:11 jnthn Well, I mean, that makes it more likely it's junk.
21:11 diakopter .tell not_gerd at least search the irclogs for CArray
21:11 diakopter .tell not_gerd you'll see a previous discussion I had with jnthn on it
21:12 diakopter jnthn: maybe the forwarder pointer wasn't reset from the last time?
21:12 * diakopter is grasping at straws
21:13 diakopter hm, presentation to sr. mgmt in 45 min. should probably prepare a slide or two.
21:14 jnthn diakopter: That should be impossible as we copy, *then* set the pointer
21:15 diakopter hrm
21:15 diakopter jnthn: another topic to bug you on
21:19 diakopter jnthn: nm, I'll get back to you on that
21:23 jnthn ok
21:23 * jnthn found a bug, but it didn't help to fix it
21:24 jnthn (didn't really expect it would...)
21:25 jnthn ohhh
21:25 jnthn But I think I know what it is ;(
21:25 jnthn *:(
21:25 jnthn Darn.
21:25 diakopter no?
21:25 FROGGS I'd think it is good that you know what it is
21:25 diakopter jnthn: what did I do this time? :D
21:26 FROGGS except if you dont
21:26 jnthn Yeah but I dunno how on earth to fix it...
21:26 FROGGS ohh
21:26 diakopter i'm good at those
21:26 jnthn diakopter: Nothing...
21:26 jnthn Well, here's what I think it is.
21:26 jnthn We store object size in the STable.
21:26 jnthn Which is OK until we do a mixin.
21:26 jnthn Which causes an STable switch.
21:26 diakopter object size should probably be a repr function
21:27 jnthn Now the allocated blob of memory in the nursery is different from the size reported on the st.
21:28 jnthn Object size maybe wants to go in the object header...
21:28 jnthn Grrr.
21:28 diakopter object header or collectable header?
21:28 jnthn May as well be collectable
21:29 * jnthn looks at how that struct looks
21:29 diakopter it looks back at you ;)
21:29 jnthn MVMuint32 owner;
21:29 jnthn MVMuint32 flags;
21:30 jnthn We're only up to 6 flags so far.
21:30 diakopter we really should make owner a pointer instead of an index
21:30 jnthn It's a thread ID, no?
21:30 diakopter yeah but that's not useful
21:30 diakopter anymore
21:30 diakopter b/c they're not stored in an array
21:30 jnthn But they know their ID...
21:31 diakopter right, but comparing pointers is faster than a dereference/load
21:31 diakopter I guess that's a microoptimization
21:31 jnthn Well, but it makes the collectable header bigger
21:31 jnthn How much we fit in cache is more important, in general, then how many instructions we execute.
21:32 jnthn 'cus a cache miss is an order of magnitude per level...
21:32 diakopter hm oh
21:32 jnthn Anyway, we don't need 32 bits for flags
21:32 jnthn And we won't have anything bigger than 16 bits in size, I guess...
21:32 diakopter heh.
21:32 jnthn I mean, bigger than a byte size we can store in 16 bits.
21:32 diakopter heh.
21:32 jnthn That'd be a huge object... :)
21:33 tadzik diakopter: what am I, a browser manufacturer or something? ;)
21:33 diakopter yes
21:33 jnthn diakopter: It'd involve a P6opaque with over 8000 attributes. :)
21:34 jnthn Anyway, we could steal 16 of those bits for object size
21:34 diakopter remember we were going to reserve some of them for repr flags
21:34 jnthn If we do make thread ID a pointer then we can up the size and flags back to 32 bits...
21:35 jnthn We still have 10 flags free.
21:35 diakopter 10 in what base? ;)
21:35 jnthn in your base :P
21:35 jnthn um, 10 :)
21:35 diakopter 10 in what base? ;)
21:36 jnthn We have 16 bits, and we have 6 flags :)
21:36 diakopter sorry, I only understand unary.  00000000000 is decimal 10
21:38 FROGGS 10 flags == 10 bits
21:38 diakopter how many of those flags are rainbow
21:39 FROGGS just the rainbow one
21:42 jnthn Anyway, will look at that fix tomorrow
21:42 yoleaux joined #moarvm
21:52 dalek MoarVM/nativecall: e4c9d7a | (Gerhard R)++ | src/6model/ (2 files):
21:52 dalek MoarVM/nativecall: Make CPointer.c compile (no other guarantees)
21:52 dalek MoarVM/nativecall: review: https://github.com/MoarVM/MoarVM/commit/e4c9d7a668
21:58 dalek MoarVM: e87b8f2 | jnthn++ | src/6model/reprs/P6opaque.c:
21:58 dalek MoarVM: Missing real_data calls in P6opaque.
21:58 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/e87b8f2102
23:08 FROGGS joined #moarvm
23:35 diakopter not_gerd: you around?

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