Perl 6 - the future is here, just unevenly distributed

IRC log for #parrotsketch, 2009-12-01

| Channels | #parrotsketch index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
06:28 particle1 joined #parrotsketch
12:14 bluescreen joined #parrotsketch
12:25 bluescreen joined #parrotsketch
12:28 bluescreen joined #parrotsketch
16:38 japhb DONE:
16:38 japhb * Lots more metadata updates, fperrad++, dukeleto++, vadrer++
16:38 japhb * Now at least 23 projects have Plumage metadata
16:38 japhb * Convert Glue.pir code to native NQP-rx features as they become available
16:38 japhb * Util.nqp reduce() implementation that doesn't entirely suck to use
16:38 japhb * Improve output of projects command
16:38 japhb WIP:
16:39 japhb * Continued major refactoring.  About 80% done now.
16:39 japhb * Details of remaining refactoring unclear, need more code to clarify path forward.
16:39 japhb MAD PROPZ:
16:39 japhb * fperrad++  # Metadata updates, Win32 testing, assisting conversions to setup / plumage
16:39 japhb * dukeleto++ # Metadata updates
16:39 japhb * tene++     # try/CATCH
16:39 japhb * cotto++    # Parrot build GUID/UUID suggestion
16:39 japhb NEXT UP:
16:39 japhb * Time to start adding more features again, before returning to refactoring.
16:39 japhb * Figure out how to add per-build unique ID to parrot config
16:39 japhb BLOCKERS:
16:39 japhb * Hash literals in NQP-rx.  pmichaud++ has said he will entertain patches, but I have not had enough time to do so myself.  I would be most appreciative if someone jumped in and made this happen!
16:39 japhb EOR
16:40 ascent joined #parrotsketch
17:55 Tene I'm apparently alive again.  This past week I've been working on ng and getting caught up on updating languages to use nqp-rx.
17:55 Tene * Migrated steme to nqp-rx
17:55 Tene * Implemented proof-of-concept macros in steme with nqp-rx.  Looking forward to implementing that in rakudo.
17:55 Tene * Added gather/take and loop to ng, along with some other minor fixes.
17:55 Tene * Added exception handling to nqp-rx.
17:55 Tene IN THE FUTURE:
17:55 Tene * Migrating other languages to nqp-rx.
17:55 Tene * More work on ng.
17:55 Tene * Investigate vtable override speedups, credit to chromatic.
17:55 Tene * Maybe more work on Web.pm?  HLL stuff?  Dunno... make requests.
17:55 Tene BLOCKING:
17:55 Tene * I want to add lazy gather/take to ng, but blocking on iterators interface redesign from pmichaud.
17:56 Tene KTHXBAI
17:56 Tene Oh, maybe a Select PMC!  I just remembered about the IO stuff I wanted to work on.
18:01 Coke joined #parrotsketch
18:01 Coke partcl-nqp (done):
18:01 Coke - now able to run six of partcl's tests; re-adding bits as quickly as possible.
18:01 Coke - want to write some perl6? this version of partcl is written almost entirely in the new NQP. Between the test suite, the original PIR
18:01 Coke .
18:05 dukeleto Report
18:05 dukeleto * I wrote a TAP Harness in PIR called Tapir: http://github.com/leto/tapir
18:05 dukeleto * I nominate bubaflub++ for commit access. He has been translating tests like a madman.
18:05 dukeleto * I will be around in #parrot later.
18:05 dukeleto .EOR
18:08 bubaflub joined #parrotsketch
18:08 barney joined #parrotsketch
18:12 Coke Also: http://groups.google.com/group/partcl-dev/browse_thread/thread/70753eabbefd898a
18:18 pmichaud joined #parrotsketch
18:21 pmichaud What I did (since 2009-11-03):
18:21 pmichaud * Worked more on NQP, added new version of NQP into parrot repo
18:21 pmichaud * Started an nqp-based version of partcl
18:21 pmichaud * Continued working on Rakudo 'ng' branch
18:21 pmichaud * Various performance profiling items
18:21 pmichaud ** See my latest message to parrot-dev at
18:21 pmichaud http://lists.parrot.org/pipermail/parrot-dev/2009-December/003431.html
18:21 pmichaud What I'm doing this week:
18:21 pmichaud * Continuing to work on Rakudo-ng, iterators and lazy lists
18:21 pmichaud * More nqp-rx updates, error message improvements and better
18:21 pmichaud syntax checking, regexes
18:21 pmichaud * More profiling to find speed improvements
18:21 pmichaud What I'm blocking on:
18:21 pmichaud * Time
18:21 pmichaud * Broken ISP connection
18:21 pmichaud EOR
18:21 pmichaud q1q
18:27 barney q1q
18:28 Util No report from last week. Tuits renewed this evening; will pick back up on outstanding tickets.
18:29 cotto_work Done:
18:29 cotto_work * ported pprof2cg to nqp
18:29 cotto_work * It's really slow. (26.5x on my dev laptop)
18:29 cotto_work * pmichaud seems to think that the ugly pir that nqp has to generate to work around the lack of an lvalue model doesn't cause a major slowdown
18:29 cotto_work # Will do:
18:29 cotto_work * try to figure out how to make Callgrind-compatible output testable and not painfully slow
18:29 cotto_work * if nqp can't be made fast, pushing the Callgrind output code into the runcore may start to look like a good idea
18:29 cotto_work * either way, profiling is in order
18:29 cotto_work # Blockers:
18:29 cotto_work * life
18:29 cotto_work EOR?
18:36 dukeleto 'ello
18:37 cotto_work hello
18:37 chromatic joined #parrotsketch
18:37 chromatic Sorry; called away briefly.
18:37 * dukeleto is back in time!
18:38 chromatic Hello, all.
18:38 * dukeleto waves
18:38 barney hi
18:38 bubaflub hello
18:38 Util hello
18:39 chromatic Let's review weekly priorities.
18:39 chromatic We have a new release in two weeks, right?
18:39 dukeleto yes!
18:39 dukeleto what needs to be in 1.9.0 ?
18:40 chromatic Most of the code changes we want in 2.0.0.
18:41 dukeleto chromatic: that is a tall order. do we need a gc sprint?
18:41 chromatic We should discuss that.
18:41 chromatic Clearly we have a performance gap.
18:42 dukeleto bubaflub: where is your report?
18:43 chromatic The wiki page we made a couple of weeks ago has PIRC on it as well.
18:43 chromatic Does anyone think we can make PIRC an optional component by January?
18:44 Coke no
18:44 chromatic Should we focus on performance for the next few weeks?
18:44 chromatic I can think of a couple of possibilities.
18:45 dukeleto chromatic: make it optional, maybe. will it pass all the tests? no.
18:45 dukeleto chromatic: i like performance
18:45 dukeleto chromatic: we can really do some amazing performance tweaks in 1.5 months. we need to make NQP and Rakudo faster
18:46 dukeleto and HLL's in general
18:46 chromatic Other suggestions?
18:46 bubaflub sorry, here's the report:
18:47 bubaflub Done:
18:47 bubaflub * Couple tests to PIR
18:47 bubaflub * CLA in the mail
18:47 bubaflub To Do:
18:47 bubaflub * Even more tests to PIR!
18:47 dukeleto more like a couple hundred tests translated to PIR
18:48 dukeleto chromatic: testing and performance are worthly goals for 2.0 that we can accomplish. other goals have the chance of falling short because they are not as incremental
18:48 bubaflub i've got a few patches for tests in t/compilers/*/* but haven't submitted to tickets yet
18:48 chromatic My concern is that I haven't had time to do profiling and optimization, and I haven't seen anyone else poke at them.
18:49 chromatic Of course, if everyone else is as busy as I am....
18:49 dukeleto chromatic: i can do benchmarking, but I don't have a place to run kcachegrind yet. os x and kcachegrind hate each other.
18:50 Coke dukeleto: ay.
18:50 chromatic Any objection to setting specific performance goals for the upcoming weeks then?
18:52 cotto_work +1
18:52 dukeleto chromatic: let's set some specific goals
18:52 chromatic The VTABLE override task is specific.
18:52 chromatic Beyond that, we need to figure out how to land the Context/CallSig merge bacek started.
18:53 dukeleto chromatic: what is the name of the branch?
18:53 dukeleto chromatic: i think gc performance should also be worked on. i will do gc benchmarks
18:55 chromatic It's unlikely we'll fix GC performance without writing a new GC, and I have my doubts anyone will support that going on by default in 2.0.
18:55 pmichaud ...a swappable GC would be worthwhile, though.
18:56 pmichaud that might be doable by 2.0
18:56 particle i'm for that
18:56 Coke I thought we already had that.
18:56 chromatic It *should* be swappable already.
18:56 Coke (see also: infinite memory allocator)
18:56 chromatic We need docs from whiteknight to figure out how to replace part or all of it.
18:56 pmichaud if we already have one, then there's no downside to starting work on gc issues pre-2.0
18:56 particle a new, non-default gc is a worthy goal
18:56 dukeleto yeah, i thought our gc was pluggable with a command-line option? didn't jtayloriv work on that?
18:56 Coke particle: "that is better than our current one." =-)
18:56 pmichaud s/no downside/little downside/
18:57 particle coke: even if it's not, we need to prove the api is solid
18:58 dukeleto do we have a commandline flag to turn the GC off?
18:58 dukeleto that would be useful for our RTEMS port
18:59 chromatic -G
18:59 dukeleto chromatic++
19:00 * dukeleto is attempting to compile kcachegrind on os x, again
19:00 bubaflub good hunting dukeleto
19:00 chromatic Any other comments on performance goals?
19:01 Coke chromatic: +1 from me.
19:01 chromatic Let's move on to questions then.
19:01 chromatic pmichaud?
19:02 mikehh joined #parrotsketch
19:02 bubaflub q1q
19:05 dukeleto does anybody have ops, and/or can someone change the topic?
19:05 pmichaud my question was simply to point out my latest message to parrot-dev about gc cost and to see if we can get energy focused on it :)
19:05 pmichaud seems lik that's being addressed, so eoq from me
19:06 chromatic barney, your question?
19:06 barney I wondered whether GDBM Hash should be removed, but I see it's a dynpmc already
19:06 chromatic bubaflub, your question?
19:06 bubaflub i just sent my CLA in the mail, and was wondering if i could get a commit bit
19:07 chromatic Any objections?
19:07 dukeleto bubaflub++ # give this man a bit
19:08 particle after your cla is received, and you get two +1 votes from committers, you can get a commit bit
19:08 cotto_work +1
19:08 barney bubaflub++
19:08 mikehh +1
19:08 Util +1
19:08 bubaflub no secret initiation?
19:08 dukeleto bubaflub: i have the tar and feathers waiting
19:08 cotto_work You'll know when it happens.
19:08 particle it's no secret to the rest of us :)
19:08 bubaflub hahahaha
19:09 barney the secret is that there is no secret
19:09 bubaflub that's like schrodinger's secret
19:11 Util Schrodinger's secret might actually be a secret. Or it might not; it is hard to tell without looking.
19:11 bubaflub and with that that's eoq for me
19:11 chromatic Other questions?
19:11 dukeleto q1q
19:13 chromatic go ahead, dukeleto.
19:13 dukeleto What do people want and need from a PIR TAP harness? I am looking towards it being the default for HLL's in the mk_lang_shell script.
19:13 dukeleto it being Tapir
19:14 barney I'd like a 'language_output_is()
19:14 barney for TAP generation
19:14 dukeleto barney: what would that do?
19:14 Util dukeleto: a better TODO interface than is currently in test_more.pir.
19:15 dukeleto Util: i wrote a TAP consumer, not TAP producer
19:15 mikehh +1
19:15 barney run a piece of HLL code and compare with the expected output
19:15 Util Doh!
19:15 dukeleto barney: that is a TAP producer, not a TAP consumer
19:15 dukeleto Tapir is a TAP Parser and Harness. A consumer of TAP.
19:16 dukeleto it is really fast. Much faster than Test::Harness for small test files (~100 tests). As in roughly 1/3 the running time
19:16 dukeleto Tapir could replace t/harness in Parrot and every HLL
19:16 dukeleto and shave an enormous amount of time from our test suite runs
19:17 dukeleto Test::Harness is just amazingly inefficient and really slows things down
19:17 dukeleto which would allow development to move more quickly and have lots of other wonderful benefits
19:18 mikehh does it provide the same or better functionality than t/harness?
19:20 dukeleto mikehh: it will. currently it does not know about SKIPs or exit codes, but that is a few hours work. also, it does not know about TEST_JOBS, yet
19:20 dukeleto mikehh: but the speedup could be so great that running tapir tests in one process is faster than TEST_JOBS=4 with Test::Harness
19:20 dukeleto mikehh: Tapir has been written to be very testable from the ground up. It tests itself.
19:22 dukeleto mikehh: are there features that you want that Test::Harness does not provide?
19:23 dukeleto mikehh: oh yes, submitting to smolder is an issue, but it can be solved. All of these issues are in the TODO file in the Tapir repo
19:23 dukeleto i will probably just port TAP::Harness::Archive to PIR
19:23 chromatic Other questions?
19:25 chromatic Let's call this a week then.
19:25 dukeleto ENODISHES
19:25 Util $_ == 'week'
19:25 Util s/==/eq/
19:26 dukeleto if someone is feeling really awesome, please change the channel topic to something useful
19:27 chromatic Which channel topic?
19:28 davidfetter joined #parrotsketch
19:30 Tene dukeleto: this channel doesn't have +t set, so anybody can change the topic, including you!
19:31 bubaflub left #parrotsketch
19:33 davidfetter left #parrotsketch
19:45 Topic for #parrotsketchis now Vision for 2.0: Production Users | Priority for 1.9: Performance and Testing
20:26 PacoLinux left #parrotsketch
20:32 tewk joined #parrotsketch
20:41 bubaflub joined #parrotsketch
20:41 mikehh joined #parrotsketch
20:41 bubaflub left #parrotsketch
20:41 bluescreen joined #parrotsketch
20:51 mikehh joined #parrotsketch
20:57 mikehh joined #parrotsketch
21:19 mikehh joined #parrotsketch
21:24 mikehh joined #parrotsketch
21:25 chromatic left #parrotsketch
21:30 Coke left #parrotsketch

| Channels | #parrotsketch index | Today | | Search | Google Search | Plain-Text | summary