Perl 6 - the future is here, just unevenly distributed

IRC log for #moarvm, 2015-02-09

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

All times shown according to UTC.

Time Nick Message
00:20 vendethiel joined #moarvm
03:15 vendethiel joined #moarvm
04:35 vendethiel joined #moarvm
05:58 rurban__ joined #moarvm
06:31 vendethiel joined #moarvm
08:05 FROGGS joined #moarvm
08:07 zakharyas joined #moarvm
08:25 FROGGS joined #moarvm
10:34 rurban joined #moarvm
11:03 harrow joined #moarvm
11:21 zakharyas1 joined #moarvm
12:39 pyrimidi_ joined #moarvm
12:51 brrt joined #moarvm
12:51 brrt \o
12:57 timotimo o/ brrt
12:57 timotimo how are you? :)
12:58 brrt busy as always
12:58 brrt and you? :-)
12:59 timotimo ups and downs ;)
12:59 brrt i have a 90% finished blog post that was obsoleted by TimToady++
12:59 brrt so i have to find another spin on it
12:59 timotimo d'oh
13:02 FROGGS /o\
14:39 FROGGS btw, that's my progress as of last night:
14:39 FROGGS https://gist.github.com/FROGGS/239a936c29bf0873c38f
14:39 FROGGS I want to get rid of the 'is symbol' this evening, and then care about proper memory handling
14:40 FROGGS as one can see I implemented a CPPStruct repr
14:40 FROGGS (which is a direct copy of CStruct)
14:41 jnthn FROGGS: Plus it adds the vtable pointer for you?
14:43 FROGGS jnthn: no, it does nothing about vtables yet
14:43 FROGGS I don't even know yet if I have to care about these things
14:44 jnthn I thought the typical layout for C++ object instnaces is the first slot of the object is the v-table pointer.
14:44 FROGGS that might be true, though I map the perl6 methods to the symbols I see in the library
14:45 timotimo so you don't have direct attribute access?
14:45 FROGGS timotimo: that's a question about the right memory layout and attribute offset calculation me thinks
14:46 timotimo which is probably also cpp compiler defined?
14:46 FROGGS because, structs in C++ without a constructor and vtables are laid out identical to C structs
14:46 timotimo oh, ok
14:46 FROGGS perhaps...
14:50 arnsholt FROGGS: You are completely nuts =)
14:51 FROGGS *g*
14:51 FROGGS no, I'm not :o)
14:51 brrt FROGGS++
14:51 brrt cpp compatibility is a huge deal
14:52 FROGGS btw, the name mangling is the same problem as with the names on the jvm
14:52 FROGGS and we only have to care about two compilers atm, so no big deal
14:54 timotimo clang doesn't cpp?
14:55 brrt clang is cpp by default
14:55 timotimo k
14:58 FROGGS ahh, clang was not listed on that wikipedia page...
15:18 FROGGS the 'is symbol' trait is now optional... was just about juggling a few lines around in zavolaj
15:18 FROGGS class b2World is repr<CPPStruct> {
15:18 FROGGS has OpaquePointer $.data;
15:18 FROGGS method new(b2Vec2)  is native("libBox2D") { * }
15:18 FROGGS method Dump()       is native("libBox2D") { * }
15:18 FROGGS }
15:18 FROGGS that's (almost) all one needs for a very limited test case
15:19 jnthn FROGGS: How does it know this is C++ and it should name-mangle? Are you writing a NativeCallPP? :)
15:19 FROGGS another interesting bit will be to mangle the name for parameters that are `const b2Vec2&`, these are mangled to "RK6b2Vec2"
15:20 FROGGS jnthn: no, the repr tells so
15:20 arnsholt Knowing it's C++ is presumably CPPStruct vs. CStruct
15:20 FROGGS aye
15:20 arnsholt How to name mangle is a lot harder though =)
15:20 jnthn But what about functions from C++?
15:38 FROGGS jnthn: they are exposed as symbols, like in C
15:39 FROGGS because, it boils down to C conventions anyway, that's the reason the names are mangled after all
16:02 tadzik oh oh
16:16 FROGGS so, when somebody has nice online literature about vtables and so forth in C++, I'll enjoy reading it :o)
16:16 FROGGS I just don't understand the need for them currently
16:33 brrt left #moarvm
17:28 japhb joined #moarvm
17:54 mj41 joined #moarvm
18:46 FROGGS joined #moarvm
19:40 rurban joined #moarvm
19:50 FROGGS today I want to get the memory layout right...
19:54 FROGGS ahh, that http://search.cpan.org/~plicease/FFI-Platypus-Lang-CPP-0.04/ uses libffi under the hood
21:07 ilbot3 joined #moarvm
21:07 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
21:10 moritz joined #moarvm
21:46 Peter_R joined #moarvm
22:04 FROGGS_ joined #moarvm
22:08 Peter_R joined #moarvm
22:16 colomon joined #moarvm
22:38 ilbot3 joined #moarvm
22:38 Topic for #moarvm is now https://github.com/moarvm/moarvm | IRC logs at  http://irclog.perlgeek.de/moarvm/today
23:11 japhb Hmmm, the irclog seems to be missing FROGGS' line at 20:18 UTC.
23:12 japhb moritz: ^^
23:12 japhb Hmmm, I see a couple rejoins.  ilbot3 having issues?
23:12 jnthn japhb: It had a hiccup earlier.
23:13 japhb ah
23:13 japhb thankfully the local-net hiccup did not occur at the sametime as the ilbot hiccup.  :-)
23:13 jnthn :)
23:14 vendethiel joined #moarvm
23:47 vendethiel joined #moarvm

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