Camelia, the Perl 6 bug

IRC log for #moarvm, 2013-08-24

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

All times shown according to UTC.

Time Nick Message
00:19 FROGGS joined #moarvm
01:28 FROGGS_ joined #moarvm
01:31 jnap joined #moarvm
01:55 JimmyZ Good morning
01:55 JimmyZ grondilu: linenoise is a submodule
01:55 JimmyZ .tell grondilu linenoise is a submodule
01:55 yoleaux JimmyZ: I'll pass your message to grondilu.
02:02 grondilu ok but 3rparty/linenoise is empty.  Shouldn't it include stuff?
02:02 yoleaux 01:55Z <JimmyZ> grondilu: linenoise is a submodule
02:04 grondilu (well, it's empty in master anyway, I guess it's supposed to link to https://github.com/MoarVM/linenoise or something?)
02:05 JimmyZ grondilu: yes, see http://book.git-scm.com/5_submodules.html
02:10 ggoebel joined #moarvm
02:12 diakopter JimmyZ: you should still put a note about it in the main readme
02:14 * grondilu runs git submodule update, but nothing happens.  He must have missed something.
02:14 JimmyZ git submodule init
02:15 grondilu ok, that does work.
02:19 FROGGS joined #moarvm
02:27 JimmyZ diakopter: my crappy english ...
03:13 dalek MoarVM: cc56034 | jimmy++ | 3rdparty/linenoise:
03:13 dalek MoarVM: Pull in latest Linenoise
03:13 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/cc56034411
05:30 FROGGS joined #moarvm
06:00 dalek Heuristic branch merge: pushed 20 commits to MoarVM/dll by gerdr
06:14 dalek MoarVM: 6d4f765 | (Gerhard R)++ | build/Makefile.in:
06:14 dalek MoarVM: Auto-update submodules when building
06:14 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/6d4f765bc0
06:26 JimmyZ not_gerd: ar: 3rdparty/linenoise/*.o: No such file or directory
06:26 JimmyZ I'm curious why it worked before
06:29 dalek MoarVM: 9fd2429 | (Gerhard R)++ | build/Makefile.in:
06:29 dalek MoarVM: Avoid rebuilding everything due to submodule update.
06:29 dalek MoarVM:
06:29 dalek MoarVM: The factoring isn't right yet, but it should work well enough
06:29 dalek MoarVM: for now.
06:29 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/9fd24292c6
06:34 JimmyZ not_gerd: nerver mind, it works again, I don't why
06:49 diakopter .tell jnthn give me another hour or two from now to finish; pushing progress in an hour or so
06:49 yoleaux diakopter: I'll pass your message to jnthn.
06:59 dalek MoarVM: bf4f577 | (Gerhard R)++ | build/Makefile.in:
06:59 dalek MoarVM: Revert "Avoid rebuilding everything due to submodule update."
06:59 dalek MoarVM:
06:59 dalek MoarVM: This reverts commit 9fd24292c60c71824d9c5eda424efa4c73516a9d.
06:59 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/bf4f5772fc
06:59 dalek MoarVM: 708369d | (Gerhard R)++ | build/Makefile.in:
06:59 dalek MoarVM: Revert "Auto-update submodules when building"
06:59 dalek MoarVM:
06:59 dalek MoarVM: This reverts commit 6d4f765bc0b56bafd7132b3b9c384dd9dd8d4b4a.
06:59 dalek MoarVM:
06:59 dalek MoarVM: I'm not smart enough to make it work for all edge cases this
06:59 dalek MoarVM: early in the morning.
07:01 not_gerd joined #moarvm
07:01 not_gerd o/
07:01 not_gerd not_gerd--
07:01 not_gerd 4 bogus commits
07:02 not_gerd "hey, this looks like a simple fix - let's tryit and push"
07:39 dalek MoarVM: 4415e31 | (Gerhard R)++ | Configure.pl:
07:39 dalek MoarVM: Let Configure.pl update submodules.
07:39 dalek MoarVM:
07:39 dalek MoarVM: It's not perfect, but I failed to come up with anything better.
07:39 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/4415e31e12
07:48 JimmyZ good morning, not_gerd
07:51 FROGGS joined #moarvm
07:52 diakopter o\
07:53 FROGGS o/
07:53 not_gerd /o\
07:53 FROGGS \o/
07:54 not_gerd this submodule stuff is tricky
07:55 dalek MoarVM/serialize: c46bed7 | diakopter++ | src/ (3 files):
07:55 dalek MoarVM/serialize: serialization wip.  DOES NOT BUILD.  about 1/3 ported from parrot-ese to moar-isms...
07:55 dalek MoarVM/serialize: review: https://github.com/MoarVM/MoarVM/commit/c46bed7181
07:58 FROGGS coool!
07:58 FROGGS diakopter++
07:58 diakopter it occurs to me that those array getters could actually need to pull from inlined/native int/num arrays
08:01 diakopter we'll see
08:02 diakopter https://github.com/MoarVM/MoarVM/com​mit/c46bed7181#commitcomment-3936131
08:02 diakopter ^ please see note
08:02 diakopter could someone do that little chore
08:03 woolfy joined #moarvm
08:05 diakopter not_gerd++ thanks for fixing that initialization missing
08:05 diakopter I was indeed seeing sporadic wrong instruction numbers
08:09 FROGGS diakopter: I dont understand the task "could someone back out the changes below here for me? (accidental replace-all case-insensitive) oops."
08:10 diakopter the places below that line where I replaced s/string/MVMString/ig
08:10 diakopter reverse the change :)
08:11 FROGGS ahh
08:11 grondilu joined #moarvm
08:12 diakopter .ask jnthn take a look at https://github.com/MoarVM/MoarVM/com​mit/c46bed7181#commitcomment-3936143
08:12 yoleaux diakopter: I'll pass your message to jnthn.
08:15 dalek MoarVM/serialize: 2da07e1 | (Tobias Leich)++ | src/6model/serialization.c:
08:15 dalek MoarVM/serialize: s/MVMString/string/ as requested by https://github.com/MoarVM/MoarVM/com​mit/c46bed7181#commitcomment-3936131
08:15 dalek MoarVM/serialize: review: https://github.com/MoarVM/MoarVM/commit/2da07e1084
08:16 diakopter FROGGS: thank you :)
08:17 FROGGS you're welcome :o)
08:18 dalek MoarVM: 9c96297 | (Gerhard R)++ | src/core/ (3 files):
08:18 dalek MoarVM: Fix some const-related warnings
08:18 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/9c96297a95
08:33 FROGGS diakopter: with this patch it goes a little further, is it sane? https://gist.github.com/FR​OGGS/5221e53f8f53d60603e0
08:34 not_gerd FROGGS: you need to use calloc() to allocate zeroed memory
08:37 not_gerd it shoudn not matter assuming we manually initialize all fields of writer, though
08:38 not_gerd (which it looks like we do)
08:42 FROGGS k
08:42 FROGGS brb
08:42 FROGGS feel free to patch it :o)
08:42 FROGGS (branch serialize that is)
09:02 dalek MoarVM/dll: b6af8ff | jimmy++ | 3rdparty/linenoise:
09:02 dalek MoarVM/dll: Pull in latest Linenoise
09:02 dalek MoarVM/dll: review: https://github.com/MoarVM/MoarVM/commit/b6af8ff610
09:02 dalek MoarVM/dll: f9ef1a6 | (Gerhard R)++ | Configure.pl:
09:02 dalek MoarVM/dll: Let Configure.pl update submodules.
09:02 dalek MoarVM/dll:
09:02 dalek MoarVM/dll: It's not perfect, but I failed to come up with anything better.
09:02 dalek MoarVM/dll: review: https://github.com/MoarVM/MoarVM/commit/f9ef1a640c
09:02 dalek MoarVM/dll: 633136b | (Gerhard R)++ | / (3 files):
09:02 dalek MoarVM/dll: More stuff we need to eventually build a shared lib
09:02 dalek MoarVM/dll: review: https://github.com/MoarVM/MoarVM/commit/633136bc3c
09:06 jnthn o/
09:06 yoleaux 06:49Z <diakopter> jnthn: give me another hour or two from now to finish; pushing progress in an hour or so
09:06 yoleaux 08:12Z <diakopter> jnthn: take a look at https://github.com/MoarVM/MoarVM/com​mit/c46bed7181#commitcomment-3936143
09:07 BabsSeed Hey all, got pretty much everything I needed to get done, done. Now I have time to get properly involved.
09:08 jnthn .tell diakopter hash needs rooting in https://github.com/MoarVM/Moa​rVM/commit/c46bed7181#L1R368
09:08 yoleaux jnthn: I'll pass your message to diakopter.
09:09 jnthn .oO( wtf is yol water? )
09:11 not_gerd jnthn: is it OK if I periodically merge the dll branch into master so it actually gets tested on some other systems?
09:11 not_gerd (ans so people can start annotating functions as public/private)
09:11 not_gerd * and
09:11 jnthn not_gerd: yes, provided you have a reasonable level of confidence it won't break the build.
09:20 dalek MoarVM: cd79a93 | (Gerhard R)++ | / (3 files):
09:20 dalek MoarVM: Start logic for shared libs as well as various cleanups
09:20 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/cd79a93c96
09:20 dalek MoarVM: d01c00b | (Gerhard R)++ | src/moarvm.h:
09:20 dalek MoarVM: Add MVM_PUBLIC/MVM_PRIVATE with dummy condition for now
09:20 not_gerd BabsSeed: welcome back
09:20 dalek joined #moarvm
09:20 not_gerd BabsSeed: testing the build on non-windows systems would be appreciated
09:21 not_gerd if you're looking for something slightly more interesting, the serialize branch needs to be made to compile
09:22 JimmyZ linking libmoarvm.a
09:22 JimmyZ linking moarvm
09:22 JimmyZ gcc: libmoarvm.a: No such file or directory
09:23 BabsSeed not_gerd: Will test later, is it the stable or a specific pull req?
09:26 JimmyZ INK : fatal error LNK1104:
09:26 JimmyZ NMAKE : fatal error U1077:
09:27 jnthn JimmyZ: Hm, it build under MSVC just now for me, fwiw
09:27 JimmyZ *LINK
09:27 FROGGS joined #moarvm
09:29 not_gerd JimmyZ: generated Makefile for the gcc fail?
09:30 JimmyZ not_gerd: yes
09:30 not_gerd JimmyZ: can I see it?
09:31 not_gerd BabsSeed: I'm working in the dll branch right now, but will merge that into master from time to time
09:31 JimmyZ hmm, MSVC:
09:31 JimmyZ linenoise.lib(linenoise.obj) : warning LNK4204:
09:31 JimmyZ got a moarvm.exe though
09:32 not_gerd JimmyZ: that's probably some race condition
09:32 not_gerd from time to time, it doesn't pick up the debug information
09:32 not_gerd remove linenoise.lib and nmake again and it'll probably work
09:33 JimmyZ good ,works
09:34 not_gerd JimmyZ: I don't see why building with gcc should fail :(
09:36 JimmyZ not_gerd: https://gist.github.com/zhuomingliang/6327131
09:40 JimmyZ ar rcs /out:libmoarvm.a
09:40 dalek MoarVM: 4908b40 | (Gerhard R)++ | build/setup.pm:
09:40 dalek MoarVM: Add missing s/CMDOUT/NOOUT/
09:40 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/4908b4003c
09:40 not_gerd JimmyZ: yes, that should be it
09:42 JimmyZ not_gerd: https://gist.github.com/zhuomingliang/6327152 another gist
09:42 dalek MoarVM: 895754b | (Gerhard R)++ | build/Makefile.in:
09:42 dalek MoarVM: Fix incorrect use of hardcoded /out
09:42 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/895754b32c
09:43 not_gerd JimmyZ: ^^ that should have done it
09:44 JimmyZ ar rcs libmoarvm.a
09:44 JimmyZ works, not_gerd++
09:46 JimmyZ how to make shared build?
09:47 JimmyZ got it
09:47 not_gerd JimmyZ: doesn't work yet
09:47 JimmyZ I got a so
09:48 not_gerd well, the linux stuff might actually work
09:48 not_gerd for MSVC, we need MVM_PUBLIC annotations
09:48 JimmyZ oh
09:48 JimmyZ microsoft are evil :P
09:49 not_gerd you actually can pass --shared on Windows - but it'll just rename the archive ;)
10:03 lizmat joined #moarvm
10:06 dalek MoarVM: 6e2ea8e | (Gerhard R)++ | build/Makefile.in:
10:06 dalek MoarVM: Provide clean, realclean and distclean targets.
10:06 dalek MoarVM:
10:06 dalek MoarVM: Not as useful as it could be as MSVC will complain about
10:06 dalek MoarVM: missing debugging information when rebuilding after a clean.
10:06 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/6e2ea8ec0e
10:13 dalek MoarVM: f7613a0 | jnthn++ | / (8 files):
10:13 dalek MoarVM: SC op cleanup, and add various missing ones.
10:13 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f7613a0c1b
10:23 dalek MoarVM: a3c1711 | jnthn++ | nqp-cc/nqp-src/QASTNodes.nqp:
10:23 dalek MoarVM: Sync QAST::Var node with latest.
10:23 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/a3c1711993
10:25 dalek MoarVM: 0b2eb68 | jnthn++ | nqp-cc/nqp-src/NQP.nqp:
10:25 dalek MoarVM: Use correct setting, regex library.
10:25 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/0b2eb6835f
11:00 not_gerd left #moarvm
11:16 woolfy joined #moarvm
11:22 dalek MoarVM: ab1ef8f | jnthn++ | src/6model/reprs/MVMContext.c:
11:22 dalek MoarVM: Implement MVMContext.exists_key.
11:22 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/ab1ef8fce1
11:25 jnthn So many little pieces :)
11:37 lizmat joined #moarvm
11:47 JimmyZ :-)
11:48 lizmat joined #moarvm
12:01 not_gerd joined #moarvm
12:03 not_gerd jnthn: https://github.com/perl6/nqp/blob/master/​src/vm/parrot/6model/serialization.c#L57
12:03 not_gerd do these still make sence on MoarVM?
12:03 not_gerd and where should they be cached?
12:03 not_gerd * sense
12:05 JimmyZ not_gerd: these are pmc realted
12:05 JimmyZ not need for moarvm
12:05 JimmyZ iirc
12:06 jnthn not_gerd: No, they make no sense at all :)
12:07 not_gerd so anything that's not int/str/num is just a 6model object?
12:07 jnthn Yes
12:07 jnthn however, in places you'll need to look at a context ref
12:07 jnthn oops
12:07 jnthn at a REPR type
12:08 jnthn MVMContext being an example :)
12:22 * JimmyZ wonders why "(op <unknown>, instr 0<unknown>"
12:22 JimmyZ why unknown :)
12:23 jnthn dunno :)
12:25 lizmat maybe something is missing
12:25 jnthn Most I'm just glad we have working-enough backtraces to quickly find the easy todos/bugs now :)
12:37 JimmyZ hmm, look like some bug in if %h -> $lib { } ..., and $lib isn't passed
12:38 jnthn Yeah
12:38 jnthn --no-regex-lib gets around that for now though
12:38 jnthn And gives the next interesting problem. :)
12:38 JimmyZ oh
12:38 jnthn But yes, do need to fix the if/unless code-gen :)
12:39 JimmyZ see it
12:43 dalek MoarVM/serialize: 26bafc3 | (Gerhard R)++ | src/6model/serialization.c:
12:43 dalek MoarVM/serialize: Fix boring stuff in 6model/serialization.c
12:43 dalek MoarVM/serialize: review: https://github.com/MoarVM/MoarVM/commit/26bafc3fe3
12:44 not_gerd more interisting bits will have to wait until I actually have the time to read some moarvm code
12:51 not_gerd jnthn: should there be a MVM_repr_push_p() for arbitrary pointers?
12:51 not_gerd converting an MVMSTable* to MVMObject* to store it of course works, but doesn't really feel right
12:52 jnthn um
12:52 jnthn You can't store an MVMSTable that way
12:53 jnthn They're not a kind of MVMObject. It'll segfault soon enough. :)
12:53 not_gerd jnthn: well, serialization.c does ;)
12:53 jnthn No, no
12:53 jnthn It pushes them into a PMC array :)
12:53 jnthn STables are the one thing in MoarVM that is GC-able yet isn't an MVMObject :)
12:53 jnthn The serialization context handles them differently as a result.
12:53 jnthn Best bet is just to keep a C array of them...
12:54 jnthn (The JVM port has a similar situation, fwiw.)
12:55 not_gerd so stables_list shouldn't be an MVMObject but some VM internal structure (possibly just an array we grow as necessary)
12:55 dalek MoarVM: 853d1ea | jnthn++ | src/6model/6model.c:
12:55 dalek MoarVM: Add missing null check in istype.
12:55 dalek MoarVM:
12:55 dalek MoarVM: Brings it in line with other impls.
12:55 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/853d1ea365
12:55 dalek MoarVM: 485abe7 | jnthn++ | src/6model/reprs/MVMIter.c:
12:55 dalek MoarVM: Support iterating MVMContext.
12:55 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/485abe793f
12:56 jnthn not_gerd: yes
12:57 not_gerd jnthn: what do you think about keeping such things power-of-2 sized (so we don't need to keep an explicit size)?
12:57 not_gerd if the array's load hits a power of 2, double size
12:57 not_gerd or should that grow linerly with some fixed increment?
12:57 not_gerd *linearly
12:58 jnthn doubling the size is probably a fine way to grow it. These lists are only as long as there are types declared in the source file
13:00 not_gerd the same applies to the other _list members of MVMSerializationWriter?
13:02 * not_gerd should probably just go look how the JVM does it
13:03 jnthn not_gerd: objects and codes are certainly MVMObject
13:04 jnthn contexts probably not
13:04 BabsSeed not_gerd: I'm installing Ubuntu on my desktop right now, it'll compile stuff a lot faster than that VPS.
13:04 dalek MoarVM: 0045428 | jnthn++ | src/core/coerce.c:
13:04 dalek MoarVM: Fix how radix returns results.
13:04 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/00454286cb
13:05 not_gerd jnthn: but should they be kept in a 6model-based listy thing that we access via repr_push?
13:05 not_gerd or ust some glorified C array that gros as needed?
13:05 not_gerd *just
13:05 BabsSeed Are there any API docs for moarvm or is the source the best documentation? :)
13:06 jnthn No API docs really, no. Some design docs in docs/ :)
13:06 JimmyZ and in nqp/docs also
13:06 BabsSeed jnthn: Which part of the project is most important to document? That's something I could do.
13:07 BabsSeed I get a lot of time on buses/planes without net access. :P
13:07 not_gerd BabsSeed: you can cross-reference https://github.com/perl6/nqp/tree/master/src/vm to see how other backends do things
13:07 JimmyZ BabsSeed: some docs are in nqp/docs :)
13:08 JimmyZ they are important
13:09 jnthn BabsSeed: Good question. I think the ops are currently undocumented...though may be more worthwhile documenting nqp:: ops in general...
13:10 not_gerd jnthn: on JVM, the SerializationWriter apparently doesn't keep its own list of STables
13:10 jnthn BabsSeed: Perhaps most useful could be an overview of what can be found where in the source tree, though. That's probably one of the more useful things to have for new contributors...
13:10 not_gerd jnthn: instead, it uses sc.root_stables
13:10 jnthn not_gerd: Oh...
13:11 jnthn not_gerd: heh. On Parrot...
13:11 jnthn writer->stables_list        = stables;
13:11 jnthn Where stables is
13:11 jnthn GETATTR_SerializationContext_root_stables(interp, sc, stables);
13:11 jnthn :)
13:11 jnthn So it's just a pointer to the list from the SC :)
13:12 jnthn So, two impls so far say it's safe to use the one inside the SC. I can't think of any reason why it wouldn't be OK on Moar too. So I'd do that.
13:13 not_gerd so on Parrot we just cache the value to avoid going through Parrot API ;)
13:13 not_gerd if I remember my parrot correctly, the GETATTR_* stuff doesn't have overhead
13:13 jnthn Yeah, just a pain to type:)
13:15 jnthn Aww. Well, that brings the fun to an end.
13:16 jnthn The next segfault happens in the GC.
13:16 JimmyZ :P
13:16 JimmyZ GC will be a pain
13:19 jnthn Well, what's especially odd is it's one of the permroots that's doing it.
13:19 * JimmyZ guess jnthn++ fixed "MVMArray: atpos expected num register"
13:20 jnthn aye
13:21 dalek MoarVM: 6b4c98c | jnthn++ | src/ (2 files):
13:21 dalek MoarVM: Simplification.
13:21 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/6b4c98c847
13:21 not_gerd jnthn: should I add MVM_sc_push_stable() to avoid MVM_sc_set_stable(, ...->num_stables) ?
13:24 jnthn not_gerd: Sounds sane.
13:35 dalek MoarVM/serialize: 43c534c | (Gerhard R)++ | src/6model/sc.c:
13:35 dalek MoarVM/serialize: Implement MVM_sc_push_stable()
13:35 dalek MoarVM/serialize: review: https://github.com/MoarVM/MoarVM/commit/43c534c12e
13:35 dalek MoarVM/serialize: 95f02b1 | (Gerhard R)++ | src/6model/s (3 files):
13:35 dalek MoarVM/serialize: Remove stables_list from MVMSerializationWriter and fix one of its uses
13:35 dalek MoarVM/serialize: review: https://github.com/MoarVM/MoarVM/commit/95f02b1650
13:35 not_gerd errands&
13:41 BenGoldberg joined #moarvm
13:46 jnthn Seems the GC issue is not the GC's fault, but rather than scan_registers sees a bogus arg_flags after a flattening.
13:48 JimmyZ_ joined #moarvm
13:49 JimmyZ_ the first impression to me is that something wrong was added in worklist
13:49 jnthn yes, exactly
13:50 jnthn It's added in scan_registers, in the ->params bit at the end
13:50 jnthn An arg :compunit(1) ends up with the native int 1 being considered an object.
13:50 jnthn Which is where the 1 added to the worklist comes from.
13:56 jnthn oh, hmm...
13:56 diakopter ?
13:56 yoleaux 09:08Z <jnthn> diakopter: hash needs rooting in https://github.com/MoarVM/Moa​rVM/commit/c46bed7181#L1R368
13:57 jnthn I think it may be scanning making a bad assumption actually
14:00 JimmyZ joined #moarvm
14:02 JimmyZ joined #moarvm
14:02 JimmyZ exit
14:03 JimmyZ joined #moarvm
14:04 jnthn Fixed it.
14:05 dalek MoarVM: bdba306 | jnthn++ | src/gc/roots.c:
14:05 dalek MoarVM: Handle names properly when marking params.
14:05 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/bdba3060fd
14:05 diakopter .tell not_gerd not_gerd++ awesome at reading my mind on what to fix in the s branch
14:05 yoleaux diakopter: I'll pass your message to not_gerd.
14:07 dalek MoarVM: 24a67d9 | jnthn++ | src/gc/orchestrate.c:
14:07 dalek MoarVM: Oops, accidentally commited debugging turn-on.
14:07 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/24a67d9996
14:11 jnthn Hm. Next bug is an interesting one...
14:20 jnthn s/interesting/silly/ :)
14:22 JimmyZ hmm, looks like last op is always unknown
14:22 jnthn ?
14:22 JimmyZ op <unknown>, instr 0<unknown>
14:22 jnthn Oh, in backtrace
14:23 jnthn yeah, not sure what that's about
14:23 JimmyZ always on the top one
14:23 jnthn I think we'll strip those bits of info without a --verbose-backtrace or so
14:23 JimmyZ e
14:23 jnthn They're mostly noise to me, though diakopter++ likes to have a way to get at them.
14:25 dalek MoarVM: 4416cfd | jnthn++ | src/6model/reprs/P6opaque.c:
14:25 dalek MoarVM: Unconfuse P6opaque REPR compose.
14:25 dalek MoarVM:
14:25 dalek MoarVM: Wrongly used attribute index at current MRO level in places that
14:25 dalek MoarVM: needed slot offset.
14:25 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/4416cfda04
14:25 JimmyZ if you look it , all are known,  except the top one
14:26 JimmyZ ;)
14:26 jnthn aye
14:26 jnthn Seems we now can parse and build AST for -e "say('Hello, world')"
14:26 JimmyZ nice
14:27 jnthn --target=ast might work, except the code-gen for nqp::for doesn't install exception handlers for the control exceptions yet. D'oh. )
14:27 jnthn And we can't get beyond there 'cus the code-gen phase isn't wired up yet.
14:27 jnthn Anyway, self-host managing "hello world" seems somewhat in reach in the coming days...
14:28 JimmyZ I got Segmentation fault (core dumped)
14:28 jnthn Right.
14:28 jnthn Same.
14:28 jnthn But if you --stagestats, the (corrupted...) output shows you that we completed stage ast.
14:29 JimmyZ see it
14:29 jnthn Which means the parsing worked out :)
14:29 jnthn Got some other stuff I need to do now. May have moar tuits later this evening.
14:30 JimmyZ jnthn++
15:53 diakopter jnthn: unfortunately it seems I won't be able to work on the s branch until after you're asleep again today
15:53 jnthn diakopter: I'm not blocking on it :)
15:54 diakopter but I'm estimating there's another 2 hours on the serialization.c and then another 2 hours on the reprs then another 2 hours testing
15:54 jnthn Testing is easy: pass t/serialization/*.t :)
15:54 diakopter o
15:54 diakopter 2 hours fixing, then
15:55 jnthn :D
15:56 JimmyZ I think I got how to do sockect
15:56 not_gerd joined #moarvm
15:56 not_gerd o/
15:56 yoleaux 14:05Z <diakopter> not_gerd: not_gerd++ awesome at reading my mind on what to fix in the s branch
15:57 not_gerd I think caching the stables in the writer might have been a good idea after all
15:57 not_gerd MVMSerializationContextBody is held at an additional level of indirection
15:58 not_gerd so Ill probably undo that change
15:58 JimmyZ you avoids base64 decode?
15:58 not_gerd a bit more stuff on serialization.c should be incoming shortly
15:59 diakopter I know I was using the wrong operations on what jnthn converted from a hll array to a c array
15:59 diakopter maybe you fixed that already
15:59 not_gerd diakopter: not yet, but I'll chip away at some of it (slowly ;))
15:59 not_gerd and possibly with false starts (see above)
16:01 TimToady we don't allow false starts here
16:01 TimToady experiments that reduce the size of the solution space are okay though :)
16:01 jnthn START False; # no, we don't any more... :)
16:04 JimmyZ jnthn: I found by using struct { uv_tcp_t *handle, void *data } can got the read data in cb
16:17 not_gerd crap - neeed to do some whitespace wrangling :(
16:28 JimmyZ Good night
16:28 FROGGS gnight JimmyZ
16:29 jnthn 'night
16:42 dalek MoarVM/serialize: ef6a5a8 | (Gerhard R)++ | src/6model/serialization. (2 files):
16:42 dalek MoarVM/serialize: Re-introduce stables_list to MVMSerializationWriter and use it
16:42 dalek MoarVM/serialize: review: https://github.com/MoarVM/MoarVM/commit/ef6a5a8092
16:42 dalek MoarVM/serialize: ef7c356 | (Gerhard R)++ | src/6model/serialization.c:
16:42 dalek MoarVM/serialize: Minor fixes to 6model/serialization.c
16:42 dalek MoarVM/serialize: review: https://github.com/MoarVM/MoarVM/commit/ef7c356409
16:52 woolfy left #moarvm
19:11 dalek Heuristic branch merge: pushed 23 commits to MoarVM/dll by gerdr
19:13 not_gerd ^ that has made sharedlibraries mostly work
19:14 not_gerd export annotations are of course still missing
19:14 not_gerd also, for some reason linenoise uses debug information
19:23 not_gerd apparently, that can be caused by library ordering or some such
19:49 dalek MoarVM/dll: cad6912 | (Gerhard R)++ | / (2 files):
19:49 dalek MoarVM/dll: Remove auxiliary files only when realcleaning
19:49 dalek MoarVM/dll: review: https://github.com/MoarVM/MoarVM/commit/cad6912de9
19:57 dalek MoarVM/dll: 44948f5 | (Gerhard R)++ | src/core/exceptions.h:
19:57 dalek MoarVM/dll: Make MVM_crash_on_error() public
19:57 dalek MoarVM/dll: review: https://github.com/MoarVM/MoarVM/commit/44948f5247
20:01 dalek MoarVM: b9e9035 | jnthn++ | nqp-cc/ (2 files):
20:01 dalek MoarVM: Fix invoking QAST -> MAST stage.
20:01 dalek MoarVM:
20:01 dalek MoarVM: Fails within it due to a NYI.
20:01 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/b9e9035549
20:02 jnthn yays we're into the backend...
20:04 jnthn MVMCallCapture GC mark NYI # the next error :)
20:07 nwc10 what do you mean "into the backend". Or does that take too much explaining of stuff? Is it that the NQP frontend now compiles? So the code that creates ASTs works?
20:07 nwc10 (But not yet the code that takes ASTs and makes bytecode"
20:07 nwc10 er)
20:08 not_gerd jnthn: the dll branch is basically ready for merge
20:08 not_gerd perl Configure.pl --shared should now work on windows
20:11 jnthn nwc10: I mean that the NQP self-host effort on Moar is at the point where the thing stopping say('hello world') working are taking the QAST tree and turning it into MoarVM bytecode and running it
20:12 jnthn nwc10: Meaning that self-host can parse that code and builds its AST
20:12 nwc10 ah OK good. So I think I did sort of understand
20:13 BenGoldberg joined #moarvm
20:14 nwc10 and
20:14 nwc10 jnthn++
20:18 jnthn um, ok, wtf...
20:18 FROGGS what's up? it loaded a java lib and is spamming the Python channel now?
20:19 jnthn no...
20:19 jnthn MoarVM complains of an args error
20:19 jnthn I look at the code and wonder...how the hell could that ever work...
20:19 FROGGS hehe
20:19 jnthn Quiz time! What should this code do:
20:19 jnthn class Foo {
20:19 jnthn method new(:$index) { say($index) }
20:19 jnthn }
20:19 jnthn Foo.new(2);
20:20 FROGGS *g*
20:20 FROGGS it takes a positional and turns it into a named of course :o)
20:20 nwc10 can I phone a friend^WIRC bot?
20:21 jnthn It should be an error!
20:21 jnthn You passed one too many positional args.
20:21 FROGGS it should, yeah
20:21 jnthn On nqp-parrot...it prints 2 o.O
20:21 FROGGS ?
20:21 arnsholt Oh dear
20:21 jnthn yes, ? indeed
20:21 jnthn wtf
20:21 jnthn So of course, we have code that relies on this..."feature" :)
20:21 arnsholt That's what Common Lisp does, and I'd argue it's not a very good idea =)
20:22 jnthn OK, at least I don't have to go fix Moar's arg binder :P
20:23 * not_gerd goes merging dll into master
20:24 not_gerd actually, I'm doing a final test run, so stay tuned
20:30 not_gerd the 4 failing string tests are expected?
20:30 dalek MoarVM: dee565b | jnthn++ | nqp-cc/src/QAST (2 files):
20:30 dalek MoarVM: Fix some broken MAST::Local construction.
20:30 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/dee565b0af
20:30 dalek MoarVM: e036584 | jnthn++ | src/6model/reprs/MVMCallCapture.c:
20:30 dalek MoarVM: Implement MVMCallCapture.gc_mark.
20:30 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/e036584733
20:30 jnthn not_gerd: Well, I wouldn't say I expected them, but yeah, I get them too...
20:31 dalek MoarVM: 5b697df | (Gerhard R)++ | / (5 files):
20:31 dalek MoarVM: Wire up shared library building
20:31 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/5b697df5a7
20:31 dalek MoarVM: 42c17c7 | (Gerhard R)++ | / (2 files):
20:31 dalek MoarVM: Remove auxiliary files only when realcleaning
20:31 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/42c17c770c
20:31 dalek MoarVM: 735d67c | (Gerhard R)++ | src/core/exceptions.h:
20:31 dalek MoarVM: Make MVM_crash_on_error() public
20:31 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/735d67c822
20:41 jnthn not_gerd: Builds fine for me
20:42 not_gerd \o/
20:48 diakopter now that I think about it, that crash on error field needs to hang off of instance
20:48 diakopter instead of static
20:49 diakopter it was just a temp fix anyway
20:49 not_gerd as a rule of thumb, anything not constant should probably not be static
20:50 jnthn aye
20:50 diakopter right, it was jsut a temp hack
20:51 jnthn Next thing needed is giving nqp::for its exception handler support...but not got the energy for that today
21:09 not_gerd good night o/
21:09 not_gerd left #moarvm
21:16 lizmat joined #moarvm
21:18 woolfy joined #moarvm
21:22 lizmat joined #moarvm
21:49 woolfy left #moarvm
23:01 dalek Heuristic branch merge: pushed 39 commits to MoarVM/serialize by diakopter
23:02 diakopter ^ merging in master
23:07 eternaleye joined #moarvm
23:08 jnthn sleep &

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