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:15 kid51 joined 02:12 kid51 joined 02:36 Psyche^ joined 05:38 fperrad joined 06:33 awwaiid joined
dalek kudo/toqast: 633f401 | jnthn++ | src/ (2 files):
Fix up handling of failed symbol lookups, thus eliminating a couple of reamining NPMCAs and fixing a couple more tests.
10:48
11:00 JimmyZ joined
dalek p/toqast: c21542a | jnthn++ | src/QAST/ (2 files):
Restore line number annotation emission. Fixes callframe.t.
11:10
11:11 brrt joined
dalek kudo/toqast: d0dc2d3 | moritz++ | src/core/IO/Socket/INET.pm:
explicitly set encoding on sockets
11:16
kudo/toqast: e09fbe6 | moritz++ | src/core/IO/Socket/INET.pm:
Merge remote branch 'remotes/origin/parrot-iocleanup1' into nom
kudo/toqast: cd31947 | moritz++ | src/core/List.pm:
fix List.tree

it got broken by the last API change of MapIter.new
kudo/toqast: 6db12d6 | moritz++ | src/core/IO/Socket/INET.pm:
Revert "Merge remote branch 'remotes/origin/parrot-iocleanup1' into nom"

This reverts commit e09fbe68707707004d1111dba7b0b6fb9e100541, reversing changes made to 5b56cfcf9286e70b9a77a73369b80ad98ad10786.
kudo/toqast: 3ac8c77 | moritz++ | src/core/List.pm:
fix another misuse of MapIter.new, felher++
kudo/toqast: acf9778 | jnthn++ | src/core/List.pm:
Merge branch 'nom' into toqast
kudo/toqast: 7f3a7b2 | jnthn++ | src/Perl6/Actions.pm:
Fix detection of existing CATCH in a try, fixing one of the broken tests in catch.t.
11:33
11:34 kid51 joined 11:38 JimmyZ_ joined 12:08 kid51 joined
dalek kudo/toqast: e084b07 | jnthn++ | src/Perl6/Actions.pm:
Fix last remaining failures in catch.t.
12:20
12:54 PacoAir joined
moritz oh hai 12:54
spawnw returns an int that you have to bit-shift 8 bits to get to the return value of the program 12:55
JimmyZ hi
moritz what's in those shifted-away bits?
and can they used to get more information about the error?
like, distinguishing a failed spawn from a command with non-zero return value?
Coke moritz: I suspect it's using the same model as perl5. 13:33
moritz Coke: I suspect so too, but I don't want to base my code on suspicions 13:35
Coke the opcode just says "system dependant". 13:50
the generic version seems to return the status value from waitpid 13:51
... or the return value of execlp 13:53
Coke stops reading half the source and just points to "platform/generic/exec.c" 13:54
13:56 bluescreen joined
moritz ok, if forking worked, the result of waitpid is returned 14:04
14:30 JimmyZ_ joined 14:44 dmalcolm joined 15:53 lucian joined 16:00 darbelo joined, jashwanth joined 16:48 whiteknight joined
whiteknight good afternoon, #parrot 16:48
benabik o/ whiteknight
rurban hi #parrot
benabik o/ rurban, #parrot
whiteknight hello benabik, rurban
dalek p/toqast: f5d0884 | jnthn++ | src/QAST/Compiler.nqp:
Don't emit variable lookup code when the variable is in void context. Cuts down on code generated for declarations, but also fixes implicit %_ handling.
16:58
benabik I love it when I look at a failing test and go "how did this code ever work"? 16:59
Even better is when I can make it work somewhere else. 17:00
Hm. Editing commit messages in vim with subjects of "vim: did stuff" leads to interesting errors. 17:06
Oh! I know why this wasn't triggered by my manual testing. I had dead code at the beginning of the PBC. 17:07
dalek CT: 24ba6e9 | benabik++ | t/ (2 files):
t/common: Load Decompile

For maximum DRY (or is that minimum RY?)
17:09
CT: c3d555e | benabik++ | src/PACT/Packfile/Decompile.winxed:
Packfile.Decompile: use $load directive

It's clearer than writing my own init function, and matches the style I'm using for tests.
CT: c725ca9 | benabik++ | t/ (2 files):
t/common: Central compile function

Takes in PIR, outputs a Packfile. Going to be doing this a lot so would rather not write those three lines over and over again.
CT: d05e70f | benabik++ | src/disasm.winxed:
disasm: Use Winxed $directives
CT: 5377db3 | benabik++ | src/PACT/Packfile/Decompile.winxed:
Decompile: Don't try to pop things off a null sub

It doesn't work very well. Managed to avoid this one in manual testing by having an :immediate sub in there so there was dead code before the first sub.
First bug caught by writing tests. How exciting.
17:10
whiteknight wowsers! 17:11
benabik ?
whiteknight lots of commits
I like commits
I CRAVE THEM
our preciouses
benabik whiteknight: I've been updating the vim highlighting for winxed too, don't know if you saw that one. (It seems not to be connected to dalek) 17:12
whiteknight I haven't seen that. I wonder how we can connect it to dalek
benabik Huh. The most basic PIR file has 4 strings and 2 PMCs 17:14
17:16 kjs joined
whiteknight that few? 17:20
benabik I'm not sure why there's an empty string, although I follow the other three. 17:21
dalek kudo/toqast: eb13c5a | jnthn++ | src/Perl6/Actions.pm:
Fix an accidental violation of the QAST::Stmt usage rules when a block becomes a hash.
17:22
benabik Huh. Not empty string, null string? 17:29
whiteknight whatev 17:34
benabik Oh. Maybe that's the UUID. 17:38
whiteknight the UUID shoudl be part of the header, I think 17:39
not one of the string constants
benabik Oh.
whiteknight although, we don't really use it anyway 17:42
benabik Yeah.
whiteknight That's something we're definitely going to want at some point, I think
but, low on the priority list until we get security 17:44
benabik huh. There's no way to get the name of an oplib out of its PMC?
whiteknight there isn 17:45
't?
add it
benabik Oh. I get a hash, not an RPA of them. 17:46
whiteknight okay
benabik Yay tests exposing bad planning. 17:49
alvis++ 18:21
whiteknight alvis++ indeed! (but wait, why are you giving him karma, specifically?) 18:22
not like we need a reason, of course :(
...:)
benabik Reporting on #ps. Remembering that today is #ps. Doing useful things to report on #ps. :-D 18:23
whiteknight ....damnit!
thanks for the reminder
benabik #ps in 67m
whiteknight I used to have some sort of calendar reminder set up for #ps, but that went away and I can never remember it on my own 18:24
Coke there's a google calendar, "comp.lang.parrot" 18:29
dalek CT: a74de0c | benabik++ | src/PACT/Packfile.winxed:
Packfile: dump oplibs
18:42
CT: 048e1d2 | benabik++ | src/PACT/Packfile.winxed:
Packfile: oplibs are stored in hashes, not RPAs
CT: acc68f9 | benabik++ | t/ (2 files):
t/common: Add decompile function
CT: 7d6e739 | benabik++ | t/common.winxed:
t/common: PACT uses call_bits frequently
CT: c1f27b1 | benabik++ | / (2 files):
Test Decompiling a (basically) empty sub

This is in t/02-decompile because I realized I probably want some tests for the basic packfile data structures in 01-packfile/
18:56 schmooster joined
benabik msg whiteknight Oh. My winxed highlighting has been in my own fork. Sending pull request.. 18:59
aloha OK. I'll deliver the message.
dalek kudo/nom: a4eacdf | moritz++ | t/spectest.data:
remove ucfirst/lcfirst tests

they are gone or going
19:14
benabik #ps in 15? 19:15
cotto yup 19:22
benabik o/ Coke
Errrr... 19:23
cotto too
cotto I get myself confused with him all the time. 19:25
Coke Just the other year I worked for Microsoft. 20:04
benabik Coke: That sounds like the setup to a joke, but I don't know the straight line. 20:05
Coke just that cotto used to work there. 20:07
I myself am now a GE drone.
rurban: asn? 20:12
er, asan? 20:13
rurban address sanitizer: code.google.com/p/address-sanitizer/
Coke aaaaah, thanks. 20:14
rurban perldoc perlhacktips 20:15
20:21 tobym joined 20:22 sivoais joined
dalek p: cff22c2 | moritz++ | src/PAST/NQP.pir:
add nqp::tclc op
20:39
kudo/nom: 4fe23e7 | moritz++ | / (5 files):
implement tclc
20:40
kudo/toqast: a9af262 | jnthn++ | src/ops/perl6.ops:
A couple of native type handling tweaks.
20:51
kudo/toqast: 3cc9d76 | jnthn++ | src/Perl6/Optimizer.pm:
Re-instate compile time resolution of multiple dispatches, where we have sufficient type info.
p/toqast: 0555208 | jnthn++ | src/QAST/Operations.nqp:
Be sure that invocants are boxed objects.
kudo/toqast: 03dfa84 | jnthn++ | src/Perl6/Optimizer.pm:
Unbust line number reporting in errors generated by l'optimizer.
21:00
kudo/toqast: ee26e27 | jnthn++ | src/Perl6/Actions.pm:
Fix the busted macro stuff. Long story short. :lexical(0) has gone away, and this is how its replaced.
21:30
kudo/toqast: 5a3d1f9 | jnthn++ | src/Perl6/World.pm:
This is probably needed for serializing macro stuff (though maybe not sufficient); adding it since I spotted it.
Heuristic branch merge: pushed 21 commits to nqp/toqast by jnthn 21:47
kudo/toqast: a4eacdf | moritz++ | t/spectest.data:
remove ucfirst/lcfirst tests

they are gone or going
22:04
kudo/toqast: 4fe23e7 | moritz++ | / (5 files):
implement tclc
kudo/toqast: c23523d | jnthn++ | / (4 files):
Merge branch 'nom' into toqast
kudo/toqast: a9dbdef | jnthn++ | src/Perl6/Ops.pm:
Add tclc op (could go in NQP also; feel free to move).
p/toqast: 8a9b631 | jnthn++ | src/QAST/Block.nqp:
Toss unsued attribute on QAST::Block.
22:05