Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2015-01-09

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

All times shown according to UTC.

Time Nick Message
08:27 dalek joined #moarvm
08:28 zakharyas joined #moarvm
09:13 rurban joined #moarvm
09:21 JimmyZ morning, jnthn
09:22 JimmyZ jnthn: https://gist.github.com/zhuomingliang/78fa5660ad16d2d5a890  is it right? added 3 MVM_ASSIGN_REF
09:24 jnthn Certainly ot.
09:24 jnthn *not
09:24 jnthn Well, the first one you added is obviously wrong
09:25 jnthn Just by looking at the pointer type.
09:25 JimmyZ oh, yes
09:25 jnthn MVMObject ** is not a GC-able thing, it's a C array of GC-able things.
09:25 jnthn And I'm not sure the extra whitespace is warranted.
09:25 JimmyZ and how about the other two?
09:26 kjs_ joined #moarvm
09:26 jnthn The lifting of the STABLE(obj) is OK, though, but elsewhere in the code we normally just call such vars "st"
09:27 jnthn Second one is certainly wrong too
09:27 jnthn MVMFrame * is *not* a GC-able thing either.
09:27 jnthn The static_info one is correct, however.
09:28 jnthn Though note the cast to MVMObject* could go away in favor of something more like sf->common.header
09:28 JimmyZ oh, it's MVMStaticFrame!
09:29 jnthn Yes, MVMStaticFrame is an MVMObject.
09:29 jnthn But MVMFrame is not.
09:29 JimmyZ yeah
09:29 jnthn So anyway, only one out of three of these should be added. :)
09:30 JimmyZ I still don't  why sf->common.header is better?
09:30 jnthn Because it avoids a cast.
09:31 JimmyZ jnthn: http://irclog.perlgeek.de/moarvm/2015-01-01  I added some explaintion
09:35 jnthn Yeah, I'm still uncomfortable with the idea. I think partly because it makes termination harder to reason about...
09:39 JimmyZ but call something like optimize_set etc is not good too :(
09:40 JimmyZ everywhere...
09:41 jnthn I'm not sure we should be doing that.
10:07 dalek MoarVM: 5149e5d | (Jimmy Zhuo)++ | src/core/interp.c:
10:07 dalek MoarVM: small refactor, and add a missing MVM_ASSIGN_REF
10:07 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/5149e5d681
10:09 jnthn JimmyZ: Oh, that patch does something bad.
10:10 jnthn You can't lift the dereferences of obj and ctx above the things thta check for type and concreteness.
10:10 jnthn Otherwise we can get segfaults.
10:11 jnthn (that's in the forceouterctx bit)
10:13 JimmyZ hmm, I did make spectest, maybe we have not test to cover it
10:15 JimmyZ you mean ((MVMCode *)obj)->body.outer = context; ?   I tought it's safe if there were eqv
10:16 JimmyZ *thought
10:16 jnthn No
10:16 jnthn MVMFrame *orig     = ((MVMCode *)obj)->body.outer;
10:17 jnthn That
10:17 jnthn You can't deref obj until *AFTER* if (REPR(obj)->ID != MVM_REPR_ID_MVMCode || !IS_CONCRETE(obj)) {
10:17 jnthn Otherwise heck knows what memory you're going to be trying to access.
10:17 JimmyZ ah, I didn't seee it ..
10:17 jnthn You've fixed one bug and introduced 2 new ones :/
10:17 jnthn We were better off before.
10:18 JimmyZ 2 ?
10:19 jnthn Well, 3 if we're going to count all 3 memory accesses you lifted above the if statements :P
10:19 JimmyZ yeah
10:20 nwc10 hat trick!
10:21 jnthn Anyway, please be careful when re-ordering things. It's nice when we can get things intialized at their point of declaration, and certainly I structure code that way when it's possible, but often correctness doesn't allow it.
10:23 dalek MoarVM: a112b47 | (Jimmy Zhuo)++ | src/core/interp.c:
10:23 dalek MoarVM: fix potential segfault
10:23 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a112b47896
10:23 jnthn Looks better. JimmyZ++
10:26 JimmyZ Thanks
10:29 FROGGS_ jnthn: when do you think you'll have some time to review and discuss a moarvm branch?
10:29 jnthn FROGGS_: Next week.
10:29 FROGGS_ jnthn: will perhaps take 15 to 30 minutes in total I guess
10:30 jnthn (Will have time on Mon or Tue.)
10:30 FROGGS_ jnthn: what's your timezone offset these days?
10:30 jnthn Yours + 1.
10:30 FROGGS_ ahh, that's quite nice :o)
10:31 jnthn Yeah, and back to same as you from Mon :)
10:31 jnthn Well, very late Sun, but I'll probably only be useful for sleeping by then :)
10:31 FROGGS_ :o)
10:32 FROGGS_ okay, then I'll ping you monday afternoon/evening... it is about IO/open/separators
10:33 jnthn OK :)
10:44 jnthn Gone for most of day &
12:01 * FROGGS_ .oO( enjoying the Most of the day )
12:56 zakharyas joined #moarvm
13:46 kjs_ joined #moarvm
13:47 donaldh joined #moarvm
14:12 zakharyas joined #moarvm
15:09 zakharyas1 joined #moarvm
17:21 pyrimidine joined #moarvm
18:13 FROGGS__ joined #moarvm
18:17 kjs_ joined #moarvm
18:36 tgt joined #moarvm
18:39 tgt joined #moarvm
18:43 rurban joined #moarvm
19:20 kjs_ joined #moarvm
20:01 tgt joined #moarvm
20:20 jnthn FROGGS__: That comment was a bridge too far... :P
20:28 FROGGS__ but I'd do it again :o)
20:55 TimToady this is going to be the longest day...
20:56 jnthn Gee, the shortest was only a few weeks ago...
20:56 * lizmat wonders how she can sneak in "battle of the bulge" in this conversation
20:57 TimToady Nuts!
20:57 lizmat hmmm.... the order is wrong: first the longest day, then a bridge too far, then the battle of the bulge
21:00 TimToady some company probably holds a patton on the correct order
21:01 jnthn That sounds overly general...
21:02 TimToady I thought that was, like, Ike...
21:24 kjs_ joined #moarvm
22:23 donaldh joined #moarvm

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