github.com/moarvm/moarvm | IRC logs at irclog.perlgeek.de/moarvm/today
Set by moderator on 13 July 2013.
dalek arVM/dyncall: e1de106 | diakopter++ | / (4 files):
avoid using recursive delete with wildcards
00:17
arVM/dyncall: 5275a09 | diakopter++ | / (2 files):
restore .gitignore

add a done echo message
00:25
arVM/dyncall: cb0958e | diakopter++ | / (2 files):
more removes
00:42
arVM/dyncall: 5f6d615 | diakopter++ | build/Makefile.in:
fixes
00:46
diakopter not done... still wip; still fixing; lemme fix it :) 00:48
01:44 FROGGS_ joined
diakopter whee. :) 02:54
ergh, how did I break apr 02:57
03:04 colomon joined
dalek arVM/dyncall: ca164e8 | diakopter++ | .gitignore:
more gitignore
03:12
arVM/dyncall: 1034afc | diakopter++ | .gitignore:
another try
03:15
arVM/dyncall: 791ec58 | diakopter++ | / (2 files):
more attempts
03:22
arVM/dyncall: 81a7219 | diakopter++ | build/Makefile.in:
*sigh* more
03:27
arVM/dyncall: 9967163 | diakopter++ | build/Makefile.in:
*double sigh* more
03:37
diakopter *finally* 03:42
now for mac os .... O_O 03:43
whoa; worked perfectly first try 03:48
oh yeah.
03:57 crab2313 joined
dalek arVM/dyncall: f3025f4 | diakopter++ | / (2 files):
sort the .gitignore *sigh*

make the root realclean also realclean the cross compiler (everything but nqp)
04:05
arVM/dyncall: f35e1f0 | diakopter++ | build/ (3 files):
try harder to have the Makefile delete itself on windows
04:39
04:43 birdwindupbird joined
dalek arVM/dyncall: 8e2bd4a | diakopter++ | build/Makefile.in:
sigh.
04:46
diakopter there. 04:49
finally ready to move on to *actually* *porting*
06:18 FROGGS_ joined
diakopter jnthn: ping 06:48
FROGGS_ gmorning diakopter
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
yoleaux diakopter: I'll pass your message to jnthn.
diakopter FROGGS_: yeah, seems good now
getting buried in the actual porting now :D
FROGGS_ diakopter: so it builds? I guess you need to glue it to moarvm now, right? 06:50
diakopter yeah
seems to build/link fine for me on win64, linux64, mac64
FROGGS_ that is awesome 06:51
diakopter now to figure out where jnthn hid the invoke-bytecode-from-C example.. 06:53
was it..... 06:54
something to do with MVMIter?
FROGGS_ I have no idea
diakopter FROGGS_: do you have time to go through my p5interop scheme? (google doc?) 06:56
(at least an hour)
FROGGS_ ohh, I am at work right now
diakopter nooooooooooooooo
FROGGS_ I can read through it, though 06:57
but an 1-hour intense chat is not that possible :o)
dalek arVM/dyncall: bb63d6a | diakopter++ | src/6model/reprs.h:
prep dyncall reprs
07:25
diakopter officially complains that an 'of' method on NativeCall types is overkill; would a simple attribute do? 07:36
FROGGS_: I remembered where it was ... boolification 07:37
diakopter decides to make a generic callback mechanism (simply generalizing BoolMethReturnData slightly) 07:46
ergh; well that won't do 07:47
*sigh* the "sane" (read: "lazy") solution is good ol' CPS-ish thingies 07:48
I mean, it's ok for boolification b/c it's only ever called directly from the interpreter. 07:49
sorear is moarvm stackless? 07:50
diakopter as stackless as perl5 07:51
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:52
sorear perl5 has call_sv though 07:53
diakopter yeah, but it still recurses in the C callstack 07:56
(jnthn's hope was to avoid such a thing) 07:57
sorear sleep& 08:01
diakopter hrm. 08:06
jnthn: u around?
09:00 crab2313 joined
diakopter whoa; found super-cheap flight to Kiev 09:28
FROGGS_ cool 09:29
diakopter $2078 for 3 legs (SFO->JFK->CDG->KBP), A/C power in the seat the entire way 09:41
Virgin America & Air France
tadzik 3 legs?? I thought "extra leg room" is just for tall people 09:43
diakopter o)o 09:44
arnsholt diakopter: Gimme a prod if you have NativeCall related questions, BTW 09:58
diakopter arnsholt: hi 10:02
'of' method called from fill_repr_data (called from allocate)
arnsholt Which REPR? 10:03
But that's the API for things like Positional, which might be why jnthn went for that option 10:04
diakopter CArray 10:07
arnsholt: well what I'm wondering is if it's okay to run the 'of' method sometime other than first-run of allocate
(like, during compose)
arnsholt Compose is probably a better time, I agree 10:08
That code dates to before we actually had a compose step
diakopter ahhh 10:10
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
arnsholt Which'll kill of the method call entirely
Sounds like a good refactor to me
diakopter photoshop doesn't want to open my 15k x 15k pixel jpeg, but Paint.NET will...! 10:12
arnsholt Hooray for Paint.NET then =) 10:13
I suspect Gimp would open it as well, but then you'd have to use Gimp =)
dalek arVM: 0521916 | (Tobias Leich)++ | / (4 files):
added nqp::tonum_I
diakopter it's vastly cheaper to fly to Kiev through europe than through japan/china/korea from US west coast 10:18
*nothing* seems to fly across siberia...... they all fly south through the middle east
tadzik weird 10:20
10:56 cognominal joined 10:57 lizmat joined 11:00 cognominal joined 11:05 colomon joined
dalek arVM: be78091 | (Tobias Leich)++ | src/core/interp.c:
correct pointer type, filences warning
11:21
Heuristic branch merge: pushed 57 commits to MoarVM/dyncall by diakopter 11:45
diakopter FROGGS_: would you mind testing the dyncall branch?
(just pushed) 11:46
well, I thought I did. dalek?
tadzik 1345 dalek | Heuristic branch merge: pushed 57 commits to MoarVM/dyncall by diakopter 11:49
looks pushed
FROGGS_ diakopter: should I just build it? 11:58
diakopter I guess 12:00
FROGGS_ diakopter: looks good 12:01
builds fine, and there are no related warnings 12:02
diakopter FROGGS_: awesome, thanks 12:07
dalek Heuristic branch merge: pushed 35 commits to MoarVM/dyncall by diakopter 12:09
diakopter sigh.
it kept duplicating commits.
git gui fail--
13:13 colomon joined 14:52 benabik joined 15:18 colomon joined
dalek arVM: 0cbee1f | (Tobias Leich)++ | / (4 files):
added and mapped nqp::fromnum_I
16:41
17:04 FROGGS joined 17:23 colomon joined 18:07 ggoebel joined 19:14 colomon joined
dalek arVM: 674b15f | (Tobias Leich)++ | / (4 files):
added and mapped nqp::base_I
19:29
diakopter jnthn: ahoy 19:46
jnthn o/
diakopter jnthn: did you see my conversation above with arne 19:47
jnthn no
Didn't backlog here yet
diakopter it's short
:)
jnthn < diakopter> 'of' method called from fill_repr_data (called from allocate) 19:48
..that sounds wrong. It should be done with compose_repr these days passing the data that is needed to repr compose.
Not method calls from the REPR itself.
diakopter :D 19:50
(keep reading?)
I was just talking about how it's done in nqp on parrot
jnthn Yeah, we could get away with it there. :) 19:52
But ther'es no reason for it to keep being done that way there either.
jnthn can probably look into fixing that so it's an easier port. 19:53
I guess CStruct is already doing things the Right Way
diakopter oh.
k
jnthn You don't know where allocate will be called from in general, so there's no way to do the CPS thing.
You gotta know you'll wind up back in the interp.
diakopter that's what I was saying
jnthn Yeah. 19:54
ooh, not long until copenhagen...
diakopter what's copenhagen 19:57
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
city together, and the cityscape is characterized by promenades and waterfronts.
jnthn Right. :) 19:59
Then I will hopefully nom something, then continue on home :)
FROGGS and denmark is in the middle of the triangle britain-germany-sweden
nom++
jnthn yeah, a little hungry :) 20:02
diakopter FROGGS: I meant what's at Copenhagen 20:10
FROGGS diakopter: ahh 20:11
well, people and houses and streets I guess
but I dont know what jnthn is up to :o)
dalek arVM: 3df7ed7 | (Tobias Leich)++ | / (8 files):
added and mapped div_In
20:13
diakopter FROGGS: :) 20:14
20:19 colomon joined 20:20 d4l3k_ joined
diakopter arnsholt: how excited are you about helping me port the dyncall stuff 20:21
20:26 donaldh joined
arnsholt diakopter: I could probably pitch in 21:06
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 =)
diakopter arnsholt: well dyncall is building/linking fine, so.. 21:08
there you go! :)
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?
arnsholt JNA 21:10
diakopter JNA?
arnsholt That way I can get away with only writing Java (and NQP/JVM doesn't have to sprout C code)
diakopter oh ok. 21:11
arnsholt It's a pretty clever wrapper around libffi
diakopter cool
arnsholt With quite a bit of functionality similar to NativeCall actually, although I'll probably end up not using much of that
diakopter who's this Wall person
arnsholt That's a good question =) 21:12
FROGGS he's always so negative... .oO( gcc -Wall ) 21:13
dalek arVM: 9253005 | (Tobias Leich)++ | src/ (5 files):
silence warnings
21:15
arnsholt diakopter: At any rate, I wouldn't min helping out. It's a good chance to get into MoarVM 21:20
Two questions before I head bedwards: What's the state of things ATM, and what's your general plan for the 21:21
*time being (premature CRLF)
dalek arVM: 0a6c88d | (Tobias Leich)++ | / (4 files):
added and mapped nqp::rand_I
21:36
arVM: bf5aacc | (Tobias Leich)++ | / (3 files):
added and mapped nqp::isprime_I
21:47
arVM: f5b724c | (Tobias Leich)++ | src/core/interp.c:
hotfix for isprime_I, write to the correct register
21:55
FROGGS jnthn: is that hard to do? "Method new_type not found in cache, and late-bound dispatch NYI" 21:57
diakopter FROGGS: I've never known (or asked, really) what late-bound dispatch will look like 21:59
new_type should be implemented if it's not
jnthn Maybe just a missing method cache setup somewhere...I'd have to see the way it's coming up
FROGGS my $bi_boxer := NQPClassHOW.new_type(:name('TestPerl6Int'), :repr('P6opaque')); 22:00
NQPClassHOW has a method new_type
this works fwiw: my $knowhow := nqp::knowhow(); my $bi_type := $knowhow.new_type(:name('TestBigInt'), :repr('P6bigint')); 22:01
diakopter NQPClassHOW might not be found correctly 22:02
FROGGS ahhh 22:05
diakopter++
you might be right, I had to coment out 'use nqpmo'
so I just need to get that working... 22:06
I guess I can do that
jnthn try "use nqp-mo" maybe
FROGGS hmm, why does that work?
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...
Can consistentize it when getting the code into the nqp repo proper, after bootstrap.
FROGGS so I shouldnt change it now? 22:08
jnthn no, leave it for now
FROGGS k, I'll just XXX the test file
thanks diakopter++ and jnthn++ 22:09
diakopter tries to think of "distinctives" for the top of my resume 22:21
23:17 cognominal joined