Parrot 4.5.0 "Buff-faced Pygmy Parrot" | parrot.org/ | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 29 June 2012.
dalek p/toqast: 407a1cf | pmichaud++ | src/HLL/Compiler.pm:
Update stagestats to use a bitmask instead of levels.

   0x04 = force gc sweep before displaying stats
   0x08 = pause between stages
00:57
p: a4165a9 | pmichaud++ | src/HLL/Compiler.pm:
Update stagestats to use a bitmask instead of levels.

   0x04 = force gc sweep before displaying stats
   0x08 = pause between stages
01:16
03:11 perlite joined 03:59 kid51 joined
dalek p: b9d44ce | pmichaud++ | src/QRegex/ (3 files):
[qregex] Initial implementation of <( and )> tokens.
04:20
p: 66edbf6 | pmichaud++ | t/qregex/01-qregex.t:
Add some got/expected output to t/qregex/01-qregex.t .
p: b07bc9e | pmichaud++ | t/qregex/rx_metachars:
[qregex]: Add some tests for <( and )> .
kudo/nom: a569e39 | pmichaud++ | / (4 files):
Update <( and )> in regexes to use code inherited from NQP.
04:34
06:19 y_echo joined 06:32 Khisanth joined
dalek d_parrot: d7b486b | (Bart Wiegmans)++ | / (9 files):
mod_parrot_util now uses the /internal/ parrot api which fixes a problem with error catching and return
07:19
08:37 brrt joined 09:26 PacoAir joined 10:03 whiteknight joined
whiteknight good morning, #parrot 10:04
brrt hey, whiteknight 10:16
i just send a mail
i predictably am in kind of a pickle again :-) 10:23
10:24 Psyche^ joined 10:29 brrt joined
brrt but, its time for lunch 10:29
so we will probably talk later 10:30
bye &
10:36 zby_home joined 11:06 rich joined
dalek Heuristic branch merge: pushed 67 commits to parrot/threads by Whiteknight 11:35
kudo/toqast: f96df3b | jnthn++ | src/QPerl6/Actions.pm:
Translate the rest of the 'obvious' remaining PAST:: usages in the Actions. Thsoe that remain are interesting in some way. :-)
12:33
kudo/toqast: 0c943c2 | jnthn++ | src/QPerl6/World.pm:
Translate the easy remaining PAST usages in World.
p/toqast: fd47dae | jnthn++ | src/QAST/Operations.nqp:
Add what/how/who ops.
13:05
p/toqast: 58acfd1 | jnthn++ | src/QAST/ (2 files):
Add a way to mark a block as having a custom arguments processor, and compile it to a :call_sig usage on Parrot.
kudo/toqast: 9b02aca | jnthn++ | src/QPerl6/ (3 files):
Add a few ops to the abstraction layer.
13:07
kudo/toqast: c62d139 | jnthn++ | src/QPerl6/Actions.pm:
Update arguments handling. Gets back one more sanity test, and changes the failure mode of many others.
kudo/toqast: bf653dd | jnthn++ | src/QPerl6/Actions.pm:
Update compilation of .WHAT/.HOW/.WHO.
kudo/toqast: 9114f92 | jnthn++ | src/QPerl6/ (2 files):
Start to update return value handling.
13:22
kudo/toqast: a543d24 | jnthn++ | src/QPerl6/ (2 files):
Update Perl 6 capture_lex handling, which wins back one more sanity test.
kudo/toqast: 3f5bb89 | jnthn++ | src/QPerl6/Actions.pm:
Make returnless analysis not explode.
13:39 kid51 joined
kid51 msg whiteknight Please see irclog.perlgeek.de/parrot/2012-06-11#i_5710278 for my initial report of severe problems with threads branch 14:05
aloha OK. I'll deliver the message.
14:11 brrt joined 14:12 brrt joined
dalek p/toqast: 9c4dfa5 | jnthn++ | / (4 files):
Implement and test resultchild, which allows something other than the final statement of a QAST::Stmt or QAST::Stmts to be used as the result of the overall operation.
14:14
14:20 PacoAir_ joined 14:49 whiteknight joined
dalek p/toqast: 2cf193e | jnthn++ | src/QAST/Operations.nqp:
Port lexotic to QAST.
14:55
brrt ping NotFound 14:57
or, anybody about winxed
i want to catch exceptions java-style 14:58
i.e.
catch all apache.error
but no other exceptions
... wait, i just try it out :-) 14:59
well, purely java-style does not work 15:00
hmm. 15:01
looking at the ops in question looks like it is impossible it will ever work
fair enough 15:02
ok, now i have another problem 15:05
i need to reliably determine if something 'does' an array 15:06
but there are X array types
looking at tests 15:08
does $P0, 'array'
that should be it 15:09
whiteknight yes 15:17
Parrot has a notion of named roles, which the "does" opcode tests for 15:18
isa (winxed "instanceof" operator) tests for class hierarchy, does tests named roles
so all our array types will "does 'array'"
but some of them will x instanceof 'ResizablePMCArray' 15:19
similar for does "hash" on some types
brrt does is not builtin in winxed, but inline makes it so 15:22
:-)
brrt thinks psgi is a bit byzantine 15:23
whiteknight ah, Rosella must have it as one of it's inlines, because I use it often 15:26
I can never remember what I add or what is built in to winxed
brrt adding inlines is easy though :-) 15:30
for that matter
having all code available is hugely easy in general 15:31
whiteknight yes 15:39
brrt hows closure support in winxed, is it lousy / disadviced, or ok? 15:40
15:41 markp joined 15:53 PacoAir joined
whiteknight it's good 15:55
it passes the man/boy test easily, and I've done a Y combinator in it before that's quite clean looking
rurban How about merging iocleanup1 ? Only some pod and assert tests fail. Or do you need windows tests? 15:56
whiteknight rakudo fails some tests still, because of slightly differnet read() semantics 15:57
windows tests would be very good. I haven't gotten there yet because I wanted to merge threads first
but I forgot about kid51++'s error reports, so I'm not going to do that
rurban whiteknight: kid51 said 8 tests between lines 1310 and 1985 15:59
on threads
whiteknight yeah
rurban probably not important I guess.
whiteknight I have to get access to a PPC box and look at it, before moving forward 16:00
dalek p/toqast: f80052a | jnthn++ | src/QAST/Compiler.nqp:
s/newclosure/capture_lex/ for consistency with PAST.
p/toqast: 7de611e | jnthn++ | src/QAST/ (2 files):
Fix register allocation so that lexicals don't get stomped on.
rurban I started testing those two branches also. I have no PPC, only kid51
dalek kudo/toqast: 05a1e61 | jnthn++ | src/QPerl6/Actions.pm:
Update return handling for QAST.
kudo/toqast: c6c6488 | jnthn++ | src/QPerl6/Actions.pm:
Stop add_inlining_info blowing up, though really this whole thing goes away soon since we'll be able to serialize bits of QAST.
rurban But I'm trying some other esoteric platforms
whiteknight I haven't tested io_cleanup1 on windows in a while. I will try to do that tonight 16:02
you can too, if you have access :)
brb, have to go get lunch
rurban I have my own windows test box 16:03
16:13 jashwanth joined
dalek p/toqast: 2cb23aa | jnthn++ | src/QAST/Compiler.nqp:
Ensure blocks always end up with a lexinfo.
16:16
16:25 fperrad joined
benabik ~~ 16:57
whiteknight hello benabik 16:58
benabik o/ whiteknight 16:59
How's things?
whiteknight heh, compared to what you've been going through, I'm doing great
how are you? How's the new person? 17:00
benabik I'm feeling alright, but that's partially because my wife kept saying "Go back to sleep" before I was fully awake. Have to break her of that habit.
He's doing fine. Much less like a banana and gaining weight despite feeding difficulties.
moritz if she's breast-feeding him, there's not too much you can do :-) 17:01
benabik I can change him and bottle feed him instead of having her fuss over it for an hour.
moritz well, not all children like the mixture of breast and bottle feeding 17:03
benabik Better than him not eating. :-/
But we just saw the pediatrician and he's healthy, so less complaints. :-) 17:04
moritz aye
if he gains weight, (nearlly) all is fine
benabik Gained more than an ounce since discharge yesterday, so can't be too bad. :-D 17:05
dalek p/toqast: ad562d8 | jnthn++ | src/QAST/Operations.nqp:
Implement op xor (which has the semantics of xor_nqp).
17:12
kudo/toqast: 2ce8e79 | jnthn++ | src/QPerl6/Grammar.pm:
xor_nqp => xor; now down to 2 failing test files in 00-parrot and 3 in 01-sanity.
17:13
whiteknight benabik: we had a lot of trouble feeding ours the first few days. But the rule never changes: If they get hungry enough, they will eat 17:15
17:35 lucian joined
dalek kudo/toqast: 3dd5f6f | jnthn++ | src/QPerl6/Actions.pm:
Eliminate a usage of viviself.
17:40
kudo/toqast: a466813 | jnthn++ | src/QPerl6/ (2 files):
Start fixing package lookups a bit. Gets us one more test passing again.
sorear aloha: source 17:53
does anyone here know where aloha's source is? 17:54
17:54 PerlJam joined
dalek kudo/nom: c24da0b | pmichaud++ | src/core/Str.pm:
Improve the negative start/length failure messages for substr.
18:01
pmichaud it still bugs me that substr calls that last argument "length". :-)
(in S32) 18:02
afk, lunch
18:18 contingencyplan joined
benabik aloha: aloha? 18:43
aloha benabik: aloha is simple Bot::BasicBot::Pluggable hosted on github.com/bacek/aloha
benabik sorear: ^^
sorear thanks 18:45
rurban whiteknight: io_cleanup1 fails on solaris with cc: "src/io/api.c", line 1923: void function cannot return value 19:39
19:58 whiteknight joined
whiteknight good afternoon, #parrot 20:00
rurban whiteknight: What about the unused io_userhandle vtable functions?
whiteknight which ones are unused?
rurban all 20:01
whiteknight oh, the userhandle ones. Sorry
yeah, that's not implemented yet
rurban in your io_cleanup1 branch
whiteknight it's a stub for later work
rurban Ok, I fixed the t/codingstd/c_arg_assert.t to skip those tests
Is there a ticket?
whiteknight no 20:02
rurban It's GH #796 now 20:03
I don't have write access to parrot on github btw. yet 20:04
So I'll do pull requests
whiteknight why not? Do you want it?
rurban Sure
whiteknight done 20:05
rurban thanks. This is easier now 20:06
whiteknight much easier 20:07
dalek rrot/whiteknight/io_cleanup1: 9c08d45 | rurban++ | src/io/api.c:
sun cc detected: "src/io/api.c", line 1923: void function cannot return value
rrot/whiteknight/io_cleanup1: 065b5a2 | rurban++ | t/codingstd/c_arg_assert.t:
skip yet unused io_userhandle vtable functions [GH #796]
whiteknight I used to have an opensolaris VM I used for testing, but I haven't been able to find a version I liked since the oracle merger 20:08
so I haven't used suncc in two years now
rurban I am happily using sun cc and gcc on an opensolaris 10 vm
But it was pretty hard to find the best release. I hated solaris 11 20:09
benabik ... Happy? Sun CC? These concepts do not go together in my head.
rurban CC (their c++ compiler) is still too tricky to use for me. 20:10
I am happy if cc finds bugs gcc does not find
even clang not
But the HPUX linker is still the weirdest. Tux uses that. 20:11
io_cleanup1 looks mergable to me now
threads needs lib/Parrot/Pmc2c/Attribute.pm usage to be fixed 20:14
dalek kudo/nom: 3e00089 | pmichaud++ | src/core/Parameter.pm:
Fix .positional for capture parameters in signatures. masak++
20:18
whiteknight rurban++ Thanks! 20:31
There's still an issue with Rakudo failing some spectests on that branch, because of the different read() semantics
so I need to figure out if we can patch Rakudo or if we need to revert the semantics in the branch
rurban I think moritz fixed some rakudo issues on iocleanup1 today
whiteknight I think I can move back to the old semantis WITHOUT bringing back all the ugly code 20:32
doesn't look like any commits to that branch recently
rurban yeah, old. github.com/rakudo/rakudo/commits/p...iocleanup1 20:33
but iocleanup1 still looks much easier to merge than threads. 20:34
We need a threads merge volunteer because time is running out.
whiteknight why is time running out? 20:38
rurban Because I want to have it in 4.6
moritz rurban: I don't think I did
whiteknight moritz! 20:39
moritz yes, that's me :-)
whiteknight moritz: What do you want to do with the io_cleanup1 branch? Do you want me to change read() back to the old semantics? Or can we try to patch Rakudo to use the new behavior?
rurban moritz: sorry. I mixed it up
whiteknight I really don't know what the synopses require, if they have a stance on it at all
moritz whiteknight: well, first of all I want sockets fixed
whiteknight moritz: I think the last remaining sockets failures are because of the read differences 20:40
I think I've fixed the encoding problems
moritz whiteknight: when?
whiteknight either that, or I'm reading the test output wrong
moritz whiteknight: 'cause last time I tried (after you said you fixed the soeckts), I still got the weird error message about ASCII stuff
whiteknight let me check again 20:41
I'm going to rebuild everything now and try the test again
maybe I'm going crazy
moritz I don't know what the current state of read is
but I'm fine with read_bytes($n) returning $n bytes, and read($n) returning $n characters 20:42
whiteknight okay
read_bytes($n) returns $n bytes exactly in a ByteBuffer, while read($n) returns $n characters?
moritz yes (unless it might make sense to return fewer bytes/characters in some situations; I'm not sure what the best practise is) 20:43
whiteknight yeah, they return up to $n bytes/characters 20:44
fewer if there are fewer to be had
moritz then that's fine with me
whiteknight okay, great
sorear note though that "fewer to be had" can be a transient condition 20:45
whiteknight of course
sorear generally on Unix, a socket read will return when there is at least one byte in the kernel socket buffer
whiteknight yes, that semantic was a source of much....tweaking
sorear I happen to be a great fan of that 20:46
moritz it's easier to emulate the other behaviour (gathering more bytes in a buffer) than the other way round 20:47
whiteknight the problem with that is if you do a recv and there's nothing in the buffer and noting on the way, you can hang
sorear does aloha still do tickets? 20:49
dalek p: 8062b32 | pmichaud++ | src/QRegex/Cursor.nqp:
[qregex] Add !cursor_more, a preliminary method for handling :g, :ov, :ex.
20:51
p: 052b7a1 | pmichaud++ | src/pmc/qrpa.pmc:
[qrpa] Fix exception message for shift from empty array (jnthn++).
whiteknight I think it was dalek doing the tickets, and I don't know
sorear looks like there's no ticket handling at the moment 20:52
so much for pulling aloha source to look for code I could copy into dalek!
rurban whiteknight: Thanks for the threads cleanup. Testing this now
t/pmc/alarm.t hangs on cygwin 20:53
whiteknight okay, that's news to me 20:55
rurban it hangs in WaitForSingleObjectEx()
whiteknight I should really record all these reports
rurban I should really parrotbug them.
whiteknight hmm.. I wonder if the threading code is misidentifying cygwin as being regular windows
rurban: yes please! 20:56
rurban It hang only in the last alarm test. I'll check it out.
This is on master, not threads
whiteknight oh 20:57
master has alarms tests?
rurban apparently. The last "Alarm/sleep interaction" test 20:59
whiteknight weird 21:00
alarms and sleep are both arguably broken in master, so I guess I'm not surprised
arguably, they always have been (but sometimes they don't break the tests) 21:01
moritz whiteknight: oh, the socket tests really have improved 21:05
now "just" 10 of them fail
I think a recv_bytes or so would allow me to restore the old behavior 21:09
but I'm not certain that that's what we want
I'll have to check with the #perl6 folks
but now, sleep &
rurban smolder.parrot.org/app/projects/rep...ails/30024 is the failing cywgin test on master 21:10
There's is also no windows test at all for this on smolder 21:11
smolder.parrot.org/app/projects/rep...ails/30025 catches an io_cleanup1 error on solaris in t/pmc/filehandle.t 21:17
not ok 2 - $I0 = $P0.buffer_size() # get buffer size 21:18
whiteknight moritz: yay! I'm not crazy! 21:25
at least, not completely. And not today
msg moritz: Just tell me whatever Rakudo wants from the io_cleanup1 branch and I'll make it happen
aloha OK. I'll deliver the message.
rurban going home 21:40
22:25 markp joined
dalek p: 7995664 | pmichaud++ | src/ops/nqp.ops:
Clean up some gcc compiler warnings.
22:31
p: eb7f09e | pmichaud++ | src/6model/ (4 files):
More compiler warning cleanups.
p: 28f89ef | pmichaud++ | src/6model/base64.c:
More casting and code cleanup.
22:39 lucian joined 22:50 perlite joined 23:36 kid51 joined