Camelia, the Perl 6 bug

IRC log for #moarvm, 2013-07-15

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

All times shown according to UTC.

Time Nick Message
00:17 dalek MoarVM/dyncall: e1de106 | diakopter++ | / (4 files):
00:17 dalek MoarVM/dyncall: avoid using recursive delete with wildcards
00:17 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/e1de106687
00:25 dalek MoarVM/dyncall: 5275a09 | diakopter++ | / (2 files):
00:25 dalek MoarVM/dyncall: restore .gitignore
00:25 dalek MoarVM/dyncall:
00:25 dalek MoarVM/dyncall: add a done echo message
00:25 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/5275a0951a
00:42 dalek MoarVM/dyncall: cb0958e | diakopter++ | / (2 files):
00:42 dalek MoarVM/dyncall: more removes
00:42 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/cb0958e6e0
00:46 dalek MoarVM/dyncall: 5f6d615 | diakopter++ | build/Makefile.in:
00:46 dalek MoarVM/dyncall: fixes
00:46 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/5f6d615012
00:48 diakopter not done... still wip; still fixing; lemme fix it :)
01:44 FROGGS_ joined #moarvm
02:54 diakopter whee. :)
02:57 diakopter ergh, how did I break apr
03:04 colomon joined #moarvm
03:12 dalek MoarVM/dyncall: ca164e8 | diakopter++ | .gitignore:
03:12 dalek MoarVM/dyncall: more gitignore
03:12 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/ca164e8057
03:15 dalek MoarVM/dyncall: 1034afc | diakopter++ | .gitignore:
03:15 dalek MoarVM/dyncall: another try
03:15 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/1034afc263
03:22 dalek MoarVM/dyncall: 791ec58 | diakopter++ | / (2 files):
03:22 dalek MoarVM/dyncall: more attempts
03:22 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/791ec5847f
03:27 dalek MoarVM/dyncall: 81a7219 | diakopter++ | build/Makefile.in:
03:27 dalek MoarVM/dyncall: *sigh* more
03:27 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/81a7219165
03:37 dalek MoarVM/dyncall: 9967163 | diakopter++ | build/Makefile.in:
03:37 dalek MoarVM/dyncall: *double sigh* more
03:37 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/9967163dc6
03:42 diakopter *finally*
03:43 diakopter now for mac os .... O_O
03:48 diakopter whoa; worked perfectly first try
03:48 diakopter oh yeah.
03:57 crab2313 joined #moarvm
04:05 dalek MoarVM/dyncall: f3025f4 | diakopter++ | / (2 files):
04:05 dalek MoarVM/dyncall: sort the .gitignore *sigh*
04:05 dalek MoarVM/dyncall:
04:05 dalek MoarVM/dyncall: make the root realclean also realclean the cross compiler (everything but nqp)
04:05 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/f3025f43f7
04:39 dalek MoarVM/dyncall: f35e1f0 | diakopter++ | build/ (3 files):
04:39 dalek MoarVM/dyncall: try harder to have the Makefile delete itself on windows
04:39 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/f35e1f01ef
04:43 birdwindupbird joined #moarvm
04:46 dalek MoarVM/dyncall: 8e2bd4a | diakopter++ | build/Makefile.in:
04:46 dalek MoarVM/dyncall: sigh.
04:46 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/8e2bd4a83d
04:49 diakopter there.
04:49 diakopter finally ready to move on to *actually* *porting*
06:18 FROGGS_ joined #moarvm
06:48 diakopter jnthn: ping
06:48 FROGGS_ gmorning diakopter
06:49 FROGGS_ diakopter: looks like you made some progress with dyncall?
06:49 diakopter .ask jnthn as soon as you have 3 min, could you tersely explain how to call a 6model method from an op
06:49 yoleaux diakopter: I'll pass your message to jnthn.
06:49 diakopter FROGGS_: yeah, seems good now
06:49 diakopter getting buried in the actual porting now :D
06:50 FROGGS_ diakopter: so it builds? I guess you need to glue it to moarvm now, right?
06:50 diakopter yeah
06:50 diakopter seems to build/link fine for me on win64, linux64, mac64
06:51 FROGGS_ that is awesome
06:53 diakopter now to figure out where jnthn hid the invoke-bytecode-from-C example..
06:54 diakopter was it.....
06:54 diakopter something to do with MVMIter?
06:54 FROGGS_ I have no idea
06:56 diakopter FROGGS_: do you have time to go through my p5interop scheme? (google doc?)
06:56 diakopter (at least an hour)
06:56 FROGGS_ ohh, I am at work right now
06:56 diakopter nooooooooooooooo
06:57 FROGGS_ I can read through it, though
06:57 FROGGS_ but an 1-hour intense chat is not that possible :o)
07:25 dalek MoarVM/dyncall: bb63d6a | diakopter++ | src/6model/reprs.h:
07:25 dalek MoarVM/dyncall: prep dyncall reprs
07:25 dalek MoarVM/dyncall: review: https://github.com/MoarVM/MoarVM/commit/bb63d6acbd
07:36 * diakopter officially complains that an 'of' method on NativeCall types is overkill; would a simple attribute do?
07:37 diakopter FROGGS_: I remembered where it was ... boolification
07:46 * diakopter decides to make a generic callback mechanism (simply generalizing BoolMethReturnData slightly)
07:47 diakopter ergh; well that won't do
07:48 diakopter *sigh* the "sane" (read: "lazy") solution is good ol' CPS-ish thingies
07:49 diakopter I mean, it's ok for boolification b/c it's only ever called directly from the interpreter.
07:50 sorear is moarvm stackless?
07:51 diakopter as stackless as perl5
07:52 diakopter but here we have the repr op ->allocate invoking a 6model method ("of") on the type object... and allocate can be called from any depth of nested C calls
07:53 sorear perl5 has call_sv though
07:56 diakopter yeah, but it still recurses in the C callstack
07:57 diakopter (jnthn's hope was to avoid such a thing)
08:01 sorear sleep&
08:06 diakopter hrm.
08:06 diakopter jnthn: u around?
09:00 crab2313 joined #moarvm
09:28 diakopter whoa; found super-cheap flight to Kiev
09:29 FROGGS_ cool
09:41 diakopter $2078 for 3 legs (SFO->JFK->CDG->KBP), A/C power in the seat the entire way
09:41 diakopter Virgin America & Air France
09:43 tadzik 3 legs?? I thought "extra leg room" is just for tall people
09:44 diakopter o)o
09:58 arnsholt diakopter: Gimme a prod if you have NativeCall related questions, BTW
10:02 diakopter arnsholt: hi
10:02 diakopter 'of' method called from fill_repr_data (called from allocate)
10:03 arnsholt Which REPR?
10:04 arnsholt But that's the API for things like Positional, which might be why jnthn went for that option
10:07 diakopter CArray
10:07 diakopter arnsholt: well what I'm wondering is if it's okay to run the 'of' method sometime other than first-run of allocate
10:07 diakopter (like, during compose)
10:08 arnsholt Compose is probably a better time, I agree
10:08 arnsholt That code dates to before we actually had a compose step
10:10 diakopter ahhh
10:11 arnsholt Heck, that information might be more appropriately passed via the data sent in on compose anyways
10:11 diakopter okay, I'll tentatively do that, since compose is always [hopefully!?!] called from only the interpreter, we can make it a possibly-non-local-returning op
10:11 arnsholt Which'll kill of the method call entirely
10:11 arnsholt Sounds like a good refactor to me
10:12 diakopter photoshop doesn't want to open my 15k x 15k pixel jpeg, but Paint.NET will...!
10:13 arnsholt Hooray for Paint.NET then =)
10:13 arnsholt I suspect Gimp would open it as well, but then you'd have to use Gimp =)
10:13 dalek MoarVM: 0521916 | (Tobias Leich)++ | / (4 files):
10:13 dalek MoarVM: added nqp::tonum_I
10:13 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/05219169b8
10:18 diakopter it's vastly cheaper to fly to Kiev through europe than through japan/china/korea from US west coast
10:18 diakopter *nothing* seems to fly across siberia...... they all fly south through the middle east
10:20 tadzik weird
10:56 cognominal joined #moarvm
10:57 lizmat joined #moarvm
11:00 cognominal joined #moarvm
11:05 colomon joined #moarvm
11:21 dalek MoarVM: be78091 | (Tobias Leich)++ | src/core/interp.c:
11:21 dalek MoarVM: correct pointer type, filences warning
11:21 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/be78091dbe
11:45 dalek Heuristic branch merge: pushed 57 commits to MoarVM/dyncall by diakopter
11:45 diakopter FROGGS_: would you mind testing the dyncall branch?
11:46 diakopter (just pushed)
11:46 diakopter well, I thought I did. dalek?
11:49 tadzik 1345     dalek | Heuristic branch merge: pushed 57 commits to MoarVM/dyncall by diakopter
11:49 tadzik looks pushed
11:58 FROGGS_ diakopter: should I just build it?
12:00 diakopter I guess
12:01 FROGGS_ diakopter: looks good
12:02 FROGGS_ builds fine, and there are no related warnings
12:07 diakopter FROGGS_: awesome, thanks
12:09 dalek Heuristic branch merge: pushed 35 commits to MoarVM/dyncall by diakopter
12:09 diakopter sigh.
12:09 diakopter it kept duplicating commits.
12:09 diakopter git gui fail--
13:13 colomon joined #moarvm
14:52 benabik joined #moarvm
15:18 colomon joined #moarvm
16:41 dalek MoarVM: 0cbee1f | (Tobias Leich)++ | / (4 files):
16:41 dalek MoarVM: added and mapped nqp::fromnum_I
16:41 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/0cbee1f2cc
17:04 FROGGS joined #moarvm
17:23 colomon joined #moarvm
18:07 ggoebel joined #moarvm
19:14 colomon joined #moarvm
19:29 dalek MoarVM: 674b15f | (Tobias Leich)++ | / (4 files):
19:29 dalek MoarVM: added and mapped nqp::base_I
19:29 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/674b15f2a4
19:46 diakopter jnthn: ahoy
19:46 jnthn o/
19:47 diakopter jnthn: did you see my conversation above with arne
19:47 jnthn no
19:47 jnthn Didn't backlog here yet
19:47 diakopter it's short
19:47 diakopter :)
19:48 jnthn < diakopter> 'of' method called from fill_repr_data (called from allocate)
19:48 jnthn ..that sounds wrong. It should be done with compose_repr these days passing the data that is needed to repr compose.
19:48 jnthn Not method calls from the REPR itself.
19:50 diakopter :D
19:50 diakopter (keep reading?)
19:50 diakopter I was just talking about how it's done in nqp on parrot
19:52 jnthn Yeah, we could get away with it there. :)
19:52 jnthn But ther'es no reason for it to keep being done that way there either.
19:53 * jnthn can probably look into fixing that so it's an easier port.
19:53 jnthn I guess CStruct is already doing things the Right Way
19:53 diakopter oh.
19:53 diakopter k
19:53 jnthn You don't know where allocate will be called from in general, so there's no way to do the CPS thing.
19:53 jnthn You gotta know you'll wind up back in the interp.
19:53 diakopter that's what I was saying
19:54 jnthn Yeah.
19:54 jnthn ooh, not long until copenhagen...
19:57 diakopter what's copenhagen
19:58 FROGGS Copenhagen (IPA /ˈkoʊpənheɪɡən/ or /ˈkoʊpənhɑːɡən/; Danish: København [kʰøb̥m̩ˈhɑʊ̯ˀn] (About this sound listen)) is the capital of Denmark and its most populous city, with an urban population of 1,230,728 and a metropolitan population of 1,954,411 (as of 1 April 2013). Copenhagen is situated on the eastern coast of Zealand and stretches across part of Amager. A number of bridges and tunnels connect the parts of the
19:58 FROGGS city together, and the cityscape is characterized by promenades and waterfronts.
19:59 jnthn Right. :)
19:59 jnthn Then I will hopefully nom something, then continue on home :)
19:59 FROGGS and denmark is in the middle of the triangle britain-germany-sweden
19:59 FROGGS nom++
20:02 jnthn yeah, a little hungry :)
20:10 diakopter FROGGS: I meant what's at Copenhagen
20:11 FROGGS diakopter: ahh
20:11 FROGGS well, people and houses and streets I guess
20:11 FROGGS but I dont know what jnthn is up to :o)
20:13 dalek MoarVM: 3df7ed7 | (Tobias Leich)++ | / (8 files):
20:13 dalek MoarVM: added and mapped div_In
20:13 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/3df7ed7cba
20:14 diakopter FROGGS: :)
20:19 colomon joined #moarvm
20:20 d4l3k_ joined #moarvm
20:21 diakopter arnsholt: how excited are you about helping me port the dyncall stuff
20:26 donaldh joined #moarvm
21:06 arnsholt diakopter: I could probably pitch in
21:06 arnsholt I'm also working on the JVM side of this, so my tuit supply is somewhat limited, but the two tasks aren't entirely unrelated I think =)
21:08 diakopter arnsholt: well dyncall is building/linking fine, so..
21:08 diakopter there you go! :)
21:08 arnsholt ^_^
21:09 arnsholt One thing you might find relevant from my JVM work is that I'm working on adding a few tests to the NQP testsuite to exercise the NativeCall functionality
21:09 diakopter are you using JNI or something else?
21:10 arnsholt JNA
21:10 diakopter JNA?
21:10 arnsholt That way I can get away with only writing Java (and NQP/JVM doesn't have to sprout C code)
21:11 diakopter oh ok.
21:11 arnsholt It's a pretty clever wrapper around libffi
21:11 diakopter cool
21:11 arnsholt With quite a bit of functionality similar to NativeCall actually, although I'll probably end up not using much of that
21:11 diakopter who's this Wall person
21:12 arnsholt That's a good question =)
21:13 FROGGS he's always so negative... .oO( gcc -Wall )
21:15 dalek MoarVM: 9253005 | (Tobias Leich)++ | src/ (5 files):
21:15 dalek MoarVM: silence warnings
21:15 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/925300594f
21:20 arnsholt diakopter: At any rate, I wouldn't min helping out. It's a good chance to get into MoarVM
21:21 arnsholt Two questions before I head bedwards: What's the state of things ATM, and what's your general plan for the
21:21 arnsholt *time being (premature CRLF)
21:36 dalek MoarVM: 0a6c88d | (Tobias Leich)++ | / (4 files):
21:36 dalek MoarVM: added and mapped nqp::rand_I
21:36 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/0a6c88dc26
21:47 dalek MoarVM: bf5aacc | (Tobias Leich)++ | / (3 files):
21:47 dalek MoarVM: added and mapped nqp::isprime_I
21:47 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/bf5aacc3b0
21:55 dalek MoarVM: f5b724c | (Tobias Leich)++ | src/core/interp.c:
21:55 dalek MoarVM: hotfix for isprime_I, write to the correct register
21:55 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/f5b724c0dc
21:57 FROGGS jnthn: is that hard to do? "Method new_type not found in cache, and late-bound dispatch NYI"
21:59 diakopter FROGGS: I've never known (or asked, really) what late-bound dispatch will look like
21:59 diakopter new_type should be implemented if it's not
21:59 jnthn Maybe just a missing method cache setup somewhere...I'd have to see the way it's coming up
22:00 FROGGS my $bi_boxer := NQPClassHOW.new_type(:name('TestPerl6Int'), :repr('P6opaque'));
22:00 FROGGS NQPClassHOW has a method new_type
22:01 FROGGS this works fwiw: my $knowhow := nqp::knowhow(); my $bi_type := $knowhow.new_type(:name('TestBigInt'), :repr('P6bigint'));
22:02 diakopter NQPClassHOW might not be found correctly
22:05 FROGGS ahhh
22:05 FROGGS diakopter++
22:05 FROGGS you might be right, I had to coment out 'use nqpmo'
22:06 FROGGS so I just need to get that working...
22:06 FROGGS I guess I can do that
22:06 jnthn try "use nqp-mo" maybe
22:06 FROGGS hmm, why does that work?
22:07 diakopter b/c that's what it's called here? :)
22:07 jnthn I think 'cus it ended up with a different name somehow...d'oh...
22:07 jnthn Can consistentize it when getting the code into the nqp repo proper, after bootstrap.
22:08 FROGGS so I shouldnt change it now?
22:08 jnthn no, leave it for now
22:08 FROGGS k, I'll just XXX the test file
22:09 FROGGS thanks diakopter++ and jnthn++
22:21 * diakopter tries to think of "distinctives" for the top of my resume
23:17 cognominal joined #moarvm

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