Parrot 1.3.0 "Andean Swift" released | parrot.org
Set by moderator on 23 June 2009.
00:02 patspam joined
mikehh At the moment I can build, smoke and run fulltest in less than 30 minutes - at least on Ununtu 9.04 amd64 00:04
Austin Grr. 00:09
... readin' mah code, findin' mah bugz.
00:19 whoppix joined
Austin is singing along to the Pine Box Boys... "deth-country" 8-O 00:19
00:19 skids joined
davidfetter isn't that a little redundant? 00:23
Austin Oh, no. 00:25
Country is like "I'm sad," or like "I was sad, but now I'm better." 00:26
Deth-country is like "I'm killing you, and it's because I'm sad."
davidfetter and this is...?
heh
Austin Makes all the difference, really.
davidfetter likes epic poetry 00:27
Austin Or, "I'm going on a killing rampage, and it's because I'm nuts. And my daddy was, too."
davidfetter which is almost always sung
Austin Or rapped.
"Many-splendored Odysseus ..."
davidfetter indeed :)
Austin Try explaining to people that rap == epic poetry. You get some funny looks. 00:28
:) 00:29
davidfetter what's to explain? 00:31
Austin sings, "Well, I left Kentucky back in '49 and went to Detroit working on a 'ssembly line. The first year they had me putting wheels on Cadillacs." 00:32
davidfetter <3 johnny cash
Austin Ayup.
You buttocks Johnny Cash? 00:33
davidfetter lol!
cotto seen darbelo
purl darbelo was last seen on #parrot 3 days, 2 hours, 33 minutes and 51 seconds ago, saying: If you get there first, it yours. [Jul 3 21:54:35 2009]
Austin Another parrotQuote
davidfetter "honey, take me for a spin"
00:33 jimmy joined
Austin "The first day I got me a fuel pump. The next day I got me an engine and a trunk..." 00:33
Who is the Aesop character with the low-hanging fruit? 00:34
davidfetter um
Tene Tantalus?
Wait, no, that's greek. 00:35
Austin Many-spendored Tantalus...
davidfetter heh
Austin yeah.
00:35 davidfetter joined
davidfetter grrr! firefox crash ftl :P 00:36
Austin Hmm.. Tantalus may be the best I can find. 00:39
Google is not a very good friend today.
cotto msg darbelo You should post something on your blog, even if it's just a note that you're not dead. 00:41
purl Message for darbelo stored.
Austin Cotto: didn't you hear? Darbelo is dead.
It turns out darbelo == Michael Jackson.
More talented than any of us thought.. 00:42
singer, dancer, haxx0r
Many-spendored darbelo
hachi cotto: ? 00:43
Austin Hello, hachi.
Did you get some messages about purl today?
hachi /wi/win 26
it's not special... it's 'are' instead of 'is' 00:44
I'll find a way to clear it
Austin hands hachi the purl plunger... 00:45
cotto Austin, don't do that. 00:46
Austin Don't give hachi the plunger?
cotto You scared me for the .5s before my common sense kicked in. 00:47
Austin Or don't make mortality jokes?
Or don't compare parrot haxxors to Michael Jackson?
cotto I was going to say mortality jokes, but I guess I'd have to not make them first. 00:48
Austin :)
pot Hey kettle, you're black.
Austin Hachi, I can't find it, but there's an old Dilbert strip where Alice is complaining to the PHB about wanting a raise. And then the maintenance guy walks up with some kind of 5-limbed geebus stuck in his plunger and says, "Look what I found stuck in the toilet." 00:49
hachi O_o
davidfetter 'sup hachi 00:50
Austin All the low-hanging fruits are plucked, at least for PAST::Block. :(
00:53 zak_ joined
cotto gives Austin a cherry picker. 00:54
Austin Say!
Thanks.
The paper today reported (in the "news of the strange") that a husband and wife won the men's and women's championships at the International Cherry-Pit Spitting contest.
cotto How romantic. 01:02
Austin The couple that spits together ..
Okay, here's a challenge. 01:04
cotto I imagine their home life is interesting.
Austin PAST::Node defines a method that conflicts with a keyword in Close. What should I do? 01:05
cotto make the parser smarter
or is the keyword one that could reasonably be used in the same place a method could? 01:06
Austin Well, first remember that methods and subs are basically the same (methods have an adverb attached). 01:08
So yeah, a sub name could appear at the start of a line, and so could a storage class ("lexical"). 01:09
It would have to see the '(' afterwards, I guess.
cotto The parser could certainly do that. 01:10
Austin Is that "Sure, the parser could do that ..."? Or is that "Yes, the parser could do that, and here's how ..." ? 01:13
cotto goes off to download Close... 01:14
(but no cigar)
Austin code.google.com/p/close/source/brow...grammar.pg 01:15
If you know what the difference is between a "conventional C grammar" and one which could do that, I'll gladly take a hand-waving sentence or two. 01:16
cotto What's the conflicting keyword?
Austin lexical
It's a storage specifier, like "register" 01:17
cotto and the current grammar doesn't parse it? 01:19
Austin It parses fine. 01:20
But the PCT library (pct/src/PAST/Node.pir) which I'm trying to re-implement in Close defines a method named "lexical".
Which it can't do because that's a reserved word, etc.
cotto Do you have a test case that needs to parse but doesn't? 01:21
Austin So in order to be able to transparently do PCT, I need to either (a) suck it up and rename that method, or (b) figure out how to smarten up the Close parser to allow (some) reserved words as identiifers.
cotto I'd go with (b). 01:22
Austin nopaste.com/p/aCWaKapXX 01:23
Change _lexical to lexical, it breaks.
purl Austin: that doesn't look right
Austin So the worst case scenario is something short. 01:26
I think that as long as a paren or operator is required, identifiers can impinge on adverbial type reserved words (const, lexical, register). 01:28
They obviously shouldn't come close to statement reserved words, because "while (a) ;" is a valid statement, and would be ambiguous with a function call to "while".
Hmm.. C# cleverly works around this by permitting an @ sigil to require validity. 01:31
cotto Does Close work fine with the latest Parrot from svn?
Austin That's both hackish and lazy .. and therefore surprisingly attractive.
I don't know. Bide.
My parrot is @39808
What's yours? 01:32
purl yours is the best!
cotto 39901 or so
Austin Wow. I should try to catch up. 01:33
I know Pm committed a couple of fixes for me.
I'll do that now. 01:34
901. Now to build 01:38
cotto it builds and the tests are running ok
Austin "Today we salute you, Mr. Homemade Pontoon-Boat maker..."
cotto looks good 01:39
bacek_at_work svn.parrot.org/languages/c99/trunk/src/c99.pg 01:40
Austin C99, bacek? 01:41
bacek_at_work it disallow using "keyword" as "identifier"
Yeah, old good C99...
Austin Yes. (And between us chickens, I stole a bunch of stuff from there..) 01:42
bacek_at_work :)
It's Artistic License. You "borrowed" a bunch of stuff :)
dalek rrot: r39902 | jkeenan++ | branches/darwinhints:
Create branch to work on TT 727.
01:43
Austin Sure. I'm an Artiste.
cotto Austin, why doesn't --target=parse work?
Austin I have no idea. I didn't know there was such an animal. 01:44
cotto (past, post and pir work)
It's handy.
You should be getting it for free by using PCT.
Austin What does it do?
Or what would it do if it worked?
cotto It'd spit out the parse tree. 01:45
Austin Hmm.
Not the past tree?
(Of course, that would be --target=past)
What does it do instead? 01:46
cotto dies horribly
Austin ROFL
cotto it seems to have something to do with some inline pir
Austin Ahh. 01:47
There you have it.
(??)
Does the --parse disable inline pir or something?
Because that'll kill the whole thing.
cotto I'm not sure how it interacts with inline PIR. That'd be a good question for pmichaud. 01:52
Austin So many of them are... :)
cotto pmichaud, watch out for buses. 01:53
Austin You think we could get one of those parrot foundation grants for putting pmichaud in a glassed-in zoo habitat.
cotto seen pmichaud 01:54
purl pmichaud was last seen on #parrot 1 hours, 58 minutes and 37 seconds ago, saying: (2GB, in fact)
Austin whispers, "There he is, folks. Parrotus haxx0rus in his native habitat. Notice how he survives on bottled water and granola bars. But without his laptop, he'd be a ferocious beast indeed..." 01:55
A couple million for the asteroid shield, a few thousand for the anti-vehicle barricade... 01:56
cotto It'd be good for Parrot but I think his family would object.
Austin We could give them passes once a week.
Philadelphia Zoo sells some kind of seasonal thing for cheap.
Failed test: t/symlink 01:57
Surprise.
purl HERPES! HLAGHLAGHLAGHLAGH
Austin purl: forget surprise.
purl Austin: I forgot surprise
Austin Surprise.
sudo make install 02:00
purl: help purl 02:01
purl Austin: what?
Austin purl: purl?
purl well, i am My mother's name is Eliza or some horror port of perl 4 to perl 5 or part of a bot net or hated or part of a botnet of hatred or a minor fork of floot, source and documentation at github.com/hachi/flooterbuck-purl/tree/master
Austin purl: sudo is [sudo] password for $who: 02:06
purl ...but sudo is preferable to the alternatives in most cases, IME or xkcd.com/c149.html...
Austin sudo
sudo?
purl it has been said that sudo is preferable to the alternatives in most cases, IME or xkcd.com/c149.html
Austin sudo make me a sandwich
dalek rrot: r39903 | jkeenan++ | branches/darwinhints/lib/Parrot/Configure/Options/Test/Prepare.pm:
Make one internal variable's name more self-documenting.
Austin Okay, back to close. 02:07
Infinoid sudo 02:11
sudo?
purl [sudo] password for Infinoid:
Infinoid oh well, I was close
Austin Yeah.
I'm hoping.
Infinoid Austin++ 02:12
goodnight all
02:12 Andy joined
Austin g'night inf 02:14
02:15 ilia left
cotto Austin, what's the reason you use all the DECL_MODE_FOO rules? Could the same effect not be achieved without the inline pir? 02:17
Austin At the cost of splitting the rules, yes. 02:18
cotto btw, the code works fine if you remove "lexical" from language_elements. I don't know if that's a good long-term solution though. 02:19
Austin :)
I kind of assume that it will work via backtracking.
But it's good to know.
Thanks. 02:20
(Backtracking == slooooooow.) 02:23
02:29 tetragon_ joined
dalek rrot: r39904 | jkeenan++ | branches/darwinhints/lib/Parrot/Configure/Options/Test/Prepare.pm:
Inline comments as to what an internal sub does.
02:33
02:35 janus joined
Coke wow. I am missing tortoise svn on my mac. 02:41
Austin :) 02:42
svn status
svn update
purl At revision 666.
Austin svn commit -m "Comment"
What more do you need?
Coke wonders if he can use the new svn merge stuff in this repo. 02:45
Austin What repo? 02:46
purl i heard repo was on search.cpan.org for modules that set it via repository() in their Makefile.PL or repo.or.cz/w/repo.git or repository
Coke googlecode
purl i guess googlecode is google's sourceforge replacement
Austin Probably not - they're at 1.4
dalek rtcl: r520 | coke++ | branches/tclstring (6 files):
Merge in r511:519 from trunk
02:52
Coke bah. if I take my TclString PMC, rename it to TclStringPMC, and create a PIR subclass of it, I get test failures. 02:53
Coke tries to remember which bug this is tcling.
Austin Why? 02:54
purl Left field.
Coke why what?
purl Left field.
Austin Are they checking type, or is it just a mystery?
Coke The type is (ostensibly) always TclString
in trunk, that's a PMC, in branch, that's a pir class. 02:55
Austin Right, but if you just subclass and rename, everything should stay the same, no?
Except the class name, and maybe namespace.
(The p6object stuff, for instance, considers all PMCs to be in parrot:) 02:56
Coke the class name is still 'TclString'
Austin So what test is failing?
(Is this in the tclstring branch?) 02:57
Coke t/cmd_expr.t, t/cmd_upvar.t
yes.
Austin A particular one in expr? 02:58
Coke I'm looking at upvar first, as it's smaller. it's a segfault.
Austin Yikes. GC problem, or something real? 03:00
Coke I bet something in class is overriding a vtable I used to get from one of my PMC's ancestors. 03:01
er, class/object.
Austin Maybe try it by delegating? 03:02
nopaste "Coke" at 72.228.52.192 pasted "backtrace from tclstring branch" (13 lines) at nopaste.snit.ch/17134 03:10
Austin This is the $I0 = isa obj, $P1 version? 03:15
Does tcl use HLL tcl? 03:17
Or does it still use parrot?
Coke HLL
early adopter.
ah. no, it's this: trac.parrot.org/parrot/ticket/776 03:19
I thought this felt familiar. :| 03:20
03:20 donaldh joined, buildbot joined
dalek rtcl: r521 | coke++ | branches/tclstring/BRANCH_STATUS:
note why this branch is failing so I don't diagnose it a /third/ time.
03:21
Austin Is undef a tcl class? 03:22
Coke Austin: no. see src/class/undef.pmc
Austin Or the standard undef pmc
Okay.
Coke er, src/pmc/undef.pmc
Austin Do you have the tcl.pir checked in? 03:23
Coke ? 03:24
Austin The Tcl interpreter that is calling ISA here?
Or whatever code it is. 03:25
Coke build tcl. you then have "tcl.pbc"
Austin Because I had some problems with isa -- though none of them were core dumps -- when trying to "isa $P99, 'Undef'"
Because "Undef" is a parrot class, and I'm in the Close HLL namespace (/close/...) so I had to create a rooted key. 03:26
Coke so, $I0 = isa foo, [ 'parrot'; 'Undef'] ? 03:27
Austin nopaste.com/p/aZFDrRZLnb
Pretty much, except that it's harder. 03:28
You wind up using the namespace, which has a _root_ variant.
Coke it occurs to me that I should be using $I0 = defined foo ; anyway.
Austin Umm. Will that work?
Okay. It's a vtable. Should work. 03:30
Coke if I do that, the segfault moves to Parrot_Class_does 03:33
Austin Progress!
Because it's undef, and therefore doesn't? 03:34
But no.
Coke I give up.
03:44 cotto joined
cotto Why can't there be any Linux DVD players that don't either suck or occasionally take down X? 03:47
Austin It's in the rules.
All testers work for MSFT.
cotto Yeah right, testers. 03:48
I wouldn't mind paying for one if it would only work reliably and not have any inane missing functionality. 03:49
Austin $35 at Big Lots. 03:52
Comes with 5.1 surround.
Plays DVDs.
AC or DC12v.
chromatic Region free?
Austin Probably not.
chromatic No imports for you! 03:53
cotto region-sensitivity counts as inane missing functionality (as does the inability to skip "unskippable" sections) 03:54
Austin Where's kid51? xkcd.com/416/ 03:55
bacek_at_work "Everybody, meet Stig. Stig used to program Ruby, but now he's recovering." :) 04:21
cotto: any progress with opsc? I'm tired to hinting gc bugs and want to switch something different... 04:22
cotto I was going to hack out the parser after watching a movie, but the parser may end up being less frustrating. 04:24
For some reason vlc doesn't want to display any video.
Have you been looking at ops2c? 04:25
Bah. Movies are overrated. 04:31
bacek_at_work, opsc is mostly empty files at this point. It's not at the point where more than one person can usefully hack on it. 04:36
bacek_at_work cotto: I did look at ops2c. After few minutes my brainz melted and start laughing insanely... 04:40
cotto I wouldn't call it great code, but there's a method to the chaos. I did have to make a list of the files and their purposes before the code made sense, though. 04:48
Is there a nice way to get Configure.pl to regenerate makefiles without going through the whole process? 04:51
04:53 Theory joined
coke_segf_TT_776 cotto: no, but that's what "reconfigure" is for, IIRC. 04:54
cotto coke_segf_TT_776, are you trying to draw attention to something? 04:55
coke_segf_TT_776 though tools/*/reconfigure.pl has a serious lack of user-facing docs.
cotto: that would be very passive aggressive of me.
dalek rrot: r39905 | cotto++ | branches/ops_pct (5 files):
[opsc] add more empty files, update Makefile template and configure code, add a minimal opsc.pir
04:57
cotto It compiles! 05:01
purl Ship it!
cotto now to make it do something
dalek rrot: r39906 | cotto++ | branches/ops_pct/compilers/opsc/opsc.pir:
[opsc] update includes in opsc.pir
05:04
05:06 buildbot joined 06:01 uniejo joined 06:42 iblechbot joined 06:43 chromatic joined
dalek rrot: r39907 | cotto++ | branches/ops_pct/compilers/opsc (2 files):
[opsc] add enough parser code to parse a single op, although not usefully
07:10
cotto bacek_at_work, ping 07:16
bacek_at_work cotto: pong 07:17
cotto bacek, if you want to extend the parser, it needs to recognize certain chunks of code as being distinct, as they'll need to be transformed on a per-runcore basis. 07:18
bacek_at_work yeah. We have to fully parse op_body
either nano-C or some-special-op-language 07:19
cotto I'm trying to avoid writing a C parser, but you're probably right.
bacek_at_work let's borrow if from close
cotto It can be very sloppy as long as it catches the special bits
bacek_at_work :)
cotto (which are listed in lib/Parrot/OpsFile.pm in the "Op Body" section) 07:20
bacek_at_work vardecl/function_call/if()/simple math. We probably can limit nano-C to those constructs.
07:21 donaldh joined
bacek_at_work (and steal bits from OpsFile of cause) 07:21
cotto idk about stealing from OpsFile.pm. It's pretty hacky. afaict it's mostly useful as documentation.
bacek_at_work "imaginary bits" :) 07:22
cotto It's not too hard to do the equivalent of s/a/b/ in PIR using the "PGE::P6Regex" language. 07:26
nopaste "cotto" at 74.61.2.46 pasted "example of using PGE::Perl6Regex for search and replace" (91 lines) at nopaste.snit.ch/17137
bacek_at_work but for emitting L1 we have to understand semantic of body anyway 07:27
cotto Yes, but we won't be turning the current ops code into L1.
bacek_at_work so we don't have to parse it at all. 07:28
ok, I'll take a look at current OpsFile tonight. 07:30
clock?
purl bacek_at_work: LAX: Tue 12:30am PDT / CHI: Tue 2:30am CDT / NYC: Tue 3:30am EDT / LON: Tue 8:30am BST / BER: Tue 9:30am CEST / IND: Tue 1:00pm IST / TOK: Tue 4:30pm JST / SYD: Tue 5:30pm EST /
cotto no, except to make some substitutions for per-runcore stuff
bacek_at_work cotto: ok.
What is your localtime()?
cotto 0300 07:31
0030 rather
bacek_at_work ok...
bacek_at_work personally hate "EST" timezone for last 2 hours.
cotto I'm in Seattle, Washington.
well, Bellevue, but it's near Seattle. 07:32
bacek_at_work Technically "Sydney" is about 1x1 kilometers size. Even smaller. 07:33
So I'm in "MacQuarie Park" atm
cotto Hmm. Looking at the ops code, I'm thinking that it'll be less work just to slurp in the whole body and use PGE::Perl6Regex. 07:36
There should be some ways to make it easier to read than the proof of concept code I nopasted. 07:37
bacek_at_work I told ya, steal Rakudo's subst function!
cotto Is that PIR-level? 07:39
bacek_at_work yes
cotto We may need something slightly more flexible, but that'll be a very good starting point. 07:41
nm. There's even a variant that takes a Sub as the second arg. 07:42
pmichaud++ for that
bacek_at_work github.com/rakudo/rakudo/blob/99ad1...r.pir#L648
cotto yup
07:44 zak_ joined
cotto bacek++ 07:44
That means we'll need to be a little careful about the order in which we apply the transformations, but we can just copy what OpsFile.pm does. 07:46
bacek_at_work indeed.
cotto Yay. We have a plan. 07:47
07:48 buildbot joined
bacek_at_work I'll throw few lines of code into opsc tonight... If I'll not die before... 07:49
cotto btw, ops2c works by taking the names of all core .ops files at once, but it'll be pretty simple to make the compiler aware of that since pmichaud made $?FILES available as a lexical. 07:50
I sense some days of productive hacking ahead. 07:51
bacek_at_work $?FILES in NQP? 07:52
It's great!
cotto Yeah; now we don't need a custom evalfiles. 07:53
bacek_at_work ok, going home now. 08:04
See you soon
cotto I'm going to bed. Good night. 08:06
dalek kudo: 9f63647 | moritz++ | src/setting/Pair.pm:
Implement Hash ~~ Pair smartmatching
08:07
08:29 patspam joined 08:32 bacek joined
bacek cotto: is it ok to jump on ops_pct branch for some wild hacking? 08:40
moritz what's the name of the list that receives the trac mails? 08:42
ah, parrot-tickets 08:43
bacek look like cotto fell asleep... 08:46
cotto bacek, go ahead
bacek opening vim and start putting more code while no one see it
cotto can't fall asleep
I was actually hoping you'd do that. :]
bacek passing few sleeping pills to cotto
s/sleeping pills/bottles of vodka/ 08:47
cotto eyes bacek's Australian sleeping pills with suspicion
bacek It's genuine Russian sleeping pills!
08:48 Austin joined
dalek rrot: r39908 | bacek++ | branches/ops_pct/compilers/opsc/compiler/grammar.pg:
[opsc] Trailing whitespace removal.
08:50
kudo: 7203e4b | moritz++ | t/spectest.data:
re-add smartmatch.t to spectest.data

average much more correct than our average test file. This commit also removes S12-attributes/class2.t which has been merged into class.t
08:58
kudo: e249a62 | moritz++ | src/ (2 files):
move Hash.ACCEPTS to the setting, add more variants

understand the magic with hash_ACCEPTS that the anonymous sub in src/classes/Hash.pir:32-41 does, but the spectest didn't throw up any black smoke.
cotto Maybe I can sleep now. Happy hacking, bacek! 09:17
bacek cotto: sleep well. 09:18
09:49 kid51 joined 09:53 MoC joined
dalek rrot: r39909 | bacek++ | branches/ops_pct/compilers/opsc/t (2 files):
Add t/common.pir mostly stolen from pmc_pct.
09:53
rrot: r39910 | bacek++ | branches/ops_pct/compilers/opsc/t/01-parse.t:
[t] Initial failing test for opsc
09:57
rrot: r39911 | bacek++ | branches/ops_pct/compilers/opsc/t/harness:
[t] Steal t/harness from pmc_pct
rrot: r39912 | bacek++ | branches/ops_pct/compilers/opsc/compiler/grammar.pg:
Simplify parsing of op body. Actually don't parse it at all.
rrot: r39913 | bacek++ | branches/ops_pct/compilers/opsc/compiler/grammar.pg:
Fix op_body parsing. Actually treat op_body literally.
rrot: r39914 | bacek++ | branches/ops_pct/compilers/opsc/t/01-parse.t:
Add more tests
09:58 masak joined
dalek rrot: r39915 | bacek++ | branches/ops_pct/compilers/opsc (2 files):
Add handling of pod comments as ws.
10:23
rrot: r39916 | jkeenan++ | branches/darwinhints/t/steps (4 files):
Add subdirectories for steps tests.
rrot: r39917 | jkeenan++ | branches/darwinhints (1 files):
Reposition all steps tests into more finely specified directories.
10:40
rrot: r39918 | jkeenan++ | branches/darwinhints/t/steps (73 files):
Make references to file's name correspond to new file path.
10:57
11:01 flh joined
dalek rrot: r39919 | bacek++ | branches/ops_pct/compilers/opsc (3 files):
[opsc] Initial version of Actions.
11:04
11:21 donaldh joined
dalek rrot: r39920 | bacek++ | branches/ops_pct/compilers/opsc/t/01-parse.t:
[t] Add test for parsing ops file header.
11:30
rrot: r39921 | bacek++ | branches/ops_pct/compilers/opsc/compiler/grammar.pg:
[opsc] "Fake" parse header.
rrot: r39922 | bacek++ | branches/ops_pct/compilers/opsc (2 files):
Add tests for parsing op params and couple of workarounds for missing LTM.
11:34
kudo: 40251e4 | (Kevan Benson)++ | src/classes/Array.pir:
Patch to change bahavior of .unshift to return modified array, not number of elements
11:52
kudo: 8a786f4 | (Kevan Benson)++ | src/classes/Array.pir:
Patch to change bahavior of .push to return modified array, not number of elements
rrot: r39923 | bacek++ | branches/ops_pct/compilers/opsc/builtins.pir:
Steal builtins.pir from pmc_pct
12:07
rrot: r39924 | bacek++ | branches/ops_pct/compilers/opsc (3 files):
Fully parse ops file header
rrot: r39925 | bacek++ | branches/ops_pct/compilers/pge/PGE/Match.pir:
Fix typo in PGE::Match.orig
bacek msg pmichaud trac.parrot.org/parrot/changeset/39925/ I found spot on the Sun! :) 12:13
purl Message for pmichaud stored.
dalek rrot: r39926 | jkeenan++ | branches/darwinhints (2 files):
Write inline comments re what needs to be changed. Change name of one subroutine to be more self-documenting.
12:17
rrot: r39927 | bacek++ | branches/ops_pct/compilers/opsc/t (3 files):
[t] Steal more stuff from pmc_pct - 02-parse-all-files.t
12:24
rrot: r39928 | bacek++ | branches/ops_pct/src/ops/bit.ops:
[cage] Fix dangling '}' in bit.ops.
bacek strict parsing ftw! 12:28
pmichaud++ # PCT is almost awesome (yeah, I really want LTM...) 12:29
12:34 tetragon joined 12:36 Whiteknight joined
dalek kudo: 0c7475a | moritz++ | README:
[README] changed some quotes to C<...> POD markup

the official test suite, we import all of official test suite
12:45
12:50 ruoso joined
dalek rrot: r39929 | bacek++ | branches/ops_pct/compilers/opsc/t/01-parse.t:
[t] Add tests for :flag parsing
12:51
12:52 ruoso joined 12:54 ruoso joined 12:59 skids joined
Whiteknight good morning #parrot 13:19
bacek starring at watch 13:23
good night, Whiteknight
Whiteknight oh, i wish it was night and I was back in bed!
masak I wish I could sleep during the nights. 13:24
bacek imaging little pony
masak bacek: you've read that one too?! 13:25
I wouldn't call it quality literature, but that story sure has a point. 13:26
(which, I guess, can best be summarized as "little ponies aren't very good at making wishes")
13:30 jdv79 joined 13:33 skids joined 13:49 skids joined 13:51 bacek joined
dalek rrot: r39930 | bacek++ | branches/ops_pct/compilers/opsc/t/03-past.t:
[t] Add stub for created PAST testing.
13:55
rrot: r39931 | bacek++ | branches/ops_pct/compilers/opsc/t/03-past.t:
[t] Add more PAST tests
rrot: r39932 | bacek++ | branches/ops_pct/compilers/opsc (2 files):
Inmplement handling :flags in PAST
bacek msg cotto Good morning. I almost finished parsing ops. Only op_params left. It's your turn now to emit something useful :) 13:57
purl Message for cotto stored.
bacek msg cotto I've got some problems with Test::More. On my box it produces out-of-order test numbers. I didn't manage to figure why and fix it. 14:00
purl Message for cotto stored.
14:17 amuck_ joined 14:26 bacek joined
dalek rrot: r39933 | bacek++ | branches/ops_pct/compilers/opsc (3 files):
[opsc] Implement PASTing of op's parameters
14:28
rrot: r39934 | bacek++ | branches/ops_pct/compilers/opsc/compiler/grammar.pg:
[opsc] Yet another simplify of op_body parsing. It's now twice faster than before.
bacek ok. enough for today. 14:29
14:35 skids joined, Theory joined
bacek msg cotto Parser/paster is done. It's your turn to drive this train. 14:36
purl Message for cotto stored.
bacek must sleep 14:37
purl $bacek->sleep(8 * 3600);
bacek good girl
purl :)
Coke_segf_TT_776 cotto: why the empty files?
bacek Coke_segf_TT_776: ? 14:39
Coke_segf_TT_776 empty files were committed to the ops_pct branch.
bacek Ah. Just for discuss/preserve directory layout.
And basic Makefile scaffolding 14:40
(and free karma of course :) 14:42
karma cotto 14:43
purl cotto has karma of 736
bacek trying to resist to type "karma bacek" 14:44
...
EPIC FAIL
purl EPIC FAIL is chopping chili and go pee without washing hands or whatever led to you being born
bacek karma bacek
purl bacek has karma of 717
bacek bah!
rg bacek: you know, if you don't want us to know you're looking you can always /msg purl ;) 14:45
bacek rg: I know... But it's 12:45 here and my brain already gone... 14:47
bacek must definitely sleep now
rg have a good night :) 14:48
bacek rg: good night 14:49
15:20 donaldh joined 15:24 buildbot joined 15:38 flh joined 16:14 darbelo joined
moritz it's #ps day, don't forget to pre-post your report! 16:21
Whiteknight moritz++ for the reminder! 16:28
pmichaud #ps in 118 16:32
Whiteknight Coke: Which segfault was that, that you turned into pure PIR? 16:55
Coke Whiteknight: RT#63592 16:57
which is probably closable if rakudo now. 16:58
er, if rakudo is using that version of parrot.
NotFound Coke: the patch isn't still applied 16:59
Coke NotFound: ah.
so it's not using that version then. =-)
NotFound I'm waiting to ask about it #ps
Coke k 17:00
17:03 Whiteknight_ joined, abesapien joined
Whiteknight_ stupid internet connection 17:04
17:04 chromatic joined 17:05 allison joined
Whiteknight_ good morning chromatic and allison 17:06
17:08 Whiteknight left
allison Whiteknight: good morning 17:08
purl Here I am, brain the size of a planet, and all they say is 'Good Morning'
17:08 Whiteknight joined
NotFound allison: Can you take a look at TT #804? 17:08
allison NotFound: sure
Whiteknight: (I managed to return your greeting exactly between dropoff and return) 17:09
Whiteknight nice! my internet connection today is craptastic
chromatic morning 17:10
17:13 Theory joined
dalek rrot: r39935 | fperrad++ | trunk/config/gen/platform/win32 (3 files):
[mingw] fix gcc 4.4.0 warning :
17:16
allison NotFound: the general principle is sound, how does it do in a full test run? 17:18
NotFound Uh, forgot to make a testf 17:19
Doing now 17:20
Pass on linux amd64, going to try in linux i386... 17:22
Pass on linux i386 17:27
allison NotFound: it's a small enough change, and long enough before the next release that I'm okay with applying it to trunk now 17:33
NotFound: find testers for the major platforms to make absolutely sure 17:34
NotFound: also, needs a more meaningful variable name than "newoffset"
NotFound: perhaps "handler_start" or "handler_body" 17:36
NotFound: and the value of that struct member needs to be reset to null after it's used 17:37
NotFound Good idea.
purl NotFound: Good Idea: Giving a small child a balloon. Bad Idea: Giving a small child a bunch of balloons.
17:38 mikehh joined 17:45 hercynium joined
NotFound make fulltest pass on both platforms 17:47
dalek website: darbelo++ | Not Dead Yet 18:03
website: www.parrot.org/content/not-dead-yet
allison NotFound: excellent
darbelo Hmm. That took a while. Over 30 mins from post to dalek noticing. 18:05
18:05 jrtayloriv joined 18:21 barney joined
cotto slowbot is slow 18:22
chromatic Robot robot is robot.
pmichaud #ps in 7 18:23
Coke Whiteknight: bet you a dollar you won't. 18:48
Whiteknight Before the 1.4 release?
chromatic No guarantees for Tcl; I can't reproduce them.
18:48 kurahaupo joined 18:49 brbrooks joined
Coke chromatic: can't reproduce which? 18:49
chromatic I can't even run Tcl.
Coke ... ah, because you won't install parrot?
brbrooks how can I find out about future work for parrot GC
chromatic Because installing Parrot every time I make a change is a right pain. 18:50
Whiteknight brbooks: what do you need? 18:51
Coke heh. I cannot tell you how wrong that is. Ah well.
Whiteknight brbrooks*
chromatic How wrong is it?
Coke I can't tell you.
cotto brbrooks, iiuc the future of the GC is that we're encouraging any interested hackers to write a new core.
chromatic I make a one-line change to Parrot. I rebuild Parrot. I install all of Parrot and its supporting libraries. 18:52
cotto chromatic, is that evitable if you want to work from an installed Parrot?
chromatic Yep.
I can play symlink games with libparrot, I suppose. 18:53
brbrooks cotto: why? and... why new developers?
Whiteknight brbrooks: old developers can work on i too 18:54
work on it too *
(my keyboard foo is weak today)
cotto brbrooks, The API should be stable and well-encapsulated enough to allow new GC cores. The next step is to get a second core in there to make sure it's possible.
Tene pmichaud: I'll work on some of the library loading issues this afternoon (teaching class right now). I'll at least try to diagnose the namespace issue japhb was having. 18:55
cotto I never said "new", only "interested". ;)
Coke I'm not sure if you're complaining about the /thought/ of having to do the install, the invocation of 'make install-dev', or the work done by the install-dev step.
chromatic I'm complaining because it adds a lot of time and work to a process that's very quick and easy for other languages.
Tene cdp 18:56
Coke I would agree with 'some time', but "a lot of work"? <shrug> Ok. hopefully it'll be moot in a week.
Whiteknight chromatic: the way forward would seem to be install parrot once, find and isolate the bug to a pure-PIR snippet, and then take that back to your development environment to fix
Coke (pure-PIR) that can't be done for a majority of the bugs I report.
18:56 jrtayloriv joined
Tene 'make install install-dev' is 13s for me, fwiw 18:57
Coke since they seem to involve bizarre PMC interactions.
pmichaud There are other reasons that we need to fix the 'make' part of Parrot
right now "make test" doesn't test what gets installed
cotto install-dev implies install, iirc
Whiteknight Coke: I'm sure it can be done, and notice I didn't say "Small Pure-PIR snippet"
Coke Whiteknight: no. some code is written is C.
C Ain't PIR.
brbrooks cotto: doesn't parrot support different GC's now?
Whiteknight that is a hurdle but a small one at best. We can build C in the development environment
Coke yes, but /isolating/ that C is a PITA. 18:58
Tene brbrooks: not yet. refactoring to allow that is one of the tasks WhiteKnight is planning, iirc.
Whiteknight brbrooks: in theory, yes. We just don't have any different ones to test with
Tene Whiteknight: Oh? Huh, I must have missed that.
Coke In many cases, it's just MUCH easier to say "please checkout my language and run it."
Tene I've been very much out of parrot ever since I moved. I've been missing all the fun. :(
Coke (except I can't do that right now, see blocker.)
Whiteknight Tene: we do have an encapsulated API for the GC, the only step that's missing is creating the second core to test
cotto brbrooks, the existing alternate GC cores haven't been maintained and don't currently work. 19:00
brbrooks is wondering how long it would take to hack a new GC core 19:01
chromatic The first one, probably longer than it should.
The second one, somewhat less.
The third... well, here's a beer.
Tene oh man, a GC would be fun to write.
cotto wonders how Whiteknight feels about Tene's statement. 19:02
chromatic slaps the table in front of Tene
You left off a corollary.
A GC is difficult to debug.
Coke before I forget and since I don't have the floor in PS - 'make test' on feather was failing in a built parrot because it conflicted with the installed 1.2.0 ; I thought we fixed this.
Whiteknight it is decently fun to write 19:03
it's seriously unfun to debug
brbrooks how many sloc is the current? 19:06
chromatic Hm, tough to say.
Fewer than 5k sloc, I think.
19:09 amuck_ left
Whiteknight sloc? 19:12
purl sloc is, like, like penis size. or code minus whitespace, minus comments or www.dwheeler.com/sloc/
cotto Not really. I'd argue that smaller is generally better.
brbrooks so a GC is not particularly small... but not huge 19:13
Whiteknight no, not huge at all
again, the difficulty is in testing and debugging
19:20 flh joined, brbrooks joined
brbrooks does parrot make use of boehm gc? 19:25
moritz no, it's a custom gc 19:26
(afaict)
19:28 Whiteknight_ joined
brbrooks Whiteknight: how practical is it to hook up a new core using the boehm gc 19:32
Whiteknight brbrooks: I've looked into the Boehm collector before, and I think it should be very possible 19:33
moritz first question: is the license compatible with artistic 2.0?
Whiteknight moritz: no idea
darbelo moritz: I think it's under an X11-ish license, so I would guess that it's compatible. 19:38
moritz I just looked at it, it looks BSDish (aka "very permissive") 19:39
brbrooks Even if it's just for dev purposes to have a new core to test the API with, never actually check any boehm source in it could be a good start
moritz since all we have to do is to retain a copyright and license note, I see no problem either way 19:40
cotto istr Allison saying that there's a problem distributing BSD-licensed code with Parrot. 19:43
darbelo I think that in order for code to ship with parrot (read: be in the same tarball) it needs to be under the Artistic License
I think copyright assignement was also required, but I can't recall for sure. 19:44
chromatic The question is "Isn't this mere aggregation?" but yes, assume that distributing code with Parrot requires AL 2.0. 19:45
darbelo The all-purpose guaranteed-safe solution seems to be "distribute separately". 19:48
chromatic Yep. 19:49
cotto Knowing that we could separately distribute a GC core would certainly help encapsulation, although I don't know how feasible it is atm.
chromatic We don't have a way to load and initialize one externally. 19:50
darbelo I meant something more like what parrot does for ICU, "use if available at build-time" 19:51
kurahaupo chromatic: what about doing it the other way around: have a small wrapper that includes the GC then load parrot
chromatic kurahaupo, that could work. I was just thinking today "What would pbc_to_exe need to do something like this?" 19:52
Whiteknight I don't see why we would need to disribute the Boehm source code with Parrot
create a wrapper, and require the user to download boehm separately if they want to use it
19:53 tokuhirom_ joined
cotto something like Rakudo's --gen-parrot 19:54
pmichaud or even auto-detect at Configure.pl time 19:55
kurahaupo What about a GC that can return memory to the OS when it's no longer required?
moritz kurahaupo: many bonus points for that
chromatic You need a compacting/copying GC for that. 19:56
pmichaud afk for a while
chromatic That may not be a performance improvement.
kurahaupo Not that I'm proposing to write one -- $dayjob takes too much time -- but what sort of framework would be needed
chromatic You need a good mmap() implementation on all supported platforms, or else you have to be crazy enough to play sbrk() games yourself. 19:57
brbrooks would that really be *that* beneficial?
chromatic In certain circumstances, yes.
kurahaupo If your system in aggregate chews up so much memory that it swaps, conserving memory *is* a performance booster.
brbrooks Yes, but I mean practically beneficial 19:58
chromatic It depends on the memory characteristics of individual applications.
brbrooks e.g. Running Parrot in an embedded environment, which, you probably shouldn't be using parrot in the first place
chromatic I can imagine plenty of applications that perform as most memory managers expect: they reach a high water mark and bounce around there until they exit. 19:59
kurahaupo $dayjob includes toys with 64GiB of RAM that every so often slow to a crawl because of swapping
So yes it's a practical advantage (to some people, anyway)
chromatic I can imagine a few other applications where the high water mark is very, very high and they only hit that once every (let's say for the point of argument) 5 minutes.
Austin kurahaupo: You guys hiring?
I could use some 64gb toys
kurahaupo regrets mentioning $dayjob 20:00
brbrooks $dayjob permits 47mb :D
Austin :)
Tene www.rarst.net/images/Browsermemoryb...chmark.png
Austin chromatic: What's the "best"/"rightest"/"simplest" way to call an arbitrary C function from PIR? 20:01
chromatic NCI
Austin File/directory name?
examples/nci
chromatic yep 20:02
Austin loves `find`
chromatic docs/pdds/draft/pdd??_nci.pod
moritz loves `ack -g'
Austin Never heard of that. What is it?
pmichaud App::Ack in CPAN
*much* nicer than grep and find for many searches
moritz lets you rgrep with perl regexps 20:03
chromatic Powered by orphans.
pmichaud and it doesn't search .git or .svn subdirs by default
moritz very handy if you happen to know them by heart, but you can't remember the escaping rules for ordinary grep/egrep
kurahaupo chromatic: (sorry for delayed response) given that we know which words within an object are references to other objects, do you think there is scope to do heap compaction?
as part of GC 20:04
Austin Actually, it's just "ack" on CPAN. App::ack is a helper lib with anti-social documentation. 20:05
pmichaud oh.
I just know that I normally do "cpan App::Ack" to get it :-)
chromatic kurahaupo, fixing up all references to a moving GCable is tricky. 20:06
Doesn't mean it's not a good idea, nor worth doing. Just tricky.
Tene I get it from yum. 20:07
perl-ack
kurahaupo I'm thinking that we could overwrite the old object memory with a proxy for the new copy while we go hunting for references 20:08
Then whenever the GC finds a reference to such an object, it could change the referant 20:09
chromatic That sounds like a stop-the-world GC. 20:10
Not complaining, just noting.
20:10 Theory joined
brbrooks anybody familiar with region-based memory managment? 20:11
Coke wonders if he ever opened the ticket about limiting the maximum amount of memory allocated by the GC>
Tene if you're stopping the world, you wouldn't need a proxy.
chromatic Sure you do.
Tene ... oh, I misread. 20:12
kurahaupo What would the minimum number of words be that would have to be overwritten by a proxy; I'd be guessing 2 or 3 -- a reference to the new object, some sort of reference to the object type, and maybe a signature for good measure. Anything else?
chromatic It gets tricky when you have to move something that's on the C stack.
kurahaupo I'm thinking about a "soft compactor" that would "move" objects preemptively, but wait for the proxies to die of their own accord -- with a little help of course. So references in the C stack would just be left to expire -- eventually. 20:14
chromatic Leaving dangling references on the C stack sounds like a recipe for disaster. 20:15
kurahaupo Not dangling; pointing at proxies. 20:16
The trick is to instantiate the proxies in a thread-safe way.
chromatic That means that anything that wants to use any PMC which may have been on the C stack has to check for proxiness before performing any operation.
That means any PMC operation from C. 20:17
20:18 estrabd joined
Austin pmichaud: Are you aware of any code that actually makes use of the symbol_defaults method on PAST::Node? 20:18
pmichaud nqp might
kurahaupo Forgive my lack of knowledge of object structure in RAM, but how does an object know its implementation type (Perl Array, Perl Hash, P6Object, Scalar, whatever)?
brbrooks How do you profile parrot? gprof? 20:19
chromatic brbrooks, I use callgrind and kcachegrind.
kurahaupo, there are some type members of the vtable struct attached to every PMC.
pmichaud abc might 20:20
kurahaupo Okay, so trick is to pivot the vtable reference, which I'm guessing can be done atomically on most architectures.
Austin pmichaud: `find` says the only appearance in $PARROT/compilers is in PAST/Node.pir
Abc is a language?
20:20 tokuhirom_ joined
chromatic Hm, that handles the vtables. That's an interesting idea. 20:21
20:21 jan joined
chromatic It doesn't handle PObj flags... but that's definitely an interesting idea. 20:21
moritz Austin: yes
(a `bc' like calculater)
kurahaupo Need two alternative vtables -- one for active-proxy and one for proxy-under-construction.
Austin moritz: Thanks. I don't have it in .../languages
moritz Austin: they moved all out of the parrot repo 20:22
Austin Yeah, but tools/dev/fetch_languages has a list
(Of course, close isn't on the list, so abc might not be, either.) 20:23
moritz (feel free to patch close in)
20:24 skids joined
kurahaupo All entries in vtable for proxy-under-construction would do "yield" then simply jump to the same entry on the same object. All entries in vtable for active-proxy would substitute target object for "self" and then do the same. 20:26
chromatic Sure, that's fine. But there are flags in the PMC header that get read directly, not through the vtable. 20:28
cotto yay! more variant vtables. I was wondering if anyone would ever want more than just RO. 20:29
kurahaupo What about writing to those bits?
Coke I would posit that making our tools check to see if they're running from an installed version versus a build version is not a good strategy for long term support.
(Util_back_in_30_min:)
kurahaupo (As long as bits are same on old and new objects, read doesn't matter.) 20:31
cotto: I'd guess only two vtables would be needed, as long as the entry's index is still sitting in a CPU register somewhere 20:33
cotto chromatic, are you saying it'd be a good idea to eventually not mess with PObj flags directly? 20:34
pmichaud Austin: squaak uses it
cotto That might be a good cage or n00b task.
chromatic Not necessarily.
Just considering what might be necessary to make copying/compacting work.
cotto gets back to opsc 20:35
Austin Aha. Thanks, pmichaud.
chromatic Writing to those bits from a proxy object is easy.
Writing to those bits in a proxied object while there may or may not be an active proxy is more difficult.
cotto is compreg expensive?
chromatic To be fair, I want to move those bits out of the objects themselves. 20:36
20:36 Andy joined
kurahaupo wonders what exactly "those bits" are for 20:38
Tene cotto: compreg is a fetch from an interpreter hash, iirc
cotto sounds cheap
Coke works on eliminating most of myops.
cotto no need to think about caching that 20:39
kurahaupo posits that if they can be moved out of the object, they're presumably not instance information, and so could live in or near the vtable
chromatic Some of them are instance information.
The ones I meant are GC information: is this object live, does it have kids that need marking, is it on the free list, does it have special destruction, et cetera. 20:40
kurahaupo Proxy would need those just like any other object
chromatic Right, but we have to keep them synchronized between the proxy and the proxied. 20:43
Going from proxy -> proxied is easy. Going the other way is not, at least as far as I can see.
kurahaupo As far as GC is concerned, it's sort of like a scalar. No special treatment required (most of the time). 20:44
Most of the magic is in the copy process and the vtables 20:45
What other information would need to be synchronized?
kurahaupo will have to go to $dayjob soon 20:46
chromatic Any writes to PObj flags in the proxied PMC while there's a proxy pointing to it.
kurahaupo I was assuming for the sake of this that we'd move all except the GC bits out of the object. Are there any other bits that can't be moved out? Of those, any that would be too expensive to use a method to get/set? 20:47
Austin The worst part about writing tests is that they sometimes find bugs... :( 20:48
chromatic Strings and other GCable elements which *don't* have vtables also have PObj flags.
kurahaupo Ahh. I will ponder that on my way to work. Bye everyone... 20:49
dalek kudo: 19b8db2 | moritz++ | (2 files):
sync Makefile and release_guide.pod about version formats.
20:59
21:06 jrtayloriv joined 21:16 Whiteknight joined
dalek cnum-dynpmcs: r101 | darbelo++ | trunk/src/pmc/dec (3 files):
Use a PObj_private flag instead of an INTVAL for the ieee total ordering
21:19
purl i think indicator is "how to tell if the form was submitted"
21:21 bacek joined
Util Coke: (re:not a good strategy) - Noted; thanks! 21:38
bacek good morning #parrot 21:40
21:45 Theory joined
Whiteknight good morning bacek! 21:47
bacek Whiteknight: good morning
purl Here I am, brain the size of a planet, and all they say is 'Good Morning'
Whiteknight purl forget indicator 21:50
purl Whiteknight: I forgot indicator
Whiteknight purl: you're retarded 21:51
purl Whiteknight: what?
Whiteknight that's right
purl purl?
purl i am My mother's name is Eliza or some horror port of perl 4 to perl 5 or part of a bot net or hated or part of a botnet of hatred or a minor fork of floot, source and documentation at github.com/hachi/flooterbuck-purl/tree/master
NotFound Somone has tested TT #804 on some non linux platform? 22:03
bacek Non linux platform? Are they exist??? 22:06
Austin Bacek: plenty. Freebsd != linux. Solaris != linux. 22:07
Windows != linux. MacOSX != linux
VMS != linux
:)
particle BeOS != linux
cotto qnx, os/2
bacek logging to old good OS/360
moritz why, in numeric context they all evaluate to 0 ;-)
cotto MULTICS 22:08
Austin Symbian. WinCE
brbrooks minix
cotto (because you know that users are clamoring for Parrot on MULTICS)
NotFound I'd like better a cp/m implementation.
Austin cotto: I thought we'd implement MULTICS on top of parrot.
bacek Yay! Let's port parrot to C64!
Austin The first 64-bit cpu.
The C64. 22:09
purl rumour has it the c64 is GREAAT for games, dammit. or home.no/zaver/skoj/c64.jpg
Austin It just sounds kick-ass....
Everything is written in C. Everything is 64 bits. The C64.
What else could it be?
NotFound Implacable logic
particle cotto: i was thinking we should have some way of defining private flag names in a pmc declaration 22:10
Austin Particle: try "union"
cotto particle, that makes more sense than asking users to #define them.
particle such that pmc2c and pmcc autogenerate macro accessors
dalek rrot: r39936 | cotto++ | trunk/lib/Parrot/OpsFile.pm:
[ops2c] apply some creative formatting to try to increase readability
22:11
cotto That'd be a good newbie task too. 22:12
bacek cotto: wrong branch :)
NotFound I'm starting to think that the best way to get it tested on several platforms is to commit it.
22:13 Whiteknight joined
bacek NotFound: ship it! TapTinder will test it for you 22:13
cotto heh. If the ops2c code is easier to understand I'm less likely to screw up the translation to pct.
bacek NotFound: in about half an hour
NotFound Good idea, in half an hour I'll be sleeping :) 22:15
Austin try t/library/pct/PAST/Node/02-block.t 22:16
bacek NotFound: than commit it and wait for nightmares to come :)
Austin (Ignore that.)
(Wrong window)
NotFound bacek: I just hope not to have a day nightmare of purl msg tomorrow morning X-) 22:17
darbelo NotFound: I can test on OpenBSD/amd64. What do you need me to do? 22:18
bacek passing coin to NotFound
flip it. Most scientific way to decide :)
NotFound darbelo: just build and make test, for a bonus, check the pir example on RT #63592 22:19
darbelo NotFound: I see two patches attached to TT#804 which is the one I should test? 22:21
NotFound The last one, TT_804.patch 22:22
MoC NotFound: "Somone has tested TT #804 on some non linux platform?" -> smolder.plusthree.com/app/public_pr...ails/24611 (that io.t was broken before)
cotto do we have an existing tag that's used to indicate that a ticket is suitable for someone just starting to hack on Parrot? 22:23
Austin Not overtly, but you could use a "Keyword" 22:24
NotFound cotto: the 'closed' stated X-)
MoC: thanks
cotto Ok. I'll use "newbie" and put that on the new Parrot dev guide wiki page. 22:25
22:25 startPerl joined
dalek TT #817 created by cotto++: [pmc2c] don't require custom #defines for private flags 22:28
22:29 mikehh_ joined
dalek rrot: r39937 | NotFound++ | trunk (3 files):
[core] do not enter an inner runloop to handle exceptions throw from C with a pir handler, TT #804
22:31
NotFound Here we go, thanks for the feedback
Whiteknight NotFound++ 22:32
maybe parrot newbies should be called "chicks"
Whiteknight immediately reconsiders
pmichaud latest rakudo gc issues posted to parrot-dev 22:34
Whiteknight yeah, I saw that
and I'm already thrilled about that
moritz S05-mass/rx.t has been failing consistently for me, retrying... 22:35
22:36 rg1 joined
bacek discovered CONFIG_COMPAT_VDSO on linux yesterday. 22:36
cotto: did you try to run make test in opsc? 22:37
cotto no 22:38
22:38 mikehh_ joined
nopaste "bacek" at 122.110.42.109 pasted "Strange failure on opsc" (29 lines) at nopaste.snit.ch/17143 22:39
bacek cotto: looks like "is" and "ok" uses different counters :/ 22:40
22:40 Limbic_Region joined
cotto How nice. That's not confusing at all. 22:41
bacek confused. 22:43
purl You won't be after this episode of Soap!
bacek Why it's not confusing?
cotto sarcasm
bacek ok. time for $dayjob. 22:45
cotto: I'll try to implement more stuff in opsc tonight. If Moon will be in proper phase... 22:46
22:49 jrtayloriv joined, kid51 joined
dalek rrot: r39938 | cotto++ | branches/ops_pct/compilers/opsc/t (2 files):
[opsc] use is(1, 1, "xxx") as a workaround for ok(1, "xxx") apparently using a different counter than is()
22:51
rrot: r39939 | pmichaud++ | trunk/src/library.c:
[core]: Set versiondir/dynext to be last in search path.
23:05
23:07 bacek joined
Whiteknight anybody else here on amd64? 23:07
dalek kudo: 4549f3c | pmichaud++ | docs/release_guide.pod:
Minor update to docs for parrot release number in build/PARROT_REVISION.
23:08
rg yes, but on freebsd
moritz Whiteknight: amd64+linux 23:09
Whiteknight Are either of you guys seeing packfile test failures? 23:10
in Parrot
23:10 tetragon joined
chromatic I saw some bad packfile freeing errors in Rakudo on 32-bit x86 Linux. 23:11
Whiteknight I get these same failures when PBC_COMPAT is bumped but new packfiles aren't generated for the tests
so I'm wondering if these failures are from that, or if it's something else
rg Whiteknight: smolder isn't reporting any. running a new test now. 23:12
Whiteknight thanks 23:13
I'm doing a smolder run now 23:14
okay, I'm disappearing now. Have to go shopping 23:15
darbelo Whiteknight: I'm not seeing it on OpenBSD/amd64. Does it fail after a 'make realclean'?
dalek TT #818 created by whiteknight++: packfile tests failing on amd64
Whiteknight darbelo: yes, even after a fresh checkout
I have an installed Parrot somewhere, could that be borking my tests? 23:19
particle yes
Whiteknight okay, that's interesting. How do I make uninstall?
rg ok, the new report shows an eval.t failure, not packfile. 23:20
particle rm -rf Whatever
Whiteknight rg: smolder.plusthree.com/app/public_pr...ails/24615 23:21
rg yeah, mine is +1, but you're passing the eval.t 23:23
i'm passing the packfile tests
darbelo rg: what does your etal.t failure look like?
s/etal/eval/
moritz 'make test' with parrot HEAD passes here (amd64 linux) 23:24
Whiteknight okay, I have to disappear now, I'll figure this out when I get back (unless somebody beats me to it) 23:25
rg src/call/pcc.c:563: failed assertion 'PObj_is_PMC_TEST(sig_pmc)'
now if tap would tell me which test number that is, i could run gdb on it 23:26
darbelo You didn't get a coredump?
rg i did, but i don't like coredumps ;) 23:27
-v is helping :)
darbelo rg: take a look at TT#807. I think it's the same failure you're seeing. 23:28
rg looks like one of those gc bugs i've seen hunted. works fine with -G
darbelo: that looks very similar 23:30
darbelo At the very least it fails the same assertion on the same test. Comparing backtraces will probably tell us if it's the same problem or not. 23:33
rg stacktrace is quite the same aswell 23:35
i've added a short comment 23:37
darbelo Welcome to the club. Feel free to "Me too" on TT#807
23:40 particle joined 23:58 Theory joined