02:25 colomon joined 02:49 ilbot3 joined 03:37 ggoebel111111114 joined 07:32 kjs_ joined 07:57 FROGGS joined 08:04 zakharyas joined 08:09 Ven joined 08:11 rurban joined
jnthn timotimo++ 08:37
dalek href="https://moarvm.org:">moarvm.org: 0245d95 | jnthn++ | / (4 files):
Site updates for 2015.02 release.
09:01
10:03 Ven joined 10:55 Ven joined 12:22 Ven joined 13:39 vendethiel- joined 14:26 Ven joined 15:21 Ven joined 17:03 zakharyas joined 17:17 Ven joined 17:28 camelia joined 17:36 camelia joined 18:26 FROGGS joined
dalek arVM/cpp: e929224 | timotimo++ | src/6model/reprs/P6opaque.c:
re-enable usage decrements for get/bindattr in P6opaque
19:30
MoarVM/cpp: 4d546bc | timotimo++ | src/spesh/optimize.c:
MoarVM/cpp: currently, set removal hurts more than it helps.
jnthn oh noahs 19:31
19:31 dalek joined
FROGGS jnthn: because of dalek or because of C++? 19:31
:o)
19:31 tgt joined
jnthn Either will do :) 19:32
But given the flood reference, clearly dalek :P
FROGGS jnthn: btw, can you build dlls with C#? and, what'r there calling convention?
"noah"s -.-
what's* 19:33
their*
jnthn FROGGS: You can build DLLs, *but* they're just a .dll file wrapper around CLR bytecode 19:34
FROGGS: And similar with .exe files; they just contain enough to load the CLR to process the bytecode within the file
FROGGS ahh
jnthn FROGGS: A DLL can choose to expose itself as a COM interface 19:35
FROGGS okay, I scratch that idea then :o) 19:36
jnthn FROGGS: Otherwise, best bet is to embed the CLR
FROGGS: And we should be able to do that using NativeCall
FROGGS well, at some point we will have a Win32 module to do COM stuff I guess
ohh, interesting
jnthn Aye
timotimo not to be a downer, but how are we supposed to compete with the startup memory usage of other popular interpreters? :\ 19:38
jnthn timotimo: Partly by continuing to get it down from where it is now. Partly by realizing that memory is, in many caes, rather more abundant now than it has been in the past. :) 19:41
timotimo well, that may be 19:42
japhb Given a choice of where to put tuits, I'd much rather have them on "efficient use of memory for large problem sizes" and "faster startup for real code" (not just for empty benchmarks), than I would for "tiny startup memory for trivial programs" 19:43
timotimo i won't be satisfied until we get below 50 megabytes for a simple "say 1"
japhb That's a good goal though, aye.
jnthn timotimo: I think that's achievable. 19:44
timotimo good :)
FROGGS still wonder how he translates this signature to Perl 6: virtual long ConstIntPtr(const int *i) { 20:14
the mangled name for this param is PKi (_P_ointer, _K_onst, _i_nt) 20:16
jnthn int $i is rw is cppconst 20:17
Or mebbe cpp-const
FROGGS could also be: OpaquePointer[int] $i is cpp-const or so, right? 20:18
jnthn Yeah, for now I guess 20:19
CArray[int] is the usual hack at the moment
FROGGS though, I have a gut feeling that there might be a better way to say 'const' without using a trait
jnthn Once I get the native-ref stuff landed though, I plan to work on "is rw" for nativecall
It'll really want to see int as the type for that, though... 20:20
20:20 rurban joined
FROGGS ahh, k 20:20
well, it makes it easy to pass integers, yes
jnthn Pointes to integers
e.g.
FROGGS and when somebody needs to fiddle with pointers, he/she can cast them 20:21
jnthn my int $i; some-native-thing($i); # and afterwards $i is updated
FROGGS right
jnthn did some figuring out of NFG in the pub tonight
FROGGS nice :o)
Perl 6 is soooo awesome :o) 20:25
$ perl6-m -e 'sub foo($a is rw) { }; say &foo.signature.params[0].rw'
True
jnthn :)
jnthn will get back to native-ref hacking next week :) 20:26
FROGGS when we pass a Str, is 'is rw' implied? 20:32
or does that decide if we strdup somewhere?
I am slightly surprised that this works: 20:42
is $d2.?ConstIntPtr(13), 13, 'name mangling of parameter `const int *`';
(currently I generate the symbol incorrectly, so the symbol is not found)
so instead of aborting the test script, I get a single test fail... nice 20:43
ohh, no, it doesnt... missing a symbol is fatal 20:55
dalek arVM: 953c022 | coke++ | macports/Portfile:
Add a macports Portfile
23:47
arVM: c462d90 | coke++ | / (2 files):
delint Portfile, move to correct location
23:53
[Coke] ok, submitted the Portfile to macports for inclusion. 23:59