Camelia, the Perl 6 bug

IRC log for #parrot, 2010-03-12

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:03 Coke trac++
00:03 Coke trac++
00:03 Coke trac++
00:03 Coke trac++
00:03 Coke trac++
00:03 Coke trac++
00:03 Austin Got your back-links working?
00:03 Coke (osuosl fixed my trac bug)
00:03 Austin Ah
00:03 Coke the "can't edit a page" bug
00:04 Austin Heh.
00:04 Austin My problem is that I can edit any of them.
00:04 Austin Any word from the admins on getting those extra plugins installed?
00:08 Coke I don't think I requested the backlinks one. the captcha one got put in...
00:08 Coke ... you can't edit pages on the wiki!~?
00:08 Austin No, I can edit all of them.
00:08 Austin So I keep being tempted..
00:09 Coke oh that you CAN.
00:09 Coke misread.
00:11 dalek tracwiki: v7 | coke++ | tasksCoke
00:11 dalek tracwiki: done, thanks to darbelo++
00:11 dalek tracwiki: http://trac.parrot.org/parrot/wiki/​tasksCoke?version=7&action=diff
00:11 dalek tracwiki: v8 | coke++ | tasksCoke
00:11 dalek tracwiki: http://trac.parrot.org/parrot/wiki/​tasksCoke?version=8&action=diff
00:15 Austin Also, there's a plugin that lets trac pages use Mscgen for generating diagrams. Any hope of getting that plugged in?
00:18 janus joined #parrot
00:25 Coke ... I did that one for you already.
00:25 Austin You rock.
00:25 purl Dis is the drum
00:25 Coke mscgen 0.1
00:26 Austin Hey, coke, you might know this: Do the init vtables get run in sequence or something when a new object is created?
00:26 Austin (I can't figure out why I'm seeing one run, when I inserted a vtable override before it..)
00:27 Coke is init overridable?
00:27 Austin Good question.
00:27 purl Yeah, it is. I'm stumped.
00:28 chromatic It's overridable, but you have to call the overridden if you want it to run.
00:28 mikehh joined #parrot
00:28 Austin ?
00:30 Austin yeah, crap. class.pmc calls the mro in reverse order...
00:33 Austin sub initialize_parents($object, @mro) { @mro.reverse >>.init }
00:34 Austin chromatic: What did you mean by calling the overridden?
00:37 chromatic If you override the init VTABLE in a PMC that extends another PMC, you'd have to do something like SELF.SUPER() to call the parent init (at least from C).
00:38 Austin Oh. No, this is pir
00:38 Austin It's all on top of Class/Object.
00:39 chromatic The same principle applies, but SUPER is much more difficult in PIR.
00:39 Austin Heh. I did that already. Just scan the mro until the resolved method changes.
00:40 Austin From what I can see, class.pmc scans backwards through the mro, from grandparent to grandchild class, invoking any init overrides.
00:41 Austin It's a "feature"
00:43 chromatic It's difficult to initialize attributes without doing something like that.
00:43 Austin Yeah.
00:46 payload joined #parrot
00:49 eternaleye joined #parrot
00:50 snarkyboojum joined #parrot
00:56 ash_ joined #parrot
00:57 abqar joined #parrot
00:58 dalek TT #1508 closed by coke++: broken links on parrot.org
00:59 dalek parrot: r44886 | mikehh++ | trunk/src/pmc/os.pmc:
00:59 dalek parrot: fix codetest failure - line length
00:59 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44886/
01:08 kid51 joined #parrot
01:08 mikehh make corevm/make coretest FAIL - t/pmc/nci.t - No tests run - remaining tests PASS - (PASS in make world/make test)
01:08 mikehh all other tests PASS (pre/post-config, smoke (#32625), fulltest) at r44889 - Ubuntu 9.10 amd64 (g++ with --optimize)
01:10 slavorgn joined #parrot
01:12 Coke aha. that error message in coretest failure is because the skip message in that file is broken.
01:12 Coke that should be a clean skip.
01:14 dalek rakudo: 35e26f8 | jonathan++ | src/pmc/perl6multisub.pmc:
01:14 dalek rakudo: When we have no applicable candidates for a multi-dispatch, make the error contain all of the candidates that we could call.
01:14 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/3​5e26f8188c8e11f0c2702f5ee5f6dcc70cca4e9
01:15 dalek TT #693 closed by coke++: Add 'Wiki' to top row buttons at http://www.parrot.org
01:19 Coke mikehh: fixed.
01:21 snarkyboojum_ joined #parrot
01:32 dalek parrot: r44887 | coke++ | trunk/t/pmc/nci.t:
01:32 dalek parrot: Fix skip/plan, should quiet coretest
01:32 dalek parrot: (The file this depends on is no longer built as part of corevm target,
01:32 dalek parrot: and the skip logic was buggy.)
01:32 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44887/
01:37 cotto_work chromatic, thoughts on the Lorito roadmap?
01:41 chromatic Stage 0 needs also pmc2c.
01:41 chromatic We may need a Lorito runloop.
01:42 chromatic I'd rather not modify IMCC or pirc to emit Lorito; I'd rather have a PBC to Lorito generator or something along those lines.
01:42 chromatic Otherwise it looks like what I had in mind.
01:43 Coke We need a Lorito logo that looks like a Dorito.
01:44 cotto_work chromatic, I think the idea behind omitting pmc2c is that we can already do PMCs in PIR, so we should focus effort on making it possible to write core PMCs in PIR directly.
01:44 cotto_work bacek_at_work may have to clear that up but that's my understanding.
01:46 cotto_work earlier:
01:46 cotto_work <cotto> So you're saying that we should focus on ops until they're all Lorito-y, then use the lessons from that transition on PMCs?
01:46 cotto_work <bacek> exactly
01:48 dalek TT #1484 closed by coke++: Number of errors reported by "prove" too high
01:48 kid51 dukeleto:  ping
01:50 Coke can some C programmer look at:
01:50 Coke src/embed.c:1106: warning: unused variable ‘pf’
01:50 Coke I think that points to a bug.
01:53 nopaste "kid51" at 71.255.57.191 pasted "Instances of string 'pf' in src/embed.c" (21 lines) at http://nopaste.snit.ch/19923
01:53 Coke kid51: that's unhelpful.
01:54 kid51 Why?
01:54 Coke assuming it's in response to my warning.
01:54 Coke because the pf at line 1106 has nothing to do with any of the other pfs in that grep.
01:54 Coke (the scope is limited to the block that it's in.
01:58 snarkyboojum joined #parrot
01:58 Coke suggestion: do what 'headerizer' does when running config with --maintainer
01:59 tewk Coke, PackFile_new_dummy sets interp->initial_pf
01:59 Coke tewk: pf ain't pf
01:59 tewk its not the best thoughtout code I've seen
01:59 Coke er, interp->initial_pf ain't pf.
01:59 Coke ok. but there's a side effect, then.
01:59 tewk yes
01:59 Coke would you care to eliminate the variable assignment and note the side effect in a comment?
02:00 tewk Sure, why not, commit comming
02:01 Coke tewk+
02:01 Coke tewk++, even!
02:04 dalek parrot: r44888 | coke++ | trunk/include/parrot (2 files):
02:05 dalek parrot: rerun 'make headerizer'
02:05 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44888/
02:07 Coke is there ever a case where a static that is defined but not used is ... used?
02:08 Coke (in C)
02:10 cotto_work How do you use a static variable without using it?
02:11 Coke this is a function.
02:12 Coke I'm just wondering if the compiler warns about it if I can safely rip it out.
02:12 cotto_work I'd say that it's a good bet.  What are you looking at?
02:12 Coke turned on -Wunused and am going through the warnings.
02:13 Coke this is specifically in gc_inf
02:13 cotto_work how can I play along at home?
02:13 cotto_work er, work
02:13 purl er, work is distracting; if someone else could fix those en masse, that'd be great.
02:20 Coke cotto_work: s/-Wno-unused/-Wunused/ in config/auto/warnings.pm and then make -j3 2>&1 | ack 'warning:'
02:20 Coke about to clean up a bit of it...
02:21 dalek parrot: r44889 | mikehh++ | trunk/t/pmc/nci.t:
02:21 Coke much of it is in generated files; I'd like to eventually get the build unused-clean.
02:21 dalek parrot: remove unnecessary use Test::Builder
02:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44889/
02:21 dalek parrot: r44890 | tewk++ | trunk/src/embed.c:
02:21 dalek parrot: Parrot_compile_string remove unused variable
02:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44890/
02:21 dalek parrot: r44891 | mikehh++ | trunk/src/pmc.c:
02:21 Coke (Configure --cage might also work.)
02:21 dalek parrot: fix codetest failure - unused assert macro
02:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44891/
02:22 Coke mikehh: whoops, I left that in by accident, good catch.
02:22 Coke mikehh++
02:22 mikehh Coke it caused one of the subtest test 11 to fail
02:24 AndyA joined #parrot
02:24 eric_j joined #parrot
02:27 Coke cotto_work: there goes some of it...
02:27 cotto_work yup
02:37 dalek parrot: r44892 | coke++ | trunk/src (6 files):
02:37 dalek parrot: Cleanup some -Wunused.
02:37 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44892/
02:41 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32627) at r44891 - Ubuntu 9.10 amd64 (gcc with --optimize)
02:53 dalek TT #122 closed by coke++: -t4 broken (r34808)
03:01 mikehh_ joined #parrot
03:03 chromatic Tonight... I eviscerate Parrot_mmd_build_type_tuple_from_sig_obj().
03:03 Coke I doubt you.
03:04 chromatic You would.
03:21 dukeleto 'ello
03:22 dukeleto how do i remove something from "make coretest"
03:25 chromatic Wow, only one typo and Parrot_mmd_build_type_tuple_from_sig_obj() passes all tests on the first try.
03:26 dalek TT #1400 closed by coke++: 1.9.0 Compilation on Mac
03:28 dukeleto found it
03:38 chromatic The good news is that the result is shorter code.
03:42 janus joined #parrot
03:42 dalek parrot: r44893 | chromatic++ | trunk/src (2 files):
03:42 dalek parrot: [MMD] Moved the logic for calculating the MMD type tuple from
03:42 dalek parrot: Parrot_mmd_find_multi_from_sig_obj() into the CallContext PMC's get_pmc VTABLE,
03:42 dalek parrot: as walking through CallContext's positionals to serialize them into a STRING
03:42 dalek parrot: then walking through that STRINg to create a RIA was awfully silly.  This gives
03:42 dalek parrot: a modest but measurable speed improvement to MMD-heavy code.
03:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44893/
03:44 chromatic ... and THAT is shorter still.
03:45 Coke chromatic++
03:45 Coke I'm sorry I doubted you.
03:46 Coke ... well, not really.
03:46 chromatic You're obviously the parent of a teenager.  Those psych tricks won't work on me.
03:57 chromatic Now let's see if we can reuse packfile STRINGs....
03:59 dalek parrot: r44894 | chromatic++ | trunk/src/pmc/callcontext.pmc:
03:59 dalek parrot: [PMC] Tightened the code in CallContext's get_pmc VTABLE; no functional changes.
03:59 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44894/
04:12 * Austin sings, "When I first got to London it was pourin' down rain. Met a little girl in a field canteen - painted her name on the nose of my plane. Six more missions, I'm gone."
04:19 chromatic Hm, almost a 2% performance improvement.  Interesting.
04:20 Austin So do that 50 more times.
04:20 chromatic 12% fewer STRINGs, thanks to PBC coalescing.
04:21 Austin About time for that, I think.
04:22 chromatic It's not quite that easy, but I think we can get some goodness out of this.
04:23 chromatic Hm, actually about 75% fewer STRINGs created.
04:23 chromatic If we can fix the need to COW everything... yeah.
04:24 nopaste "chromatic" at 173.50.130.127 pasted "bacek, NotFound, plobsing: naive, memory leaking patch to coalesce constant STRINGs in PBC loading" (21 lines) at http://nopaste.snit.ch/19927
04:29 Coke didn't we already do that on compilation?
04:30 Coke ah, this is different.
04:30 Coke -> abed
04:53 plobsing chromatic: can we guarrantee that the default charset will always be ascii?
04:56 chromatic I'm not sure.
05:03 Austin Gaah. The lesson continues to be taught: never trust the*!@#$%^* user.
05:04 Austin Especially not when it's me.
05:52 dalek parrot: r44895 | petdance++ | trunk/src/embed.c:
05:53 dalek parrot: Consting & localizing of vars. Removed ancient comment.
05:53 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44895/
06:07 cotto Fascinating.  It seems I'm doing the release this Monday.
06:08 chromatic Or Tuesday.
06:08 cotto I may have to get on that
06:08 cotto or that
06:08 purl tuesday is probably pick-on-purl day or ask us to give you the syntax of perldoc -f day or http://us.imdb.com/Title?0064471 or little-tolerance-for-stupidness day or devoice dynweb at will day or love masque day or random body mods day or I'll-use-colloquialisms-if-I-wanna day or FAQ day. But then so is every other day. or overbearing sexual reference day. (NO, not SOFT references.) or homoerotica day or see tuesday2
06:08 cotto slowbot is slow
06:08 purl i already had it that way, cotto.
06:09 dalek parrot: r44896 | petdance++ | trunk/src/gc (2 files):
06:09 dalek parrot: reran headerizer
06:09 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44896/
06:27 Myhrlin joined #parrot
06:42 dalek parrot: r44897 | chromatic++ | trunk/src/pmc/sub.pmc:
06:42 dalek parrot: [PMC] Tidied Sub PMC; no functional changes.
06:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44897/
06:42 cotto You attack the Disorganized Code with a chromatic.  It's super effective!
06:48 chromatic Would you like your possessions identified?
06:48 cotto y
06:49 chromatic You have: a big pile of awful code.
06:49 chromatic Save to a file?   y/n
06:49 Austin chromatic: May I borrow your super-effective brain for a minute?
06:49 chromatic Only because my team won.
06:49 Austin Sure.
06:50 Austin I think I'm creating a closure - a callable sub with enclosed lexicals.
06:50 Austin But how can I differentiate it from other enclosures of the same sub?
06:51 Austin That is, once I do $P0 = capture_lex ..., what's P0?
06:51 chromatic It's the LexPad of the current context.
06:51 Austin So if I print out the typeof $P0, I'll get LexPad?
06:52 chromatic I believe so.  It shouldn't be anything else.
06:52 NotFound chromatic: What's the point of that patch?
06:53 Austin Hmm.. I'm getting 'Sub'
06:54 chromatic NotFound, to reuse constant STRINGs.
06:54 chromatic We create 75% fewer STRINGs in my Rakudo benchmarks with that patch.
06:55 chromatic Austin, I'm looking at the code now.
06:56 chromatic Looks like capture_lex doesn't take a destination.
06:56 chromatic If you're seeing $P0 = capture_lex, you're doing something weird.
06:57 Austin I'm not. That's my bad. It's capture_lex $P36, sub...
06:58 chromatic See docs/pdds/pdd20_lexical_vars.pod -- that's as much documentation as I understand things.
07:00 Austin mego
07:02 NotFound chromatic: I don't see how to avoid the leak, but if we are going towards immutable strings I think we can live with it in the meantime.
07:03 chromatic If we stored STRINGs with the trailing NULL in bytecode....
07:03 NotFound Sounds doable.
07:04 chromatic I do have a couple of PBC failures with the patch, but they may be bugs elsewhere.
07:07 NotFound I'll try to take a look, but I don't think will have much time during the weekend.
07:09 chromatic It seemed like an obvious win, and it looks good so far.
07:12 uniejo joined #parrot
07:25 chromatic Per my rough numbers, starting Rakudo thaws 137243 STRINGs from PBC.  Of those, 5545 have a non-default character set.  131698 use the default character set.  9706 of the latter are unique.
07:25 chromatic That means we can avoid creating 121,992 constant STRING headers.  That's 92.63%.
07:29 NotFound chromatic: Using a parrot that already has the change that avoids creation of string duplicates in pbc?
07:30 chromatic Yes.
07:31 NotFound Odd.
07:31 particle joined #parrot
07:32 chromatic I can only imagine how much worse it would have been.
07:32 NotFound Note that we still have the problem of not storing the encoding in pbc.
07:33 chromatic We do store the charset though.
07:34 NotFound Yes, but the dup avoider checks both charset and encoding. Maybe there is some problem with the encoding value.
07:35 chromatic You think we could store even fewer in PBC?
07:35 NotFound Maybe, I don't looked at rakudo pbc
07:37 fperrad joined #parrot
07:40 NotFound Thinking better... the string may come from the content of frrozen string pmc, those are not in the constant table.
07:41 chromatic That could be.
07:47 dalek parrot: r44898 | cotto++ | branches/ops_pct/compilers/opsc (3 files):
07:47 dalek parrot: [opsc] fix op parsing and actions, add a test, fix some broken tests
07:47 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44898/
07:47 NotFound chromatic: in the patch you don't check the contant flag. Is this intentional?
07:49 chromatic See line 1316; I assume they're all constant.
07:55 riffraff joined #parrot
07:58 NotFound chromatic: that line just mask some flags.
08:03 dalek parrot: r44899 | cotto++ | branches/ops_pct/compilers/opsc/src/Ops/Op.pm:
08:03 dalek parrot: [opsc] remove unused and inefficient method
08:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44899/
08:06 NotFound Must go to dayjob. Later.
08:07 GeJ clock ?
08:07 purl GeJ: LAX: Fri 12:07am PST / CHI: Fri 2:07am CST / NYC: Fri 3:07am EST / LON: Fri 8:07am GMT / BER: Fri 9:07am CET / IND: Fri 1:37pm IST / TOK: Fri 5:07pm JST / SYD: Fri 7:07pm EST /
08:14 chromatic NotFound, good catch.  That fixes my test failures.
08:17 Themeruta joined #parrot
08:18 mikehh joined #parrot
08:26 chromatic Oh my.  How would you like a nasty hack?
08:27 iblechbot joined #parrot
08:43 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32629) at r44899 - Ubuntu 9.10 amd64 (g++ with --optimize)
08:45 kurahaupo joined #parrot
08:55 Austin git-- # for advertising "merge" when you really mean "throw out my stuff."
08:55 chromatic git reflog
08:55 purl git reflog is probably my friend
08:57 Austin sudo apt-get uninstall git
08:57 Austin But your way is good, too.
08:59 chromatic I can't imagine losing commits unless you've run git gc.
09:00 chromatic Okay, clearly the best way to make this work is to add an extra NULL byte when storing STRINGs in PBC.
09:00 payload joined #parrot
09:00 chromatic Yet I can't figure out how to do that correctly.
09:11 Austin joined #parrot
09:12 Austin git-- # obreboot
09:27 AndyA joined #parrot
10:12 lucian joined #parrot
10:13 payload joined #parrot
10:17 * Austin ++ # another passing test case.
10:18 Austin left #parrot
10:18 Austin joined #parrot
10:18 Austin Mooof@
10:21 betterworld joined #parrot
10:29 dalek blizkost: 71c923a | jonathan++ | src/pmc/p5invocation.pmc:
10:29 dalek blizkost: Fix arg marshalling from Parrot to Perl 5 enough for something basic to work.
10:29 dalek blizkost: review: http://github.com/jnthn/blizkost/commit/​71c923a06f43b09acfe45044d6efaf13a539a814
11:55 dalek rakudo: e5d11fe | (Solomon Foster)++ | src/pmc/p6opaque.pmc:
11:55 dalek rakudo: Add item to the list of methods that we don't go and create a closure for, as per jnthn++.
11:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/e​5d11fe4360fcea8d53d0fb9df77644a50881a04
11:58 mikehh joined #parrot
11:58 allison joined #parrot
12:05 mikehh joined #parrot
12:09 AndyA joined #parrot
12:11 lucian joined #parrot
12:17 mikehh joined #parrot
12:46 dalek rakudo: f28f3c7 | moritz++ | src/core/Num.pm:
12:46 dalek rakudo: port some Num methods over from alpha
12:46 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​28f3c7062beabfcd5fa869203782d65e98beaf1
12:46 dalek rakudo: f04eb83 | moritz++ | .gitignore:
12:46 dalek rakudo: .gitgnore docs/test_summary.times.tmp
12:46 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​04eb83ab46b20ecb1406ab18bd9cf94a1ef0d65
12:46 dalek rakudo: 0c6ae7c | moritz++ | t/spectest.data:
12:46 dalek rakudo: run more test files
12:46 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​c6ae7c172072749d8f8a27131342f9c973805b1
13:07 Austin_Hastings joined #parrot
13:08 payload joined #parrot
13:09 tetragon joined #parrot
13:13 whiteknight joined #parrot
13:15 whiteknight good morning, #parrot
13:16 Austin Good morning, whiteknight
13:16 Austin You're just a little bit early.
13:16 whiteknight a little? early for what?
13:18 parthm joined #parrot
13:18 Austin Sometime soon I'm going to commit a change to start running the UnitTest test cases
13:19 Austin And that change includes loading the .nqp files on the fly.
13:19 Coke &lt;Austin_Hastings@Yahoo.com&gt;: delivery temporarily suspended: host f.mx.mail.yahoo.com[98.137.54.237] refused to talk to me: 421 4.7.0 [TS02] Messages from 140.211.166.133 temporarily deferred due to user complaints -
13:20 Austin Hmm
13:20 moritz gray listing?
13:20 Austin What's the 140 address?
13:21 Austin hemlock.osuosl.org
13:23 Coke I get one of these whenever I get around to cleaning up the spam traps.
13:24 bluescreen joined #parrot
13:25 whiteknight Austin: I don't quite understand what you mean, but I look forward to the commit nonetheless
13:25 Austin whiteknight: You may recall yesterday evening asking about how to load nqp from nqp.
13:25 whiteknight ah, yes
13:25 whiteknight that's awesome
13:26 Austin You also said something-or-other was your major issue.. I can't recall what. :(
13:26 whiteknight I'm not sure either. I'm sure it was only "major" in a relative sense
13:27 parthm_ joined #parrot
13:30 Austin Ahh... 'todo'
13:34 iblechbot joined #parrot
13:35 Austin Oh, whiteknight, for your entertainment: I tried to start writing tests for 'todo' on the UnitTest suite. And of course, my TAP Listener uses Test::Builder, which is a class written directly in PIR without the P6object stuff.
13:36 Austin HOO, boy.
13:36 Austin There's six hours of my life I'll never get back.
13:36 Austin It turns out that the :vtable 'init' (and 'init_pmc') just can't be mocked, although I tried like hell.
13:38 Austin Parrot runs through the mro backwards looking for init vtables, so there's no chance of intercepting, or doing anything else to affect the behavior. And naturally, Test::Builder runs off and invokes eleventy-four other things from there...
13:38 whiteknight what do you mean "runs through the mro backwards"?
13:38 Austin my @mro := $class.inspect('all_parents');
13:39 whiteknight as in, backwards from how all other vtable overrides are searched?
13:39 Austin for @mro.reverse -> $parent { if $parent.has_vtable_override('init') { ... } }
13:39 plobsing msg chromatic That patch denies the possibility for NULLs embedded into PBC constant strings (which seem to work before the patch). Perhaps we need a function to create strings in the constant pool given a pointer and a length.
13:39 purl Message for chromatic stored.
13:39 Austin Backwards meaning grandparent class first, grandchild class last.
13:41 parthm left #parrot
13:41 whiteknight holy shit, it does go backwards
13:42 Austin I'm pretty sure we *could* mock a bunch of the other vtable overrides (get_string, bool, defined, etc.) but I just ran out of "want to" somewhere.
13:42 whiteknight src/pmc/class.pmc:331
13:42 Austin Yeah.
13:42 Austin Didn't I say that?
13:42 whiteknight Yeah, but I had to see it to believe it
13:42 Austin :)
13:42 whiteknight and not a single explanatory note anywhere about why we would make such a mind-bogglingly weird break from the norm
13:42 Austin Oh, that's easy.
13:43 whiteknight so wait, why does this hurt you? can't you just insert the mock class as the top-most, or even only item in the MRO?
13:43 Austin The assumption is that every :init is implicitly doing something like :    5   method init() is :vtable { SUPER();  ... }
13:44 Austin I have to have the MRO chain intact so people can do "isa" checks, and MMD.
13:44 dalek parrot: r44900 | gerd++ | trunk/config/gen/makefiles/parrot_pc.in:
13:44 dalek parrot: reflecting ticket #735; fix the command "pkg-config parrot --cflags" to gives the correct output
13:44 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44900/
13:45 whiteknight actually, looking at the code it looks like they do this so all the PMCProxy delegates can be created BEFORE the subclasses that rely on them attempt to access them
13:45 Austin That, too.
13:45 Austin I guess.
13:45 whiteknight without comments, we just have to make stupid assumptions
13:45 Austin Heh.
13:46 Austin Anyway, what it boils down to is that the :init method gets called, but I can catch any other methods that are explicitly called from within that. And (hey, guess what?) we kind of know how many times and with what args your init method will be called, anyway. So the value of mocking it is kind of low.
13:46 whiteknight so I'm still not seeing the problem you had. How many items are in the MRO of the mock?
13:47 Austin The mock is a subclass of the original class.
13:47 whiteknight oh...why?
13:47 Austin to get the mro
13:47 whiteknight and why do you need the mro for it? You're intercepting all calls anyway
13:47 Austin So that the mock will pass through MMD and isa checks.
13:48 whiteknight it seems like you could fake it manually
13:48 whiteknight get the MRO, store it in an attribute, and walk that manualy in isa checks
13:48 Austin If you mock String, and then call one of the P6object routines, where it explicitly asks "isa $P0, 'String'", I want the code to route the right way.
13:49 whiteknight you can override VTABLE_isa, so do the walk yourself
13:49 Austin I probably could. But up until now, doing it this way was hella faster.
13:49 Austin But that still doesn't solve the MMD problem.
13:49 whiteknight or, you could create a delegate object and pass calls on to that
13:50 whiteknight of course, that doesn't help in the case of objects with stateful and destructive interfaces
13:50 Austin Heh. Mock.
13:50 Austin Actually, the Eggs are reverse-delegate objects.
13:51 whiteknight Eggs? I can't keep track of all your jibbajabba terminology
13:51 Austin They have only two attributes, and one vtable (find_method). Everything else is implemented in other classes, to keep the namespaces clean.
13:51 whiteknight I pitty tha fool
13:51 Austin A cuckoo places its eggs in the nest of another species, where it is raised by the unsuspecting victims. "Brood parasitism."
13:52 Austin So the objects are cuckoo's eggs.
13:52 whiteknight Maybe you could subclass Class, override instantiate, amd intercept init and init_pmc calls that way
13:52 Austin Heh.
13:53 Austin Let me know how that works out... :)
13:54 whiteknight Oh, I'm sure it wont work out well, at least not at first
13:54 whiteknight subclassing class from PIR is known to cause some...inconsistancies...in the otherwise flawless operation of the Parrot VM
13:57 Austin I'm kind of hoping I won't have to submit any more tickets before 2.2 comes out.
13:58 whiteknight do you have a list of outstanding tickets that you've opened?
13:59 Austin http://trac.parrot.org/parrot/report/13?asc​=1&amp;sort=ticket&amp;USER=Austin_Hastings
14:00 whiteknight OI!
14:07 whiteknight I keep feeling like I'm skirting around a solution for #1492, but so many things seem to be relying on the misbehavior
14:08 Austin Really?
14:08 Austin I thought maybe I was the only guy creating classes with more than one name.
14:08 whiteknight yeah, when I "fixed" it so get_class<namespace> returns PMCNULL if the class object for that namespace hasn't been created yet, PGE fails to build
14:08 Austin And I have to tell you, my creativity is wearing out..
14:12 Austin Hmmm... for some reason, my test cases for Program are hanging the harness...
14:14 hercynium joined #parrot
14:15 Austin Well, it got through that time...
14:16 whiteknight I saw that a few times yesterday
14:17 whiteknight actually, no. I solved that issue
14:17 Austin ?
14:17 Austin With Program, or something else?
14:17 whiteknight I was calling CharMatrix2D.new without registering CharMatrix2D as a P6 thingy, and the call hung
14:18 whiteknight no, on my tests for PLA
14:20 Austin The problem may be an order-dependent thing. (One reason why the order is random)
14:21 whiteknight ok
14:26 whiteknight ...I think I have a fix for #1492. building and testing now
14:27 whiteknight requires me to make a code change to P6object.pir, which I am reticent to do
14:28 Austin Heh. The bloom is off *that* rose for me...
14:30 lucian allison: ping
14:35 lucian i'm curious about parrot's concurrency story, is PDD 25 implemented?
14:39 lucian btw, from reading PDDs, parrot looks more and more awesome
14:41 payload joined #parrot
14:42 szabgab joined #parrot
14:42 * lucian finds 'tri-color marking gc' funny, since all three are non-colors
14:43 eiro joined #parrot
14:44 atrodo which PDD is that?
14:44 lucian atrodo: 9
14:44 * atrodo goes to read about the funny non-colors
14:46 payload joined #parrot
14:46 * lucian doesn't think 'switching GC systems at execution-time to accommodate different work loads' is feasible
14:50 Austin It
14:50 Austin It's a stop-the-world GC. We could switch CPUs at execution time if we wanted to.
14:51 lucian Austin: but switching GCs isn't the same
14:51 lucian you'd have to push all objects from the old GC into the new GC
14:52 lucian or have multiple GCs running at the same time, each with their own pools (which is suicide)
14:54 whiteknight it generally is not feasible, no
14:54 whiteknight but if all GCs shared a common storage structure, we could swap out marking/sweeping algorithms
14:55 whiteknight that's a small subcase, however
14:55 lucian whiteknight: true, that would work
14:55 Austin Oh, no.
14:55 Austin Parrot is all things to all people. It says so right in the spec.
14:56 Austin We support difference calling conventions, different encodings, different byte orderings.
14:56 Austin And we'll support different GCs. At the same time.
14:57 lucian Austin: yes, great, i agree. i just don't think swithing GCs at runtime is possible
14:57 Austin Then you're the perfect guy to work on it.
14:57 Austin :)
14:57 lucian well it is possible, but it would take loads of work for something that can be solved easily at the application layer
14:58 lucian Austin: heh. after pynie passes a decent portion of the cpython test suite :)
15:00 lucian atrodo: the color bit isn't that funny, i was being pedantic about white, gray and black not being actual colors
15:01 allison lucian: thanks for the dict fixes
15:01 dalek kakapo: 2b315d6 | austin++ |  (10 files):
15:01 lucian allison: well, they're full of bugs actually
15:02 dalek kakapo: Refactored ComponentMarshaller.nqp out of Program, Library classes. (has-a) Cleaned up Program.
15:02 dalek kakapo: Also, switched order of comparison operands in some assertions to emphasize the wanted.
15:02 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
15:02 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/2b315d6e57c0cac425a06b1a5ff593ff4d2a7f4b
15:02 dalek kakapo: 6830fae | austin++ |  (24 files):
15:02 dalek kakapo:    * Some rudimentary changes to 'Program' to get it working.
15:02 dalek kakapo: * Modified 'Cuculinae' library to better support non-P6object classes. It is now possible to
15:02 dalek kakapo: mock Test::Builder.
15:02 dalek kakapo: * Got UnitTest testcases working as part of setup.nqp test.
15:02 dalek kakapo: * Added assert_(not_)defined from Whiteknight++.
15:02 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
15:02 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/6830fae7a2b62a5e1ab558596ba2c1748dc13b9c
15:02 allison lucian: progress is progress
15:02 dalek kakapo: d949d4d | austin++ |  (2 files):
15:02 purl i already had it that way, allison.
15:02 dalek kakapo: add assert_defined and assert_not_defined, plus tests (though I don't think these particular test files run as part of the normal suite).
15:02 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/d949d4dc630a52cc035d50f1d20741a087863884
15:02 dalek kakapo: d42bec0 | austin++ | setup.nqp:
15:02 dalek kakapo: Incorporated Whiteknight's install changes.
15:02 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
15:02 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/d42bec06f4e6e1a426ba39c85c63f82aa699b1f2
15:02 dalek kakapo: b015592 | austin++ | :
15:02 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/b015592e94a39eddd217d1b793a983221307e5fb
15:02 dalek kakapo: 4aa2527 | austin++ | :
15:02 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/4aa25278b59ba9263fd859753d0947cec55d8d12
15:03 lucian allison: it occurs to me that pynie is wrong about a lot of python semantics
15:03 lucian allison: we really need objects first
15:04 hudnix joined #parrot
15:04 allison lucian: it's a *very* basic implementation, yes
15:04 allison lucian: and yes, objects are one of the top two priorities
15:05 lucian allison: other being?
15:05 allison lucian: the other is module loading, which is somewhat related
15:05 allison a.k.a 'import'
15:05 lucian allison: importing is slightly messy in python
15:05 lucian allison: objects first
15:06 allison lucian: indeed, but for the most part we can use importlib
15:06 lucian allison: true, pure python code rules
15:06 allison lucian: very much so
15:07 lucian especially if there's a jit behind it (pypy project has nice results)
15:07 allison lucian: at the python dev summit at PyCon, they made a decision to favor offering pure-python alternates for as many of the standard library as possible
15:07 dalek kakapo: 8d6b40a | austin++ | setup.nqp:
15:07 dalek kakapo: Fixed up some leftover git merge dingleberries.
15:07 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
15:07 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/8d6b40af38a9c9dd657d9414487dfd6fe9accad3
15:07 allison pypy has done a good bit of work there
15:07 lucian allison: good decision
15:08 allison ctypes, for example, we can pull largely from the pypy version, with a small core custom to Parrot
15:08 kthakore pypy?
15:08 purl pypy is already self-hosting or python written in python, on http://codespeak.net/pypy/dist/pypy/doc/news.html
15:08 kthakore ah ok
15:08 lucian allison: yes, it uses _rffi
15:09 lucian kthakore: http://speed.pypy.org
15:09 Psyche^ joined #parrot
15:09 kthakore lucian: ok
15:10 * allison biab
15:10 lucian it would actually be possible to write a parrot backend for pypy
15:11 lucian but it would be slow (since pypy compiles an entire interpreter to its backend)
15:15 atrodo lucian> I noticed.  Although, I will admit, good use of the word "pedantic"
15:16 * lucian /ignores dalek
15:19 lucian atrodo: bad classification methings, blame artists
15:19 lucian s/methings/methinks
15:49 cotto_work morning
16:02 theory joined #parrot
16:04 lucian allison: i've been thinking about attribute resolution in pynie
16:05 whiteknight purl msg chromatic: (tt389_fix) I think we can create the PMCProxy in src/pmc.c:Parrot_create_mro, around line 861 where we initially create the namespace. This function only appears to get called for C-based PMCs, not classes. I'm going to put together a patch to test it out
16:05 purl Message for chromatic stored.
16:05 lucian allison: python uses __dict__ for that, but methods on pynie right now are dispatched directly by parrot
16:05 lucian allison: would using __dict__ for method dispatch slow things down?
16:11 Austin_Hastings joined #parrot
16:17 allison lucian: Parrot will handle attribute resolution, no need for pynie to do it
16:17 lucian allison: but obj.__dict__ still needs to be implemented, real code uses it
16:17 lucian allison: will it be build when accessed?
16:18 lucian s/build/built/
16:18 allison lucian: the 'inspect' vtable function on all objects returns something similar, it's just a matter of translating it
16:18 dalek kakapo: 2e7c606 | austin++ |  (3 files):
16:18 dalek kakapo:    * Got 'todo($message)' working for Testcases.
16:18 dalek kakapo: * Fixed a bug in Global::export wrt source namespace vs. export namespace.
16:18 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
16:18 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/2e7c6061355171877f40b36a1d79dd820ce6a38f
16:19 lucian ok, didn't know about that
16:19 * lucian goes back to furiously reading docs
16:19 allison lucian: as in, add a '__dict__' method to python's subclass of the parrot Object class, to wrap around the parrot feature
16:20 lucian allison: i'm looking around whether __dict__ can be replaced on live objects in python
16:20 lucian allison: as in a.__dict__ = {}
16:20 Austin msg whiteknight I just pushed "todo". Also, look in t/UnitTest/AllTests for the compiling-nqp stuff.
16:20 purl Message for whiteknight stored.
16:21 whiteknight nice
16:22 lucian allison: no, __dict__ is hidden to the outside
16:23 lucian allison: and it seems to only have special properties if __setattr__ or __getattribute__ are defined in that class
16:24 * lucian realises python has many corner cases
16:24 allison lucian: okay, so __setattr__ and __getattribute__ will override the parrot object's 'set_attr' and 'get_attr' vtable functions
16:25 lucian allison: __getattr__ is only called when there is no attribute with a certain name
16:26 lucian allison: right, that's clearer in my head
16:27 allison lucian: okay, then we may just override get_attr in the base Python object class, to check if __getattr__ is defined if a particular attribute name doesn't exist
16:29 lucian allison: i'm getting excited about pynie. can't wait for objects
16:30 allison lucian: good :)
16:31 lucian allison: i have to go, volunteering for sciencefest. thanks for clearing things up
16:32 allison lucian: glad to talk, it's great to share pynie with someone :)
16:42 denisw joined #parrot
16:42 denisw hi
16:42 purl what's up, denisw.
16:50 allison hi denisw
16:51 denisw hi allison
17:00 dukeleto 'ello
17:17 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32640) at r44900 - Ubuntu 9.10 amd64 (gcc with --optimize)
17:22 riffraff joined #parrot
17:44 whiteknight hmmm, Parrot_io_init_unit calls Parrot_io_fdopen_unix with PMCNULL as one of the arguments, even though at this point none of the vtables or PMCs are created or initialized
18:04 clinton joined #parrot
18:10 GodFather joined #parrot
18:12 GodFather joined #parrot
18:17 bluescreen joined #parrot
18:19 plobsing I just realized Parrot supports class names with arbitrary characters in them. "\0" is a valid class name!
18:19 allison :)
18:24 AndyA joined #parrot
18:49 whiteknight damnit. I'm doing some TT #389 work, and now I'm getting a Parrot_confess failure inside the GC stack trace of a completely unrelated part of the system
18:53 payload joined #parrot
18:57 whiteknight Austin: did you say you committed todo?
19:00 ruoso joined #parrot
19:01 joeri joined #parrot
19:03 AndyA joined #parrot
19:20 chromatic joined #parrot
19:25 whiteknight hello chromatic
19:25 chromatic morning
19:26 davidfetter still morning here
19:27 whiteknight chromatic: see my last email? I tried to fix the last issue in default.find method and got a huge Parrot_confess failure inside the GC stack trace routine
19:28 chromatic I see that.  I think I know how to make that work.
19:28 kjeldahl joined #parrot
19:29 whiteknight I tried adding a get_pmc_keyed_str method to Class and PMCProxy, and then using those instead of the namespace lookup in src/oo.c:find_method_direct_1
19:29 whiteknight but, kablooey
19:30 chromatic Yeah, I don't think that'll work right.
19:30 chromatic plobsing, ping
19:31 Coke anyone here run?
19:32 plobsing chromatic: pong
19:32 plobsing Coke: run what?
19:32 purl Don't run, you'll only die tired.
19:32 Coke plobsing: yourself.
19:33 chromatic I didn't think about embedded NULLs.  You're right about the need for a "Create string given buffer length"... I'll have to think about that some more.
19:33 chromatic The only tricky part is caching in the constant STRING cache, but we had talked about revising that storage mechanism anyway.
19:33 plobsing Actually, the more I think about it, the more I feel we need to allow for arbitrary strings in constants, not just asciiz
19:34 chromatic We do, but Parrot_str_new_constant() only allows the default encoding.
19:34 plobsing Coke: outside for extended periods of time? Yes, regularily.
19:34 whiteknight I used to run, but I started getting shin splints, so I stopped
19:35 chromatic I used to run to.  Walking's better.
19:35 plobsing chromatic: If we're moving to immutable strings, can we de-dup *all* strings?
19:37 Coke chromatic: can you change the default at runtime?
19:37 chromatic Coke, not unless you want to break things.
19:37 chromatic plobsing, yes.  The PBC header (magic number, string PBC, version number) shows up now and then.
19:38 chromatic Oh, you mean STRINGs besides those thawed from PBC.  Possibly.
19:38 plobsing chromatic: I was thinking that the duplicate rate for strings coming out of compilers would probably be similar to the duplicate rate in PBCs
19:39 chromatic Very likely.
19:40 chromatic I'll write up a list of tasks to fix STRING constant handling, and we can tackle this after the next release.
19:40 chromatic Wild guess: ~4% Rakudo performance improvement.
19:43 chromatic We might be able to squeeze out a couple more percent by avoiding the C string cache, or at least moving to a better data structure like a heap.
19:46 whiteknight I'm still convinced that we can completely trash the current CONST_STRING system, and define string constant literals directly in the C code
19:46 whiteknight at least, that works for constants known at compile time
19:48 chromatic Until we have to transcode them.
19:49 whiteknight in a world of immutable strings, transcoding makes a copy
19:50 chromatic We need to figure out whether we're going to jump to immutable STRINGs then.
19:51 bacek joined #parrot
19:59 whiteknight I'm for it, but it's definitely a huge decision
20:00 whiteknight involves almost complete ground-up rewrite of the strings system and half the GC
20:00 chromatic I don't think it's that bad.
20:01 whiteknight for a naive implementation, maybe not. But to really optimize things like we need to do, we're going to have to completely switch paradigms in the src/string/* files
20:01 ash_ joined #parrot
20:01 chromatic Step one can be to change the STRING APIs to return modified versions, never to modify in place.
20:02 whiteknight yeah, but that's just the first step of many
20:03 chromatic We get a lot of benefit from that one alone.
20:04 whiteknight true, no arguments there
20:06 tewk PGE already uses a stringbuffer type pmc right?
20:07 chromatic CodeString?
20:07 tewk Yeah that was what I trying to remember.
20:11 whiteknight replacing CodeString with a proper string builder PMC would be nice
20:12 Coke (codestring is already an improvement over what came before)
20:12 Coke fixing bottlenecks in codestring would be most helpful, though.
20:18 riffraff joined #parrot
20:21 whiteknight it looks like it's just a sort of mishmash of routines which are helpful in code generation
20:22 whiteknight brb
20:26 whiteknight joined #parrot
20:29 whiteknight just upgraded to FireFox 3.6 with the new "personas" thing
20:29 whiteknight it's disturbing to me how many of the personas in the gallery are entirely themed around Megan Fox
20:32 chromatic Could be worse, could be Fox News.
20:35 whiteknight maybe, but I've never heard plausible rumors that Fox News is actually a man
20:35 chromatic It's a lot more patriotic than I want from a web browser.
20:53 whiteknight chromatic: so what are you thinking about that TT #389 issue?
20:53 chromatic I think I know how to fix method lookup from default.
20:53 whiteknight what's your plan?
20:54 GodFather joined #parrot
20:55 chromatic Create the PMCProxy PMCs before inserting NCI methods, then insert those methods into the Proxies.
20:56 whiteknight we're not doing things in that order now?
20:56 whiteknight er, after my patch?
20:56 chromatic I haven't studied your patch in sufficient detail.
20:56 whiteknight I didn't rearrange any code in the class_init functions
20:56 chromatic There was one trick I ran into when I tried it.
20:57 cotto_work joined #parrot
20:57 whiteknight this whole initialization sequence leaves much to be desired
20:57 whiteknight not just the PMCs, the whole interpreter
20:58 chromatic Indeed.
20:59 whiteknight One thing I saw earlier, and I'm surprised it hasn't come back to bite us before now, is that the IO system initialization routines use PMCNULL, which wouldn't even be initialized at that point
20:59 chromatic That's because PMC_IS_NULL checks for NULL and PMCNULL.
21:00 whiteknight True, but the problems I was seeing were ASSERT_ARGS failures because that value was NULL and shouldn't have been
21:00 whiteknight which means in current Parrot when things work, PMCNULL is both not NULL there, and is also not a valid PMC
21:08 bacek ~~
21:08 ash__ joined #parrot
21:10 bluescreen joined #parrot
21:10 whiteknight anyway. I'm heading home now. Later
21:55 dalek parrot: r44901 | bacek++ | branches/ops_pct/compilers/opsc (2 files):
21:56 dalek parrot: Add debug profiling info.
21:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44901/
21:56 dalek parrot: r44902 | bacek++ | branches/ops_pct/compilers/ops​c/src/Ops/Compiler/Actions.pm:
21:56 dalek parrot: Add "\n" before implicit "goto NEXT".
21:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44902/
21:56 dalek parrot: r44903 | bacek++ | branches/ops_pct/compilers/opsc/src/Ops (3 files):
21:56 dalek parrot: Use OpLib to assign op codes
21:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44903/
22:12 bacek msg cotto I found why recent opsc fail to bootstrap. I incorrectly handle "restart FOO". Fixing now.
22:12 purl Message for cotto stored.
22:13 cotto_work bacek, I was wondering why you did that.  It looked questionable.
22:14 bacek cotto_work, check r44904. I overlooked restarts in C generating for new Grammar/PAST
22:15 cotto_work btw, I'm pretty sure that restart ADDRESS is broken in trunk.  It's only used in one place there and does the same thing as goto ADDRESS.
22:17 donaldh_ joined #parrot
22:18 bacek may be
22:19 cotto_work changing it to be consistent with Parrot::Op breaks the build
22:22 donaldh__ joined #parrot
22:23 donaldh___ joined #parrot
22:26 Patterner joined #parrot
22:26 allison joined #parrot
22:28 dalek parrot: r44904 | bacek++ | branches/ops_pct/compilers/ops​c/src/Ops/Compiler/Actions.pm:
22:28 dalek parrot: Add bit of information how op_macro _will_ be handled.
22:28 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44904/
22:32 Whiteknight joined #parrot
22:43 hercynium joined #parrot
22:47 bacek cotto, all tests passed again. We have to do something with parsing speed...
22:50 cotto_work quite
22:50 cotto_work the build is still broken with the generated core_ops.c though
22:50 snarkyboojum joined #parrot
22:52 bacek cotto, hmm.. It builds on my box.
22:53 cotto_work it compiles but breaks building pge
22:54 bacek Interesting. It _does_ build PGE on my box :)
22:56 cotto_work Hmmm.  retrying
22:56 Whiteknight now, we can't all be right
22:56 Whiteknight somebody must be a dirty rotten liar
22:56 bacek And it's YOU
22:56 purl How are you gentlemen?
22:57 bacek Anyway. Software is hard. Let's go shopping
23:01 dalek parrot: r44905 | bacek++ | branches/ops_pct/compilers/opsc/src/Ops (3 files):
23:01 dalek parrot: Rework handling of op_macro.
23:01 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44905/
23:01 dalek parrot: r44906 | bacek++ | branches/ops_pct/compilers/opsc/t/03-past.t:
23:01 dalek parrot: Fix PAST test
23:01 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44906/
23:07 slavorgn joined #parrot
23:21 Whiteknight make instll fails on my machine
23:21 Whiteknight ./parrot pbc_to_exe.pbc pbc_to_exe.pbc
23:21 Whiteknight Must pass a valid integer array to 'local_branch'
23:21 Whiteknight current instr.: '_config' pc 6 (runtime/parrot/library/config.pir:55)
23:24 mj41 pbc_to_exe is hanging on one of taptinder windows client
23:25 bluescreen joined #parrot
23:29 Whiteknight though that error doesn't make sense, that file doesn't use the local_branch opcode anywhere
23:29 chromatic Sounds like a PBC change.
23:32 Whiteknight yeah, worked after a second realclean
23:42 particle1 joined #parrot
23:43 AndyA joined #parrot
23:46 AndyA joined #parrot

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

Parrot | source cross referenced