Parrot 4.6.0 "Wild Parrots of Telegraph Hill" | parrot.org/ | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 18 July 2012.
00:32 dngor joined 00:44 kid51 joined
Tene delicious segfaults. 01:01
01:03 woosley joined
dalek kudo/nom: 1d4eb48 | pmichaud++ | / (2 files):
Refactor unary hypers to avoid .pick(*) and for loops, resulting in a 9x speed improvement for @array>>.xyz calls.

Even with this level of improvement, unary hyper methods are not yet faster than @array.map( *.xyz ). This is partially due to some indirect block call overhead and some unneeded boxing of native values.. More improvements are forthcoming, but this is a really good first step.
01:07
kid51 Ooh, I love to see those pmichaud commits :-)
01:28 whiteknight joined 02:02 preflex_ joined
kid51 Eeek! No commits to master in nine days! :-( 02:13
02:36 Psyche^ joined
moritz it seems parrot wants to be a stable platform :/ 05:30
05:34 muixirt joined
muixirt probably they have closed all issues ;-) 05:34
moritz I'd know about that :-) 05:42
05:53 brrt joined
dalek d_parrot: 7fe167c | (Bart Wiegmans)++ | / (2 files):
Added some documentation
06:02
d_parrot: 673a3cb | (Bart Wiegmans)++ | pudding/psgi.pl:
Resolve a minor test issue
06:06 fperrad joined 06:24 alvis joined 07:08 brrt joined
dalek Heuristic branch merge: pushed 217 commits to nqp/dyncall-callbacks by arnsholt 07:49
08:22 arcnor joined
arcnor hi 08:22
I was wondering if I can get some help with some PIR code not working from the docs
moritz I can try :-) 08:23
arcnor docs.parrot.org/parrot/devel/html/d...s.pod.html
first example
I mean, the full first example, with the main
I've tried to compile it, and the compiler says there is no class "[" "Foo" "]" found 08:24
moritz might miss the newclass opcode mentioned earlier in that chapter
dalek p: 3a126fd | (Arne SkjƦrholt)++ | / (4 files):
Initial callback handling.

It works, but it'll leak memory since all the information needed to handle a callback is recreated (and allocated on the heap) on each call without ever being freed.
p: 0897370 | (Arne SkjƦrholt)++ | src/ops/nqp_dyncall.ops:
Add caching of callback handling data.
p: fc4115b | (Arne SkjƦrholt)++ | / (12 files):
Merge branch 'master' into dyncall-callbacks
p: e74bc7e | (Arne SkjƦrholt)++ | / (37 files):
Merge branch 'master' into dyncall-callbacks
p: e63f932 | (Arne SkjƦrholt)++ | src/ops/nqp_dyncall.ops:
Decontainerize callback return value.
arcnor well, I've noticed I'm using parrot 4.5, and I've noticed docs are for devel version
dalek p: ef3e3e4 | (Arne SkjƦrholt)++ | / (10 files):
Merge remote branch 'origin/master' into dyncall-callbacks
arcnor but I hipe this is basic enough to work on previous versions
s/hipe/hope
moritz arcnor: yes, the examples should work. When they don't, it's a bug
arcnor could you tell me if it's working for you? 08:26
moritz just a second
arcnor of course :)
moritz Class '[ 'Foo' ]' not found 08:27
arcnor exactly :P
also, I've checked 4.5 docs, same example
moritz if you insert a
$P0 = newclass 'Foo' 08:28
in .sub 'main'
it gets a bit further
Creating a new Foo
get_iter() not implemented in class 'Foo'
current instr.: 'main' pc 25 (oo.pir:16)
that's caused by the 'say args'
arcnor: I've opened github.com/parrot/parrot/issues/802 for you 08:34
arcnor++ # finding bugs
08:48 benabik_ joined
arcnor hehe, thanks a lot! 08:57
I was looking for a way to implement classes and objects, and thought this was the "standar" way of doing things in PIR
so it's a pity it doesn't work as advertised :(
waiting for the bug to be fixed, then :)
oh, I've read it better, and it's not really a bug with the language, but with the example itself 09:02
sorry, I'm a bit tired :P
anyway, "say args" doesn't seem to be the culprit, as removing it throws the same error 09:03
muixirt arcnor: you know about Winxed? whiteknight.github.com/Rosella/winxed/index.html
arcnor even with an empty "init_pmc" I got the same
nop, NQP was the only thing I saw last time I checked 09:04
thanks for the link, will check
09:11 schm00ster joined
arcnor also, wanted to know if there is any way to compile PIR code to native code 09:26
maybe some tool that generates a wrapper with libparrot and my PIR or something like that
09:27 brrt joined
brrt oh, by the way 09:29
i have the name for an entry point
for the PSGI handler
ParrotApplication
moritz arcnor: yes, you can compile PIR to PBC, and then there's pbc_to_exe to turn that into a "fakexecutable" 09:33
ie something that looks like an exectutable, though it just contains the bytecode and links to parrot
arcnor yeah, thanks! 09:34
not working on my side because architecture issues, but maybe I did something wrong during parrot compilation
but great to know!
moritz it works fairly reliable for rakudo (Perl 6 on parrot)
arcnor yeah, I mean i386/x86_64 issues 09:35
moritz though rakudo always uses an installed parrot, never one from the build tree
arcnor although it seems I have everything compiled for x86_64, not sure why it's failing
moritz maybe that makes a difference
arcnor oh, ok, permissions :P
it installed with root only permissions, although the error says "error for x86_64 architecture" 09:36
yeah, working great! 09:37
dalek kudo/nom: 3a20b76 | moritz++ | / (2 files):
remove some deprecated subs and methods
10:10
11:08 JimmyZ joined 12:27 arcnor joined 12:55 schm00ster joined 12:56 PacoAir joined
dalek kudo/nom: f4b83df | moritz++ | tools/build/NQP_REVISION:
bump NQP revision to get dyncall callbacks, arnsholt++
13:05
kudo/nom: 705fabb | (Felix Herrmann)++ | src/core/Main.pm:
make Main.pm output a usage message on an unexpected named argument instead of bind failing

Signed-off-by: Moritz Lenz <moritz@faui2k3.org>
13:26 bluescreen joined 13:40 brrt left 15:37 dalek joined, Util joined 15:42 Coke joined 15:46 jashwanth joined 15:58 preflex_ joined 16:16 rurban joined 16:27 rurban joined 16:33 darbelo joined 17:23 mtk joined 17:26 dmalcolm joined 17:35 whiteknight joined 17:52 particle joined 18:49 particle joined 19:02 Patterner joined 19:39 darbelo joined
dalek kudo/trait-exceptions: afe141b | moritz++ | src/ (2 files):
refactor World.rethrow a bit

you can now throw typed exceptions without file/line information, and have World.ex-handle add them for you previously only untyped exceptions were supported, and wrapped into X::Comp::AdHoc.
  arnsholt++ for poking me
19:54
kudo/trait-exceptions: de73915 | moritz++ | src/ (3 files):
enable throwing of X::Comp exceptions from trait handlers
kudo/trait-exceptions: 92b627f | moritz++ | src/Perl6/Actions.pm:
ex-handle routine traits
20:03
20:11 tuxit joined
dalek kudo/trait-exceptions: 85800a0 | moritz++ | src/ (2 files):
more exception fixes
20:15
kudo/trait-exceptions: ff98fd1 | moritz++ | src/core/Exception.pm:
X::Export::NameClash now also does X::Comp
20:38
kudo/trait-exceptions: fe675c9 | moritz++ | src/Perl6/ (2 files):
fix pod
20:44
kudo/nom: afe141b | moritz++ | src/ (2 files):
refactor World.rethrow a bit

you can now throw typed exceptions without file/line information, and have World.ex-handle add them for you previously only untyped exceptions were supported, and wrapped into X::Comp::AdHoc.
  arnsholt++ for poking me
21:01
kudo/nom: de73915 | moritz++ | src/ (3 files):
enable throwing of X::Comp exceptions from trait handlers
kudo/nom: 92b627f | moritz++ | src/Perl6/Actions.pm:
ex-handle routine traits
kudo/nom: 85800a0 | moritz++ | src/ (2 files):
more exception fixes
kudo/nom: ff98fd1 | moritz++ | src/core/Exception.pm:
X::Export::NameClash now also does X::Comp
kudo/nom: fe675c9 | moritz++ | src/Perl6/ (2 files):
fix pod
kudo/nom: e99dd90 | moritz++ | src/ (4 files):
Merge remote-tracking branch 'origin/trait-exceptions' into nom

This enables throwing of X::Comp derived exceptions in traits, and Perl6::World.rethrow adds file name and line number
kudo/nom: 96699c0 | jnthn++ | docs/ChangeLog:
Be a little more precise/informative about magnitude of memory improvements.
21:08
kudo/nom: 7b678c3 | jnthn++ | docs/ChangeLog:
Mention PIRT.
21:11
kudo/nom: 7c4c8b1 | moritz++ | docs/ChangeLog:
mention trait exception improvements in ChangeLog
21:13
21:22 benabik joined
dalek p: 127288f | jnthn++ | src/QAST/Operations.nqp:
Using 'pure' is gonna confuse everyone as to what it means, so just call it inlinable.
21:31
p: d94369f | jnthn++ | src/QAST/Operations.nqp:
Collect op inlinability information and allow it to be queried.
21:44 benabik joined
dalek p: a8df907 | jnthn++ | / (12 files):
Add a QAST::InlinePlaceholder to represent a place in the QAST where an argument needs to be filled in when inlining. Implement a first cut of producing a tree with the placeholders substituted in.
22:17
p/sigsp: 5c0a24b | pmichaud++ | src/ (2 files):
Initial patches to ignore leading whitespace in rules.
22:41
23:01 whiteknight joined
dalek kudo/setops: f0c5c2d | jnthn++ | src/ (4 files):
Initial stab at porting of set operations from Niecza's CORE.setting. Doesn't pass set.t yet, but worse somehow slows down CORE.setting parse quite a bit. Pushing this to allow @other to investigate either issue; need to resolve whether the ops even belong in core before this is merged also.
23:06
whiteknight good evening, #parrot 23:18
23:26 benabik joined