Parrot 0.6.0 "P&P" released | Please mentor for SoC | parrotcode.org/ | YAPC::NA talks deadline is Mar 31 | tinyurl.com/2pmnlq
Set by moderator on 18 March 2008.
darbelo "Sane enough for the gestapo" that's quite an endorsement :) 00:05
ewilhelm particle must be stuck in traffic 00:06
ewilhelm wrote to josh triplett
though maybe he is applying as a student, we'll see
chromatic We have Parrot projects? 00:08
ewilhelm piles of parrot projects
kid51 logs on from the U.S. for first time in six days.
ewilhelm chromatic: did you get mail on psoc-manager list? 00:09
chromatic The only thing I saw was one proposal.
ewilhelm today?
purl today is kick ECarroll day or Harry Houdini's death day.
chromatic wxCPAN GUI proposal, on Thursday.
ewilhelm no, different list
proposals don't come to the managers list, but I sent the link just 5min ago 00:10
chromatic I might not be on the list then.
00:21 guru joined 00:22 contingencyplan joined 00:55 contingencyplan joined
particle returns 01:02
darbelo: ping
darbelo Pong. 01:03
particle what's up?
purl Your face, particle. That's what.
ewilhelm bad bot 01:04
wknight8111 yeah, the bot needs a stern talking-to 01:05
particle gives purl a wedgie
pmichaud: ping 01:06
particle needs to consider submitting to yapc::na tonight
darbelo is looking for guidance and mentor-sheep 01:09
ewilhelm is looking at languages/c99/MAINTAINER :-/ 01:10
darbelo maybe a ship. Or a ship full of sheep. 01:11
particle tewk (with my help) created the first stab at c99
kj then ported it to the new compiler tools (pct)
ewilhelm if there are no overwhelming flaws in the application, we can sort-out the mentorship after the edit cutoff
particle kj also extended it, so it parses more than it did before 01:12
iirc, c99 can now parse some sdl header files 01:13
darbelo Thing is, The grammar chokes on the only available test file. That can give people the wrong impression. 01:14
particle indeed.
we have very many works-in-progress by excited developers 01:15
but there seem to be fewer test tuits than code tuits :(
wknight8111 like me, I'm more excited then I am talented
:)\\
particle you're a lot like me, then :) 01:16
darbelo Fixing that is trivial. changing main ( void ) to int main(int argc, char **argv)
Coke (yapc::na) I think I'm not going to submit a talk, and just focus on the workshop.
darbelo but there are some other areas where it needs work.
particle coke: that's what i thought i'd do, too
Coke kid51: haven't forgotten your patch. I think it's good, but I think we can rip out more.
particle notices a lot of files have been modified in the past week 01:17
kid51 Coke: The question is: Do we want to throw out Parrot::Revision entirely, or do we want to retain it for a narrowly defined focus. I know your ticket requested the former, but I'd like to make a case for the latter. 01:18
What else would need ripping out (if not the whole thing)?
chromatic I can live with it only supporting SVN, and not doing anything for other VCSes. 01:19
kid51 After all, I ripped out anything *I* couldn't maintain ;-)
dalek r26646 | chromatic++ | trunk: 01:20
: [PDB] Taught PDB how to catch Parrot exceptions. See RT #37287. This still
: needs more work, but it's a start.
diff: www.parrotvm.org/svn/parrot/revision?rev=26646
kid51 particle: At least submit a 1-paragraph proposal so jmcadams has something to work with.
kid51 must eat dinner; just back from Toronto
Coke I didn't see a compelling reason to keep it. I'll re-read your email to see. But I agree we should rip out at least this much. 01:23
if we only disagree about the last bits, that can be done separately, later.
particle was is das dalek? 01:26
ewilhelm I think dalek is the commit bot 01:27
or else somebody with real quick and consistent typing :-)
particle ja, wondering if this is the replacement for svnbot or what
chromatic That's the plan. 01:29
dalek r26647 | chromatic++ | trunk: 01:32
: [dynpmc] Made GDBMHash PMC use parrot/embed.h instead of parrot/parrot.h (RT
: #39043).
diff: www.parrotvm.org/svn/parrot/revision?rev=26647
particle hopefully this beastie is more stable. however, it must be throttled or we'll get chided by ircops 01:33
~1message/second
dalek r26648 | chromatic++ | trunk: 01:40
: [Amber] Updated PMCs to match PDD 17 changes.
: Made PMCs use parrot/embed.h instead of parrot/parrot.h (RT #39043). 01:41
diff: www.parrotvm.org/svn/parrot/revision?rev=26648
r26649 | chromatic++ | trunk: 01:49
: [regex] Made PMCs use parrot/embed.h instead of parrot/parrot.h (RT #39043).
diff: www.parrotvm.org/svn/parrot/revision?rev=26649
01:52 guru left
dalek r26650 | chromatic++ | trunk: 01:58
: [Pugs] Made PMCs use parrot/embed.h instead of parrot/parrot.h (RT #39043).
: Fixed some compilation errors and warnings.
diff: www.parrotvm.org/svn/parrot/revision?rev=26650
r26651 | chromatic++ | trunk: 02:04
: [WMLScript] Made PMCs use parrot/embed.h instead of parrot/parrot.h (RT #39043).
: Fixed some compilation warnings.
diff: www.parrotvm.org/svn/parrot/revision?rev=26651
02:05 Theory joined
Coke seen pmichaud? 02:07
purl pmichaud was last seen on #parrot 1 day and 2 hours ago, saying: Paula's calling me for dinner -- bbl [Mar 29 17:29:07 2008]
Coke particle: are you on top of our current SOC status? =-) 02:10
I've heard people say that make -j2 test is faster. How can this be? 02:17
(since there is only one executable in the makefile)
chromatic Make usually blocks on IO, not CPU.
Coke "assuming parrot is already built...." 02:18
02:19 teknomunk joined
chromatic I don't think I understand your question then. 02:20
Coke "make test" runs a *single* executable, neh?
(perl t/harness...)
assuming yes, then how can "make -j" make that run faster, if all it does is run multiple targets at the same time? there's only one target... 02:21
chromatic Yes, that's true.
Coke I'm just making sure that I am not the one with the disconnect here.
chromatic If Test::Harness runs its files in parallel, there's a bonus.
Otherwise, no real bonus, if make all has already happened.
dalek r26652 | coke++ | trunk: 02:24
: [tcl] Made PMCs use parrot/embed.h instead of parrot/parrot.h (RT #39043).
: chromatic++
diff: www.parrotvm.org/svn/parrot/revision?rev=26652
Coke pays attention to chromatic's commits and tcl-blocks him. 02:28
02:29 tsg joined
chromatic 'bout time someone does. 02:31
Coke tries to close out his windows ticket, but ends up doing the ZOMG UPGRADE EVERYTHING dance he does whenever he boots this xp box 02:38
Coke launches firefox to check for updates... which finishes installing the last update he downloaded. nice.
02:40 Ademan joined
chromatic No dancing, please. 02:40
Coke ... I could just shimmy. 02:41
chromatic The IRC goggles... they do nothing. 02:45
ewilhelm my -j ears are burning 02:48
does it run more than one t/harness - e.g. in languages?
Coke no. 02:55
Coke double checks...
Infinoid that would be awesome. 02:56
Coke no.
ewilhelm hmm, well make only parallelizes on sub-Makefile's, right?
Coke no.
Infinoid no, actually, sub-Makefiles are where parallel makes usually break badly
Coke (because each sub makefile is considered a single task by the top level make) 02:57
chromatic What's long and hard and full of dependencies? A submakefile.
Infinoid make parallizes on peer nodes in the dependency tree
ewilhelm so how does it slice targets to determine which parts are independent?
02:58 grim_fandango joined
Coke it analyzes all the deps. 02:58
Infinoid its just looking at the dependency tree... parents and children are dependant, siblings aren't
Coke it has to do that to do the build anyway.
ewilhelm ok, so if test had e.g. a list of result files to be built then it would parallelize? 02:59
Coke yes.
Infinoid if there were no interdependencies declared between them, then make will consider them fair game
ewilhelm (not that this would be a good approach)
Coke and then you could have a step at the end that combined all the result files into harness output.
Infinoid hey, anything that reduces developer turnaround time is worth considering in my book :)
ewilhelm would rather see it just pass -j to prove 03:00
Coke does prove respect -j ?
Coke checks.
ewilhelm yep
Infinoid ooh
Coke well there you go.
only problem there is tests that depend on each other to run, neh?
I don't think we have any of those.
chromatic They are stupid.
Throw rocks at them.
Coke Yes, master. 03:01
ewilhelm no, only problem is when things assume that they can make stupid tempfiles
purl okay, ewilhelm.
Infinoid hmm, from what I've seen so far, they're pretty good at using the basename of the test
(for core tests at least)
ewilhelm but easily solved with e.g. $filename .= $$ if need be
Infinoid do we run any tests more than once? 03:03
Infinoid throws rocks at them
ewilhelm yeah, basename works too 03:04
Coke has updated firefox, safari, subverison, and is waiting for parrot, ie7, xp, quicktime ... come on... 03:05
I eagerly await this mythical prove -j! 03:09
=-)
Coke is bit by the hq9+ issue during the svn up process. *grr* 03:11
Infinoid Coke: wknight8111 solved it by just removing all of languages/ and redoing the update
prove -j will be awesome. but recursion to different harnesses will be interesting 03:12
Coke it's my understanding that we are moving to "highlander harnesses" 03:13
chromatic There should never be any sequels? 03:15
Coke cloooose.
ewilhelm misses highlander joke ... dons kilt, tries adding scotch 03:18
Infinoid: yeah, no "different harnesses" 03:19
Coke forgot how slow "make realclean" is on windows. 03:27
03:27 Ademan joined
chromatic Here's a nickel kid, get yourself a kernel with decent IO. 03:28
ewilhelm oh crap, these cost a nickel? 03:30
chromatic Or 12 billion dollars and 5 years, if you're Vista. 03:31
(and if you're not trying to read files while you're getting network traffic)
Coke can't sleep, IO will eat me.
Infinoid I Spent 12 Billion Dollars And 5 Years And All I Got Was This Lousy Vista 03:38
dalek r26653 | coke++ | trunk: 03:46
: [codingstd]
: Eliminate unused code (msvc++)
diff: www.parrotvm.org/svn/parrot/revision?rev=26653
Coke (I think the original long running realclean I was complaining about had been stuck in some kind of loop due to the upgrade. I rescind my complaint 03:48
pmichaud /lastlog pmichaud 5
oops
Coke oooh, nifty. 03:49
I'll never have to wade through backscroll again. =-)
pmichaud: how goes?
03:49 tetragon joined
pmichaud pretty well (reading scrollback) 03:51
Coke Infinoid: can you resolve 37323 ? 03:54
(or rather, have you just?)
bother. strawberry perl's "migw32-make" seems to be preferred whether i'm in xp or cygwin. 03:55
Infinoid the latter bit sounds like what I solved 03:56
but I'd answer the original complaint with "do a realclean first, dork"
changing build types on the fly isn't easy
but if some specific examples can be found of sourcefiles which aren't rebuilt upon modification, I'd be happy to fix those up 03:57
(so far, I haven't had any problems with that)
pmichaud particle: pong 03:59
Infinoid if we really wanted to support reconfigure-with-different-build-type-on-the-fly, we should be putting our object files in a special subdir, named after the build type, or using a special suffix 04:00
I've never seen such a system that I'd call "pretty". is it worth the trouble?
Coke I'm not the guy to ask, but in general, having to ever do "make realclean" sucks. 04:01
chromatic Sorry. 04:02
Infinoid well, I can call "make realclean" internally when Configure.pl sees that a Makefile already exists... that'd save some time 04:03
pmichaud ick! no!
Infinoid didn't think so. :)
pmichaud calling "make realclean" when someone requests a different-build-type-on-the-fly might be reasonable, though 04:05
dalek r26654 | chromatic++ | trunk: 04:10
: [dotnet] Ported PMCs to PDD 17 (somehow missed them).
: Made PMCs use parrot/extend.h instead of parrot/parrot.h (RT #39043).
: Fixed some compilation warnings.
: I don't know if the tests pass; I don't have Mono. I'm just bored.
diff: www.parrotvm.org/svn/parrot/revision?rev=26654
Coke waits for someone to volunteer to give chromatic mono. 04:11
ewilhelm wonders if it requires wine 04:12
04:16 AndyA joined
dalek r26655 | coke++ | trunk: 04:17
: [t] Add a failing todo test for RT# 43048 (div by zero const. folding issue)
diff: www.parrotvm.org/svn/parrot/revision?rev=26655
Coke ewilhelm++ on his technical innuendo skill. 04:19
chromatic Wow, compilers/bcg didn't even *compile*. 04:24
dalek r26656 | chromatic++ | trunk: 04:26
: [BCG] Rescued this compiler; now it compiles.
: Made PMCs use parrot/extend.h instead of parrot/parrot.h (RT #39043).
: Removed several compiler warnings.
: Half of the tests fail, but that means they all run and half pass. Progress.
diff: www.parrotvm.org/svn/parrot/revision?rev=26656
Coke pointers on how to catch an exception from C? 04:32
chromatic r26646 04:34
Coke different but related question: for 43048, should we be 1) avoiding the constant folding of 1/0 in the first place, or should we be taking the exception that is returned from our eval and freezing that into the bytecode to rethrow it? 04:35
I suppose the alternate version is to, if we get *any* exception trying to fold, back off on the fold and then let whatever happens at runtime happen. 04:36
I like that version.
pmichaud is the constant folding actually being done based on the op? I guess it would be. 04:37
is there a div_n_ic_nc op?
actually, as I think about it more, I'm doubting that the actual op is used for the constant fold 04:38
Coke it seems to be.
compilers/imcc/optimizer.c //eval_ins
it's calling interp->op_func_table[opnum] ... 04:40
pmichaud I guess you're right.
Tene ewilhelm: I know nothing about c99. why?
Coke wonders if coke had said "tene" at one point when he meant "tewk" 04:41
chromatic I was just thinking that, but my eyes have stopped working from refactoring PMCs.
ewilhelm Tene: I was just looking for potential mentors for that proposal 04:42
Tene Ahh.
ewilhelm it looks like we might need to recruit one or two more parrot mentors for SoC still
Tene As always, if you need my help, just let me know what I need to do. 04:43
ewilhelm well, depends on what you can and want to do 04:44
ewilhelm is just the drummer
Tene Yeah, sure. 04:46
ewilhelm ok, I'll go back to guessing at your skillset 04:55
Coke whoa. I think I fixed an IMCC bug.
chromatic assigns a pile of tickets to Coke 04:56
Tene ewilhelm: heh. :) 04:57
04:59 andrewks joined
andrewks good evening all. Is there an Allison around looking for an ia64 box? 05:01
Coke tries to run. 05:02
cotto_home andrewks, she hangs out here on occasion. 05:03
Coke email is probably your best bet. 05:04
allison?
purl somebody said allison was Allison Randal <mailto:allison@perl.org>
Tene ewilhelm: mostly HLL stuff so far. My C is iffy. I don't remember most of what I've done. I recommend svn log | grep tene 05:07
ewilhelm Tene: how about perl 6? 05:08
purl perl 6 is the spec, rakudo and pugs are the implementations.
Tene ewilhelm: I have a few patches to rakudo, iirc. I've been actively following Perl 6 for quite a while. 05:09
ewilhelm: Vague question. I'm not sure what you're asking. 05:14
Coke has pmichaud volunteered for perl6 mentoring yet? 05:15
05:18 jan joined
Tene finally sleep. 05:21
Coke finishes his testing and commits the imcc fix 05:33
dalek r26657 | coke++ | trunk: 05:34
: [IMCC]
: '$I0 = 1/0' generated a compile time exception due to constant folding instead of a
: catchable runtime exception.
: - if an exception occurs during this kind of constant folding, just abort the
: optimization.
: - fixup the todo test to have proper syntax (which was missed due to the constant
: folding)
: - eliminate two invalid tests that used invalid opcodes which were missed due to
: this issue.
diff: www.parrotvm.org/svn/parrot/revision?rev=26657
Coke remembers the good old days when he would just work on tcl and leo would be the one mucking with imcc. =-) 05:35
pmichaud pmichaud has not volunteered for perl6 mentoring yet 05:54
ewilhelm no t-shirt for pmichaud :-( 05:57
06:01 davidfetter joined
dalek r26658 | chromatic++ | trunk: 06:29
: [IMCC] Fixed a segfault when parsing a yield outside of a coroutine (reported
: by Seneca Cunningham, RT #52220).
diff: www.parrotvm.org/svn/parrot/revision?rev=26658
07:22 iblechbot joined 08:17 Debolaz joined 08:49 lichtkind joined 08:54 kj joined 09:21 ilbot2 joined 09:24 Patterner joined, lichtkind joined, Debolaz joined, jan joined, andrewks joined, tetragon joined, Ademan joined, teknomunk joined, contingencyplan joined, peepsalot joined, rrando joined, particle joined, slavorg joined, Coke joined, silug joined, shamu joined, cout joined, skids joined, MagNET joined, TonyC joined, japhb joined, ruz joined, jq joined, szbalint joined, turrepurre_ joined, GeJ_ joined, dalek joined, lidden joined, cotto_home joined, Khisanth joined, ewilhelm joined, cognominal joined, mj41 joined, purl joined, jrockway joined, Dave joined, askie joined, avar joined, nnunley joined, zev joined, rhr joined, cxreg joined, workbench joined, confound joined, clunker joined, dngor joined, jjore joined, tewk joined, jjuran joined, pfig joined, rblackwe_ joined, integral joined, toft joined, spinclad joined, bgeron joined, diakopter joined, TimToady joined, Tene joined, pjcj joined, Sartak joined, Infinoid joined, Piper joined, buildbot joined, shorten joined, Maddingue joined, wolverian joined, Juerd joined, rafl joined, leo joined, pmichaud joined, PerlJam joined, jonathan joined 09:35 AndyA joined 09:47 IllvilJa joined 09:53 ruoso joined 10:49 ask_ joined 11:19 davidfetter joined 11:45 ask_ joined 12:15 ruoso joined 12:18 kid51 joined 12:21 moritz joined
Coke yawns 12:23
Debolaz ponders yawning too 12:24
moritz wonders why rakudo's List.reverse method is so weird 12:25
my @a = ('foo'); say @a.reverse
oof
particle stop yawning and get to work!@ 12:51
moritz anyway, I added a test to the pugs test suite, so it will be caught at some point
particle can look at it after rebuilding parrot 12:56
t/codingstd/perlcritic.......................Undefined subroutine &Perl::Critic::Policy::NamingConventions::ProhibitAmbiguousNames::default_forbidden_words called at t/codingstd/perlcritic.t line 141. 13:02
# Looks like your test died before it could output anything.
anyone know something about that? 13:03
Coke Yup. 13:04
dalek r26659 | particle++ | trunk:
: [RELEASE] add some info to META.yml
diff: www.parrotvm.org/svn/parrot/revision?rev=26659
Coke I updated that test recently to add that test.
er, rephrase: to call that particular method. 13:05
perhaps it was only added in a version so recent you do not have it?
particle a version of Perl::Critic?
Coke no, that particular policy.
... which may be bundled with P:C, sure.
particle perhaps. iunno how to test for that 13:06
ok
c:\\usr\\local\\parrot\\trunk>perl -MPerl::Critic -e"print $Perl::Critic::VERSION"
1.080
Coke Worked for me before I committed it: Basically, I was telling it to prohibit everything it normally does, except to allow the name 'abstract' as a name.
Debolaz Is there a timeline for when parrot is expected to be production ready?
particle Debolaz: we're trying to reach 1.0 this year, but don't have all the dates mapped out to make that happen yet 13:07
Coke 1.031.03
er, 1.03
particle let's require 1.03 then, and i'll upgrade
13:07 dalek joined
Coke is 1.03 > 1.080 ? freaky. 13:08
diakopter sets the throttling to 1 bit/second. hopefully botnix will interpret that as 1 message/second.
Coke m
e
t
o
diakopter point taken, the variable name is 'bps', when it should be 'Bps' 13:09
particle needs a perl module that can read an exchange (outlook) inbox 13:11
suggestions? 13:12
purl suggestions are welcome.
diakopter particle: see the FILE-FORMAT.htm file in this .zip: www.marklyon.org/gmail/readpst.zip 13:15
particle: did you mean read PST/OST files or access Exchange via MAPI 13:24
particle mapi, more likely. 13:41
13:41 skids joined 13:55 gryphon joined
Coke any cygwin users here? 14:02
particle i've heard of cygwin
got it installed. should probably update it to latest, and update parrot there 14:03
Coke I am now able to build parrot, but building all dies on one of the PIR files 14:04
particle like, parrot segfaults? 14:05
Coke ./parrot.exe -o runtime/parrot/library/PGE/P6Grammar.pbc runtime/parrot/library/
PGE/P6Grammar.pir
error:imcc:syntax error, unexpected $end in file 'runtime/parrot/library/PGE/P6Grammar.pir' line 373
pmichaud very odd 14:06
Coke hurm. i think this might be a result of using tortoisesvn vs. cygwin svn. 14:07
pmichaud that file is going away in a few minutes anyway :-)
diakopter tortoisesvn has a toggle for unix eol...
pmichaud particle: are you okay with eliminating languages/tap ? 14:08
Coke pmichaud: well, if you can make it go away, then I can have this fail on another file. That would be good. =-)
particle i wanna save the grammar, as it's close to correct
it can go in examples/pge 14:09
pmichaud particle will do
excellent idea
particle updates cygwin
pmichaud updates in preparation for removing pgc, P6Grammar, P6Regex 14:10
Coke diakopter: where is that toggle? 14:11
particle updates parrot on cygwin 14:13
Coke I get that error on a few files. If I set the eol-style on one of those files to 'unix' instead of 'native', it works. 14:18
14:19 paco joined
Coke ... but not all of them. (Crow.pir fails too.) 14:20
diakopter Coke: It's a system-wide toggle, unfortunately, I think. I didn't know about the per-file one. It's been a year or two since I used TortoiseSVN 14:21
moritz the per-file is stored on the svn, and not specific to toroisesvn 14:22
diakopter oh; there's a checkbox in the TortoiseSVN config window. I dunno which tab/area. 14:24
Coke diakopter: If I go to tortoisesvn->settings-> ... I dont see line endings in any tabs except general -> subversion configuration file. 14:28
Coke checks the svn-book 14:29
diakopter Infinoid: I think dalek always skips notification of the first new revision it sees after it awakens.
(r26659 in this case) 14:30
Infinoid yes. that's because botnix doesn't call the shutdown() method when you kill it, so it doesn't save the previous value
so it autodetects it, by finding the max() of the current rss contents.
diakopter ah. I wonder how to gracefully shutdown botnix. :) 14:31
svc -d dalekbot is what I've been doing
Infinoid I don't actually know. I've been using SIGTERM, which wasn't so graceful
tewk particle, Coke: Latest GSoC Application submitted and published docs.google.com/Doc?id=dgbncnxx_9d2n6q2nq 14:32
Infinoid anyway, you can put an "} else { $newestrev-- }" near the bottom of process_rss() if you want it to output the newest rev on startup
the way I did initially for debugging.
particle wishes google supported diffs between submission versions
Coke if only they had some kind of document management system that allowed that... 14:33
Infinoid kdiff3 Works For Me, but its a lot of infrastructure
oh, SoC submissions. nevermind. 14:34
particle luckily, tewk uses google docs before submitting, so we can check it there 14:35
tewk++
Coke wow, TPF up to 20 submissions.
particle yeah, they just keep pouring in!
only 4 parrot and 1 perl 6, though
Infinoid diakopter: oh, better idea! you can just write out the latest rev after every process_rss() run. assuming botnix writes the file immediately, that should work perfectly 14:37
particle tewk: looks good to me 14:39
14:39 Andy joined
dalek r26660 | pmichaud++ | trunk: 14:47
: Preparation for removing P6Regex from trunk (RT#48028):
: * Remove outdated TAP.pg from examples/pge/
: * Preserve languages/tap/src/TAP_grammar.pg in examples/pge
diff: www.parrotvm.org/svn/parrot/revision?rev=26660
r26661 | pmichaud++ | trunk: 14:49
: [tap]:
: * Remove languages/tap from trunk, can be rebuilt using new language tools.
: * Grammar is preserved in examples/pge/grammars/ .
: * Changed status of tap in LANGUAGES_STATUS.pod.
diff: www.parrotvm.org/svn/parrot/revision?rev=26661 14:50
r26662 | pmichaud++ | trunk: 14:52
: [tap]:
: * Remove tap from Parrot configuration scripts.
diff: www.parrotvm.org/svn/parrot/revision?rev=26662
Coke is surprised that nothing exploded after his immc change. whee! 14:54
particle using my cygwin build script, parrot build successfully 14:57
#!/bin/sh -x 14:58
PATH=$PATH:`pwd`/blib/lib
export PATH
perl Configure.pl
make
purl i heard #!/bin/sh -x was the same as running 'set -x' as the first command, if that helps
15:02 cognominal joined
particle make test fails miserably, though 15:04
Coke particle: what is your default text file type? 15:17
15:18 sjansen joined 15:19 skids joined
particle probably unix. how do i tell you? 15:19
Coke run cygwin setup and see what it defaults to?
particle Unix / binary (RECOMMENDED) 15:20
Coke hurm.
what subversion client did you use? tortoisesvn? 15:21
or cygwins?
(or some other way of grabbing source.)
particle cygwin's svn package and 'svn up' 15:23
iirc using windows svn with cygwin is broken
Coke tries to config this properly... 15:28
15:35 rdice joined 15:36 Theory joined
Coke particle: (*@#&$@#(*&$ 15:40
yah. avoiding tortoisesvn, it builds fine.
I will add tha to the readme before I close the ticket. 15:41
Tene Argh! 15:48
I don't trust my normal laptop anymore, so I borrowed my girl's for this week, and it suddenly won't power on at all. 15:49
Coke tene: don't ever touch my pacemaker. 15:51
not that I have one yet. 15:52
dalek r26663 | coke++ | trunk:
: [docs]
: Cygwin does, in fact, build, if you follow these steps.
diff: www.parrotvm.org/svn/parrot/revision?rev=26663
Coke particle: I only have 4 failures. nothing major. 15:55
15:56 pjcj joined
dalek r26664 | pmichaud++ | trunk: 15:58
: [pge]:
: * Remove deprecated P6Regex, P6Grammar, and pgc.pir from trunk.
: * Resolves RT#48028 and RT#48026.
: * Updated NEWS, DEPRECATED.pod
diff: www.parrotvm.org/svn/parrot/revision?rev=26664
Coke pmichaud++ 16:03
Tene My treo is just a bit too weak to consider compiling parrot on.
Coke waits for chromatic to figure out how much lighter parrot is.
dalek r26665 | pmichaud++ | trunk: 16:04
: [pge]:
: * Missed a P6Regex --> Perl6Regex conversion in pgegrep.
diff: www.parrotvm.org/svn/parrot/revision?rev=26665
pmichaud looks like we might need a "svn:ignore" for src/exec_dep.c ? Is that a new file? 16:06
anyway, time for me to reward myself with lunch :-)
Coke odd. is that a generated file? the comments don't seem to think so. 16:08
pmichaud it just showed up. realclean doesn't remove it
I'll remove it manually and rebuild... one moment 16:09
Coke /usr/bin/perl.exe -MExtUtils::Command -e cp src/jit/i386/exec_dep.c src/exec_dep.c 16:10
do we really want to be doing a copy?
particle yes 16:16
we really want a copy
16:17 iblechbot joined
particle it's part of the jit system, which gets copied depending on your platfrom 16:17
unless you're proposing to generate those files during configure?
16:32 kj joined 16:43 barney joined 16:54 cognominal joined 16:56 IllvilJa joined 17:10 davidfetter joined, Psyche^ joined 17:15 jq joined
dalek r26666 | bernhard++ | trunk: 17:17
: Update copyright years.
diff: www.parrotvm.org/svn/parrot/revision?rev=26666
particle notes the horrible inefficiencies in t/steps/*.t and sighs 17:18
holy code duplication!
17:18 cotto_work joined
Infinoid particle: and you're cleaning that up, right? :) 17:23
Coke particle: (copy) uh, why not just link in the one we care about? 17:30
dalek r26667 | bernhard++ | trunk: 17:34
: Make t/codingstd/c_parens.t happy.
diff: www.parrotvm.org/svn/parrot/revision?rev=26667
r26668 | bernhard++ | trunk: 17:36
: [HQ9+]
: Use the stringified Match object for implementing 'quine'.
diff: www.parrotvm.org/svn/parrot/revision?rev=26668
particle links don't work on all platforms 17:46
17:50 peeps[work] joined
Coke no, just build the file we want and link in the resulting .o; not a symlink. 17:59
(or hard link, or anything)
pmichaud www.pmichaud.com/sandbox/commits.gif 18:01
trend line is trend of commits Nov 2006-Oct 2007
red is commits Nov 2007 to present 18:02
particle is that based on the data from the tool i wrote?
pmichaud no, it's from the svn commit logs
particle tools/util/gen_release_info.pl - generate release info for graphs and charts 18:03
18:04 davidfetter joined
Coke wonders if he can make another google doc with widgets that does something similar. 18:04
pmichaud I did this chart in openoffice calc, was pretty easy once I knew what I was doing :-)
particle my script takes the revision of the release tag 18:06
so it's commits between releases as opposed to some arbitrary date
cotto_work Infinoid, I can occasionally get make -j to fail.
./src/pmc/role.pmc:52:27: error: pmc_namespace.h: No such file or directory 18:07
That looks like the offending line
I can nopaste more output if you're interested
Coke aha. I can fix that. 18:10
pmichaud I wanted to use first-of-each-month so I could get reasonable labels on the x-axis 18:11
I could probably do that with release date as well 18:12
(i.e., show the release dates on the x-axis)
Infinoid cotto_work: how many jobs are you running with? 18:13
cotto_work as many as make feels like spawning
particle if you can show the release dates on a constant time scale, that's better
cotto_work I'm running make -j
particle *consistent
Infinoid ah. I don't feel like putting my laptop in swap hell, so I've limited myself to -j10
Coke cotto_work: do me a favor, submit a ticket: do to that right is going to involve a programmatic change, not just declaring a dependency. 18:14
cotto_work np
particle doesn't -j default to #procs+1?
cotto_work If the -j option is given without an argument, make will not limit the number of jobs that can run simultaneously. 18:15
Coke basically, pmc/role.c is depending only pmc/role.pmc, when it should also depend on any .h's, *especially* the ones that are generated.
cotto_work (from the man page)
pmichaud yes, I can get the release dates on a consistent time scale
Infinoid no, given a sufficiently parallizable Makefile it defaults to "all your RAM are belong to us"
I'm getting a failure in t/compilers/imcc/syn/regressions.t
particle ah. well 6G must be enough ram that i never run into problems.
Coke Infinoid: I just touched that file. which one, #2?
Infinoid yes
#1 segfaults, but is marked as TODO 18:16
#2 wants the nonexistent 'div_i_ic_ic' op
dalek r26669 | bernhard++ | trunk:
: [HQ9+]
: Implement '+' with 'postfix:++'
diff: www.parrotvm.org/svn/parrot/revision?rev=26669
Coke DOH. 18:17
checking.
purl somebody said checking. was that necessary? I'm accessing it via localhost/~jkeroes/cgi-bin/test.cgi
Infinoid purl, forget checking
purl Infinoid, I didn't have anything matching checking
Infinoid purl, forget checking.
purl Infinoid, I didn't have anything matching checking
Infinoid cotto_work: is it consistent at all? or 1 chance in 10, or...? 18:18
cotto_work I'd guess it fails ~20% of the time
Infinoid runs 100 builds in a for loop 18:19
Coke Infinoid: the failure makes sense.
that dependency is not listed.
if you do a make realclean, then try to make src/pmc/role.c, it should fail.
Infinoid s/c$/o/ 18:20
Coke er, right.
Infinoid Coke++
Coke the thing that generates the deps list in the makefile for pmcs needs to take the includes into a ccount. 18:21
Infinoid: I cannot duplicate that error on feather (regressions.t)
Infinoid do we do a deps pass at Configure.pl time?
Coke doing a realclean and trying again...
Infinoid: for pmcs, yes. 18:22
Infinoid maybe I'm putting this stuff in the wrong place, then
Coke: I just rebuilt (with -j1) and reproduced t/compilers/imcc/syn/regressions.t in r26668. 18:25
my only local modification is some explicit deps for role.pmc 18:26
nopaste seems to be down 18:27
Coke Infinoid: what os? 18:28
Infinoid Linux x86-64
pastebin.com/d82c35a1
Coke It makes sense, it's the same kind of thing I was skipping. those opcodes don't exist, presumably because we optimized them all away.
Infinoid I didn't pass any arguments to Configure.pl. should I? 18:29
Coke for which now? 18:31
Infinoid for the failure in test 2 of t/compilers/imcc/syn/regressions.t
Coke no. I think my solution to the const folding is flawed. :|
Infinoid is parrot's optimization non-portable somehow?
its odd that I'd see an issue when you aren't.
Coke yah, that's odd. but now that you're seeing it, I think I should be seeing it. :| 18:32
Infinoid tries a couple other boxes to see how specific to his laptop it is
Coke does a realclean to be sure. 18:33
wiiiierd. 18:34
jit?
purl rumour has it jit is a Just In Time compiler. Or just more Java hype. or new Parrot hype
Infinoid I didn't think x86-64 had jit 18:35
Coke maybe that's the issue. =-)
Infinoid is jit-clueless
Coke do me a favor and reopen the ticket I closed. :|
Infinoid hold on, trying on a couple of x86-32 boxes with nearly identical software setups
is there a --without-jit or the like? 18:36
passes on x86-32 default config 18:39
Coke or you could TODO the test on that one platform and put the ticket number into the todo. =-) 18:40
Infinoid if you don't think it'll show up anywhere else, I can do that 18:41
if I back out r26657, the test still fails, but with a different error and a TODO tag. so that wasn't as insightful as I had hoped :) 18:42
is x86-64 the only supported platform missing jit? can I somehow test for jit-ness, instead of making a list of broken platforms? 18:43
Coke Infinoid: note that the test changed slightly. 18:44
pmichaud I have a patch to add shift/unshift/push/pop/elems methods to RPA. Should I commit it directly, or submit it to RT for review/discussion?
particle commit, then comment on list 18:46
pmichaud sounds good to me.
Coke i would say post the patch, but I think c already gave it a +1. 18:47
pmichaud he did
Coke I am inclined to vote against, but not strongly.
18:48 peeps[work] joined
Infinoid +0.33333333 18:48
purl 0.33333333
18:49 grim_fandango joined
pmichaud okay, I'll apply and comment. 18:49
Infinoid hmm. amd64 does have a --jitcapable flag I'm supposed to pass, which supposedly turns jit on for me. it has no effect on the test. 18:51
Coke k. was a wild stab.
dalek r26670 | pmichaud++ | trunk:
: * Add shift, unshift, push, pop, and elems methods to ResizablePMCArray.
diff: www.parrotvm.org/svn/parrot/revision?rev=26670
Infinoid Coke: #43048 reopened, sorry :) 18:53
Coke sokay 18:56
19:01 paco_ joined, particle joined 19:06 particle joined
Coke Infinoid: what does $I0 = 0; $II = 1/ $I0 generate on your machine? 19:10
(that should avoid the bad opcode but generate the div by zero error.)
Infinoid $II or $I1? 19:12
error:imcc:'$II' is not a valid register name
Divide by zero
19:14 Theory joined
dalek r26671 | pmichaud++ | trunk: 19:16
: * Fix coding standards oops noted by chromatic++ .
diff: www.parrotvm.org/svn/parrot/revision?rev=26671
Coke weird. 19:18
Infinoid so yeah, that fixes the test for me 19:20
tewk There should be a syntax to expose a vtable call as a METHOD in pmcs. 19:24
ie shift unshift etc 19:25
pmichaud that would be cool
we already have a way in PIR of designating a method as a vtable entry 19:26
tewk It shouldn't be that hard, codegen like that is really what pmc2c.pl is for
We should take the same sort of syntax as pir :method(method_export_name) or something 19:27
particle VTABLE METHOD get_bool
that'd be my vote
pmichaud no, we need a way to specify the method name
i.e., I want 'shift', not 'shift_pmc'
also, the METHODs need to conform to PCC
particle VTABLE METHOD("true") get_bool(...) 19:28
pmichaud (including autoboxing)
so perhaps we really need the opposite
METHOD VTABLE('get_bool') true(...)
that would match imcc :-)
particle works for me, modulo the c syntax nit 19:29
pmichaud actually, now that I think of it, VTABLE METHOD("foo") might make more sense
creates a vtable entry and a corresponding wrapper method 19:30
tewk right
pmichaud ah well, I'll let you pmc2c.pl magicians handle it :-)
particle how do i get the length of a match inside a p5 regex? 19:39
$_ = 'foo: some variable-length text'; s/foo: (.*)/X*<length of $1>/ 19:41
pmichaud probably use the /e flag 19:42
Tene particle: (?{ ... })
or, yeah, /e 19:43
particle ah, right
Coke anyone know of an OS DRY-detector that works on something other than java? (CPD says you can just give it a file extension, but it fails to work.)
Tene oh, (?{}) might not be right...
Coke (or do I need to write one.)
19:44 Ademan joined
Infinoid DRY? 19:45
purl i heard DRY was Don't Repeat Yourself
pmichaud particle: on gen_release_info.pl, might it make more sense to simply have a file that gets updated as part of release steps, rather than re-querying the svn repo?
particle sure, that could work, too
Coke I have a project at work where this would be extremely useful. But I can see it being helpful for parrot too. =-)
pmichaud: does that imply storing that data in the repo? 19:46
pmichaud yes
Coke -1: the data is already IN the repo.
pmichaud in an easily parseable form?
particle it's metadata
pmichaud we could fix up the ChangeLog to provide what we're looking for 19:48
we already have date + committer lines there -- we would just need release number and revision number
(release number is there too, but not as easy to get to at the moment)
changelog entries could be 2008.03.18 bernhard 0.6.0 r26142 19:49
pmichaud notices that he forgot to update ChangeLog as part of the 0.5.3. Bad pmichaud, no cookie.
particle extracting from the repo avoids human errors like yours 19:51
pmichaud we'd be more likely to notice the human error :-) 19:53
anyway, it was just a thought. I suppose bandwidth and electrons are cheap :-)
20:00 skids joined 20:09 skids joined
dalek r26672 | pmichaud++ | trunk: 20:26
: * Forgot to update the ChangeLog when I did the 0.5.3 release (pmichaud--).
diff: www.parrotvm.org/svn/parrot/revision?rev=26672
pmichaud particle: ping 20:28
20:35 lola22 joined 20:43 ruoso joined
jonathan yawns 20:52
20:53 Senaka joined
Senaka hi Infinoid 20:53
where can I find info on how to submit a patch to a bug? 20:55
pmichaud for parrot?
Senaka yes
pmichaud svn.perl.org/parrot/trunk/docs/submissions.pod 20:56
Senaka thanks 20:57
pmichaud purl, submissions is svn.perl.org/parrot/trunk/docs/submissions.pod 20:58
purl OK, pmichaud.
20:58 iblechbot joined
dalek r26673 | jonathan++ | trunk: 20:59
: [PCT] Generalize iterator code in for loop to use iter rather than to create an Iterator object. This means that objects that want to supply their own iterators can do so.
diff: www.parrotvm.org/svn/parrot/revision?rev=26673
cotto_work purl, submissions is also www.parrotcode.org/docs/submissions.html 21:00
purl okay, cotto_work.
pmichaud there's an iter opcode?
Senaka ARGIN is used for a const input variable right? 21:03
dalek r26674 | jonathan++ | trunk:
: [rakudo] Make rand actually likely to generate a different sequence of numbers between runs.
diff: www.parrotvm.org/svn/parrot/revision?rev=26674
pmichaud jonathan: ping 21:04
21:04 cotto_work joined
jonathan pmichaud: pong 21:04
Yes, there is.
pmichaud re-seeding on each call to 'rand' is likely wrong
dalek r26675 | jonathan++ | trunk: 21:05
: [rakudo] More work on IO. Now we can iterate over a file handle and $*IN, $*OUT and $*ERR are available.
jonathan Probably.
dalek diff: www.parrotvm.org/svn/parrot/revision?rev=26675
purl Really? Probably? Are you Certain it's not certain? Are you sure it's unsure? I think you need to look harder.
dalek r26676 | jonathan++ | trunk:
: [rakudo] Bring STATUS document somewhat more up to date.
diff: www.parrotvm.org/svn/parrot/revision?rev=26676
jonathan I don't know what the right way to do it is, and I didn't really care much at the time, other than making my "guess the number" IO example program work. :-)
21:05 ask_ joined
pmichaud the problem with re-seeding based on time is that if rand is called multiple times quickly, it will always return the same number 21:05
jonathan Yeah, you're right. 21:06
My comment was entirely accurate. ;-)
pmichaud normally we seed once at the beginning of the process
jonathan Makes sense.
Can change it.
pmichaud I didn't know there was an iter opcode, that's cool. 21:07
jonathan Not sure the time is the right thing to seed it with.
Yeah, iter opcode calls the get_iter vtable method.
pmichaud yes, time has its own problems with seeding as well, but it's less wrong than re-seeding on every call :-)
jonathan Which is in turn less wrong, that not seeding at all and always getting the same number to guess in your guess the number game. :-)
Will post on rakudo.org :-) 21:08
21:08 cotto_work joined
PerlJam hands jonathan a cup of entropy 21:08
jonathan wishes it was a cup of beer
PerlJam I'd think you'd want a pint rather than a cup :)
jonathan A stein is even better, you can get a litre in one of those. 21:09
pmichaud: Hope the IO stuff looks vaguely OK. 21:10
It's at least part of an answer, to the discussion in the last conference call about the lack of it.
Senaka pmichaud: patch sent 21:11
thanks
pmichaud jonathan++ # great work 21:12
Coke This is a Python opcode. ## This should probably be removed then, neh?
jonathan Coke: Que opcode?
s/que/what/
Coke slice
21:13 Senaka left
jonathan Didn't know it existed. 21:14
pmichaud: You still planning to come to YAPC::EU?
Someone should talk about Rakudo progress there.
Coke hopes to go this year.
can be the backup if so.
->
pmichaud jonathan: I'm coming if it can be funded somehow 21:15
jonathan I'm happy to give it.
pmichaud (and perhaps even if it isn't)
jonathan But need to get submissions in before the deadline.
pmichaud deadline is in may, yes?
jonathan Yeah, sure, but I'm away on vacation when the deadline is, so just trying to be organized.
I intend to speak at YAPC::EU, it's just helpful to know if one of my talks will be the Rakudo one, so I know how much else I need to dream up. 21:20
pmichaud I think I can work my talk(s) around any that you want to give 21:22
if you send me a copy of your submission, I'll try to be sure not to conflict :-) 21:23
21:29 paco joined
particle pmichaud: have you submitted anything for yapc::na? 21:29
jonathan I guess there should be a general "Rakudo Update" talk. 21:30
pmichaud particle: yes
particle i'm thinking rakudo's 'main' is starting to look cluttered
jonathan Which while I'm very happy to do, feels like I'm nabbing off with your talk.
particle i think the new io code should be in a 'create_std_io_handles' sub
jonathan Since you're the Rakudo dev lead. 21:31
21:31 AndyA joined
jonathan particle: Feel free to refactor. 21:31
particle pmichaud: same as oscon?
pmichaud particle: I basically did the same as osc.... right
particle ok. we can split that, too, like oscon
pmichaud but I also sent additional comments
particle it's a good way to polish it up
pmichaud just a sec while I check 21:32
jonathan: I'm more than happy to let others who are qualified do a "Rakudo Update" talk, unless the community really expects to hear it from me
I can find plenty of other talks
but I think that talks about the process of contributing to Rakudo could be even better 21:33
for example, I _really_ enjoyed your .net on parrot talk last year at oscon
I think a talk about junctions in Rakudo, or objects/classes, or any of those might be interesting
particle: here's the comment I added to my talk proposals 21:35
At the conference I'm wanting to do 2 or 3 talks regarding Rakudo (the Parrot implementation of Perl 6) and the new Parrot Compiler Toolkit. I'm submitting potential abstracts here, but I can easily change my talks to other relevant topics if there are others proposing a topic similar to this one.
so if others propose talks substantially the same as what I proposed, I'm willing to change my talks 21:36
particle ok. any timeline on the talks?
that might help josh et al with slot-picking
jonathan pmichaud: The European Perl Community have heard me talk a lot already from me about Perl 6 classes and roles - I've run that talk for a while... 21:37
pmichaud I think I did 45 mins for the Rakudo update and 70 mins for PCT
jonathan The difference now being that, a lot of what I showed in the talk is implemented.
pmichaud jonathan: good point, I forgot you already did those :-)
jonathan Junctions - yes, *but* only if they're implemented. 21:38
Like, properly. By YAPC::EU. :-)
pmichaud oh, I was thinking of turning my attention to junctions again soon
jonathan And for that, we need the type hierarchy refactor, and type based MMD.
And that in turn I am pretty sure, means we need to start using .HLL. 21:39
pmichaud I don't think we need HLL for that. The type-based MMD we have already isn't sufficient?
particle pmichaud: did you update the makefile template when you ripped out P6Regex?
pmichaud particle: I think I did, yes. I might've missed something. You might need to re-configure :_) 21:40
particle that's what i'll try next
i have a broken build atm
pmichaud yes, several makefiles got updated
teknomunk is away: Gone away for now.
pmichaud jonathan: anyway, I'm flexible on talks. In many ways I'd like to do the "State of Rakudo" talk (and it may be expected of me if I'm in attendance) but I'm also wanting to let as many other people as possible give talks 21:41
jonathan pmichaud: I'm trying to remember my reasoning; I did think through a chunk of this stuff.
pmichaud I'm being called for dinner .. bbl
jonathan ok
21:42 rdice joined 22:10 jan joined 22:17 Limbic_Region joined 22:20 skids joined 22:30 kid51 joined 22:33 wknight8111 joined 22:48 peepsalot joined 23:03 tetragon joined 23:14 liona29 joined 23:32 slightlyoff joined
dalek r26677 | coke++ | trunk: 23:34
: [build]
: pmc's used to depend on PCCMETHOD generation module: now that PCCMETHOD is spelled
: 'METHOD', update this so the makefile dep is properly generated again.
diff: www.parrotvm.org/svn/parrot/revision?rev=26677
Infinoid before I forget to mention it, ewilhelm++ ewilhelm++ ewilhelm++ # for all the SoC cat-herding 23:35
Coke Infinoid: I am working on the pmc deps. 23:38
just fixed another one that got broken during pdd17.
Infinoid Coke: are you having to add them by hand? I was meaning to figure out if its possible to automate all that stuff 23:39
cotto_work it looks like the explicit pmc_* includes in several of the PMCs are unnecessary 23:55
the only necessary ones seem to be pmc_class in object.pmc and pmc_object in class.pmc
Coke pastebin.com/m65451335 23:56
cotto_work none of the others are needed for a successful build, and I'm confirming that make test is still happy
Coke Infinoid: there. nearly done.
testing now on linux & windows.
23:57 Sartak joined
Coke whoops. moment... 23:57
cotto_work make test is happy 23:59
Infinoid hmm. aren't they all "pmc_<something>.h"?
cotto_work (apart from some unrelated codingstd stuff)