|
#parrot Parrot 2.2.0 "Like Clockwork" Released! | parrot.org/ | Channel log: irclog.perlgeek.de/parrot/today | Tasks: Fix compact_pool shenanigans | Fix HLL bugs (TT #389, #1040) | Prioritize Rakudo Needs Set by moderator on 20 March 2010. |
|||
| dalek | rrot: r45090 | plobsing++ | trunk/DEPRECATED.pod: mark loadlib_p_s_p as experimental |
00:10 | |
|
00:11
rt7 joined
|
|||
| dalek | kudo: becc7e0 | jonathan++ | src/Perl6/Grammar.pm: One more tweak and seems we have item assignment working now, with all existing tests passing. :-) |
00:38 | |
| kudo: 5d8fd6a | jonathan++ | docs/ROADMAP: Minor ROADMAP tweaks. |
|||
|
00:49
GodFather joined
01:02
abqar joined
|
|||
| Whiteknight | *crickets | 01:11 | |
| plobsing is contemplating why we have config/gen/platform/platform_interface.h | |||
| anyone have any idea? | 01:12 | ||
| sorear | you mean as opposed to just having include/parrot/platform.h? | 01:14 | |
| plobsing | yeah. It just gets copied over. | 01:15 | |
| and there's even a comment: "interface is the same for all platforms" | 01:16 | ||
| I'm ripping it out to see what breaks ATM | |||
| Whiteknight | do it | 01:18 | |
|
01:18
muixirt_ joined
01:26
chromatic joined
|
|||
| sorear | True or false: the pcc_hackathon_6Mar10 API is going to become the trunk API. | 01:37 | |
| Whiteknight | sorear: yeah, it's going to get merged in soon | 01:38 | |
| in fact... | |||
| purl | in fact... are all squash New World? | ||
| Whiteknight | bacek_at_work, chromatic: ping | ||
| chromatic | pong | 01:40 | |
| dalek | kudo: 265726d | (Solomon Foster)++ | src/builtins/Num.pir: Cleanup trailing whitespace. |
01:41 | |
| kudo: fabef9f | Lue++ | src/ (2 files): Put in support for fractional numbers (:16<A.4>) and other base scanning (:2<0o10>) into the radcalc function. |
|||
| Whiteknight | chromatic: pcc branch. ETA? | 01:42 | |
|
01:44
theory joined
|
|||
| Whiteknight | bacek sent out an email about it earlier, no objections, but I haven't seen any movement on it | 01:44 | |
| chromatic | As soon as Rakudo passes its tests, it's merge time. | ||
| masak or moritz said there were some test failures. | 01:45 | ||
| plobsing | odd - t/pmc/os.t fails lstat tests but only under testf | ||
| Whiteknight | gotcha | 01:50 | |
| chromatic | Haven't had time to diagnose that. | 01:53 | |
| I'm still thinking about the STRING buffer allocation patch. | |||
| Whiteknight | I've looked at that patch only briefly | 01:54 | |
| created a branch for it, if you want to play: compact_strings | |||
| chromatic | I might switch to two other tasks. | ||
| One, adding an _ic variant for get_params and set_args and the like. | 01:55 | ||
| Whiteknight | make corevm works, make coretest works and fails several tests | ||
| chromatic | Two, fixing the way we register constant strings. I think we need a binary tree to store them, not a cstring hash. | ||
| That'll let us get rid of cstring hash, I think. | |||
| Whiteknight | I don't know if you saw any of my insane ramblings, but all my attempts to resolve TT #389 have failed | ||
| I'm at a dead-end there without fresh input | |||
| chromatic | How far did you get? | 01:56 | |
| Whiteknight | not far really. Any attempt I made was flawed | ||
| my best attempt fixed most of the bugs in trunk but completely broke dynpmcs | |||
| like terrible, explosive failures | 01:57 | ||
| chromatic | I can't imagine why that would be. | ||
| bacek_at_work | Unfortunately my laptop finally died... | 01:58 | |
| So I can't do merge... | |||
| Whiteknight | chromatic: Parrot's startup sequence is so rediculously convoluted | 01:59 | |
| what I think we really need to do is spend some time diagramming it | |||
| chromatic | You want convoluted? You should see the self-hosting precise GC I wrote once. | 02:01 | |
|
02:01
AndyA joined
|
|||
| Whiteknight | chromatic: I really would like to see that some time | 02:02 | |
| chromatic | It's fairly simple. The only tricky part is holding on to the pointers long enough to register them in themselves. | 02:03 | |
| Whiteknight | fun fun silly willy | ||
| Anyway, it's my bed time. I'll see if I can get back in the swing of TT #389 tomorrow | 02:04 | ||
| chromatic | What happened to your tt389 patches? | ||
| Whiteknight | chromatic: all of them were lousy in one way or another | ||
| I have about a dozen here that I've never even sent you | |||
| most of them are definitely not worth it | 02:05 | ||
| chromatic | Okay. | ||
| Whiteknight | I'll post more info tomorrow | ||
| later | |||
| Austin | Anyone here have red-light cameras in their town? i.imgur.com/RQcCi.jpg | 02:45 | |
| plobsing | did that actually work/ | 02:46 | |
| ? | |||
| Austin | I don't know. But it has to be worth trying. | 02:47 | |
| lucian | Austin: :)) | ||
| Austin | You know, I can't remember if there's a whole bunch of stuff I'd rather be doing than slogging through pir trace logs for the expression parser... | 02:51 | |
| chromatic | May I suggest "Anything"? | 02:54 | |
| dalek | rrot: r45091 | plobsing++ | trunk (5 files): don't generate static file platform_interface.h |
02:55 | |
| Austin | I was just about to conduct that experiment, c. | ||
| I was going to try standing in front of the kitchen counter, hitting my willy with a ball peen hammer to see if it was more fun... | 02:56 | ||
| But I can't, because if I do I'll lose my place... | |||
| plobsing | chromatic: what's the verdict on shallow clone? Can I do it now? Do I have to deprecate? Is it a bad idea? | 02:58 | |
| chromatic | +1 to shallow clone | 03:07 | |
| let's see what breaks | |||
| ... in a branch | |||
| And let's see that it makes Rakudo go some 20% faster. | |||
| dalek | rrot: r45092 | plobsing++ | branches/shallow_clone: creating branch to try out shallow cloning |
03:11 | |
| Austin | Well, first you'll have to get rid of all the places where people wrote their own shallow-clone in line, because of the deep semantics... | 03:12 | |
| plobsing | Austin: I don't follow. Does rakudo shallow clone hashes by iterating in Perl 6? | 03:13 | |
| that seems like something they'd complain about | 03:14 | ||
| Austin | There's at least one place in $_PMC where I've seen that code. | ||
| And who knows what's in pir. | 03:15 | ||
| I'm the guy that opened a deep/shallow cloning ticket, so it's a safe bet there's some nqp code that does it... | |||
| plobsing | hmmm... I predict epic fails getting rid of deep clone - default.clone is stupid and evil | 03:16 | |
| chromatic | You'd think that Rakudo would open a lot of tickets in Parrot's Trac, but about half of the complaints I see in the #perl6 logs never end up there for some reason and don't get fixed for some reason. | ||
| Austin | I don't object to deep clone - it's a necessary function. But I object to the non-working implementation... | 03:20 | |
| plobsing | oh it works... for some definition of works. | 03:23 | |
|
03:34
TimToady joined
|
|||
| dalek | rrot: r45093 | plobsing++ | branches/shallow_clone/src/pmc/default.pmc: fix default.clone |
03:44 | |
| chromatic | Hm. | 03:51 | |
| Probably any PMC that does anything interesting for clone() does it manually. | |||
|
03:54
janus joined
|
|||
| Austin | oh........ kay... | 03:59 | |
| It's the old "You specified <left> when you should have specified <unary>" problem... | |||
| chromatic | But Bullwinkle, that trick never works! | 04:01 | |
| dalek | tracwiki: v3 | Austin_Hastings++ | HLL%20Resources | 04:02 | |
| tracwiki: trac.parrot.org/parrot/wiki/HLL%20R...ction=diff | |||
| Austin | Heh. "You keep using that word, 'assoc'. I do not think that word means what you think it means..." | ||
| plobsing | hmm... CallContext.clone clones SELF.hash. Technically non-shallow, but I'm going to leave it for now. | 04:03 | |
| chromatic | That one needs to stay deep. | 04:04 | |
| plobsing | yeah, there's some deep magic going on in there that I don't want to mess with. | ||
| considering it doesn't implement visit, it's not going to mess up any deep clone op I can cook up. | 04:05 | ||
| what is a Capture PMC? | 04:11 | ||
| purl | i heard a Capture PMC was quite useful, similar to a DOM tree | ||
| plobsing | ok, so its not magic in any way? | ||
| chromatic | It's a Perl 6 thing, part Hash, part Array, but boy are they funny! | 04:14 | |
| Needs to be deep too. | |||
| sorear | Call signatures and activation records are both CallContext? | 04:15 | |
| plobsing | I removed the deepness on Capture, nothing broke... will test against Rakudo | ||
| chromatic | Rakudo and NQP. | 04:16 | |
| dalek | rrot: r45094 | plobsing++ | branches/shallow_clone (2 files): make parrot_hash_clone shallow |
04:17 | |
| rrot: r45095 | petdance++ | trunk/src/pmc/parrotinterpreter.pmc: consting |
|||
| plobsing | btw, how should I be benchmarking rakudo? | 04:20 | |
| sorear | I'd start with time make spectest | 04:21 | |
| chromatic | I usually use Callgrind on an example like Fibonacci or something OO heavy. | ||
| plobsing | sorear: I don't want to spend 2 hours | 04:22 | |
| sorear | if it only takes two hours, you're doing extremely well | ||
| chromatic | It should be a lot faster than two hours now. We had the parallel test run in under ten minutes a while back. | 04:24 | |
| sorear | well it takes 12 hours and 500MiB just to 'make' | 04:25 | |
| chromatic | On what machine? | 04:28 | |
| plobsing | yeah, rakudo is a good way to clear your filesystem cache | 04:29 | |
| sorear | chromatic: one with 384MiB of core; the huge memory use is probably most of the problem | 04:30 | |
| plobsing | nqp-rx passes with shallow capture clone | 04:32 | |
| dalek | rrot: r45096 | petdance++ | trunk/src/pbc_merge.c: consting and localizing |
04:33 | |
| chromatic | We're working on that; that's definitely a problem. | 04:35 | |
| sorear | oh, they told you? | ||
| chromatic | Yeah, that one did come up. | 04:36 | |
|
04:36
theory joined
|
|||
| chromatic | TT #1489 | 04:36 | |
| sorear | odd | 04:38 | |
| plobsing | chromatic: it appears rakudo implements its own Capture (src/builtins/Capture.pir) | 04:56 | |
|
04:57
kurahaupo joined
|
|||
| plobsing | does anything else use captures? | 05:00 | |
| chromatic | Not to my knowledge. | ||
| Austin | Capture pmc? Isn't that the basis for PGE? | 05:01 | |
| chromatic | I don't know if it uses the PIR version. | 05:03 | |
| plobsing | pge gets a little exercise in parrot's testsuite. if capture is critical to pge, I'm sure any breakage would show up there | 05:04 | |
| Austin | Not the pir, no. The pmc. | ||
| dalek | rrot: r45097 | petdance++ | trunk/src/pbc_merge.c: localized vars and consted some locals |
05:06 | |
|
05:07
integral joined
|
|||
| sorear | so, uh | 05:11 | |
| I installed Parrot | |||
| then I blew away the build directory | |||
| Austin | sorear++ | ||
| sorear | and now it seems Parrot can't find files that it was expecting to have in the build directory | ||
| chromatic | make install or make install-dev? | ||
| sorear | specifically | ||
| Austin | ? | ||
| sorear | cannot find file 'default.pmc' in path '.', '/usr/local/lib/parrot/2.2.0-devel/tools/build/../..', '/usr/local/lib/parrot/2.2.0-devel/tools/build/../../src/pmc', '/usr/local/lib/parrot/2.2.0-devel/tools/build/../../src/dynpmc', '/usr/local/src/parrot/2.2.0-devel', '/usr/local/src/parrot/2.2.0-devel/pmc' at /usr/local/lib/parrot/2.2.0-devel/tools/build/../lib/Parrot/Pmc2c/Pmc2cMain.pm line 244. | 05:12 | |
| Austin | Aren't those the same, now? | ||
| Heh | |||
| plobsing | why do we need to keep around the PMC source files? | ||
| Austin | Because all pmc's inherit from default.pmc. | 05:13 | |
| plobsing | yeah, but doesn't pmc2c create .dump files to handle that? | ||
| Austin | ^^ | ||
| sorear | plobsing: I don't know, but an attempt to 'make' a dynpmc extension failed with that error. | 05:14 | |
|
05:18
parthm joined
|
|||
| plobsing | Hitting ^C in some Configure.pl steps (eg: auto::warnings) is ignored. Bug or not? | 05:22 | |
| dalek | tracwiki: v1 | Austin_Hastings++ | NQP-rx%20Operator%20Precedence%20Parsing | 05:24 | |
| tracwiki: trac.parrot.org/parrot/wiki/NQP-rx%...ction=diff | |||
| plobsing | sorear: try commenting out lib/Parrot/Pmc2c/Dumper.pm:55 | 05:28 | |
| sorear | cannot find file 'default.dump' in path '.', '/usr/local/lib/parrot/2.2.0-devel/tools/build/../..', '/usr/local/lib/parrot/2.2.0-devel/tools/build/../../src/pmc', '/usr/local/lib/parrot/2.2.0-devel/tools/build/../../src/dynpmc', '/usr/local/src/parrot/2.2.0-devel', '/usr/local/src/parrot/2.2.0-devel/pmc' at /usr/local/lib/parrot/2.2.0-devel/tools/build/../lib/Parrot/Pmc2c/Pmc2cMain.pm line 244. | 05:31 | |
| make[1]: *** [p5sv.dump] Error 2 | |||
| plobsing | that's slightly better | ||
| at least it's looking for the right file now | 05:32 | ||
| hmmm....looks to me that both .dump and .pmc files are being installed in $PREFIX/src/2.2.0-devel/pmc | 05:37 | ||
| dalek | rrot: r45098 | petdance++ | trunk/src/pbc_merge.c: Removed unused argument from pbc_merge_fixups |
05:39 | |
| sorear | plobsing: as it happens, my build tree is ... $PREFIX/src/parrot | 05:41 | |
| plobsing: so I blew away part of the install along with it. | |||
| OOPS! | |||
| plobsing | does that mean your issue is fixed? | 05:42 | |
| sorear | no, I still think installing stuff in src/ is generally confusing | ||
| but I at least understand what's going on now | |||
| sorear mv parrot parrot.build | |||
| plobsing | moral of the story: don't build under $PREFIX | 05:43 | |
| but there is another point to address - should we really be installing .pmc files? | |||
|
05:44
davidfetter joined
|
|||
| chromatic | We should not. | 05:47 | |
| plobsing | I can eliminate the installation of .pmc files, but I think it might break things in a couple places | 06:13 | |
| chromatic | We should find out what. | 06:14 | |
| plobsing | example: we install 84 core .pmc files, but only 15 .dump files. Any dynpmcs that inherit from those 69 pmcs will fail. | 06:15 | |
| I'll make a branch | |||
| btw, I just discovered "perl Configure.pl --prefix --optimize". nifty hack | 06:18 | ||
| chromatic | perl Configure.pl --maintainer --optimize --prefix=/home/chromatic/dev/tmp/parrot && perl -pi -e 's/-O2 /-O3 /' Makefile && perl /home/chromatic/bin/rewrite_config_lib | 06:26 | |
| plobsing | wow, that's a mouthful | 06:27 | |
| --prefix without an argument defaults to installing into $BUILD_DIR/1/ | |||
| dalek | rrot: r45099 | plobsing++ | branches/no_pmc_install: creating branch to remove .pmc files from install |
06:28 | |
| rrot: r45100 | plobsing++ | branches/no_pmc_install (2 files): eliminate .pmc files from install targets |
|||
| plobsing | also, what does /home/chromatic/bin/rewrite_config_lib do? | 06:29 | |
| dalek | tracwiki: v2 | Austin_Hastings++ | NQP-rx%20Operator%20Precedence%20Parsing | 06:30 | |
| tracwiki: trac.parrot.org/parrot/wiki/NQP-rx%...ction=diff | |||
| tracwiki: v3 | Austin_Hastings++ | NQP-rx%20Operator%20Precedence%20Parsing | |||
| tracwiki: trac.parrot.org/parrot/wiki/NQP-rx%...ction=diff | |||
| Austin | There, I feel much better. | 06:33 | |
| chromatic | plobsing, it adds the SVN revision to config_lib.pasm, because I use git-svn. | 06:38 | |
| sorear | what does --optimize do? | 06:43 | |
| plobsing | optimizes :p | ||
| sorear | pity there's no -Oruntime-memory-usage | 06:44 | |
| plobsing | -Osize is probably the closest thing you can do atm | ||
| but that won't help you much | |||
| sorear | I think -Osize is mostly .text | 06:45 | |
| but AFAIK no gcc optimizations affect runtime memory usage at all | |||
| plobsing | what about struct-packing? | ||
| sorear | struct packing is fixed by the ABI and cannot be changed by -O options | 06:46 | |
| only -m options are allowed to break binary compatibility | |||
| and you generally can't use them if you want to link to libc | |||
| Linux uses lots of -m options... | |||
| plobsing | -mmmm options. tasty tasty options | 06:47 | |
| dalek | tracwiki: v4 | Austin_Hastings++ | NQP-rx%20Operator%20Precedence%20Parsing | ||
| tracwiki: trac.parrot.org/parrot/wiki/NQP-rx%...ction=diff | |||
| sorear | -mregparm3 -msse # these really ought to be part of ccall, but ccall has been set in stone for decades :( | 06:48 | |
| plobsing | what does regparm3 do? | ||
| sorear | passes the first three arguments in eax, ecx, edx instead of on the stack | 06:49 | |
| plobsing | oh. you poor soul, stuck on x86. we on x64 have that in our ABI. | ||
| sorear | yes | ||
| aren't forced compatibility breaks awesome? | |||
| oh, we're changing the word size, all that 30 year old SVID-compatible (yes, the *System V* interface description) code is broken anyway | 06:50 | ||
| let's fix all the warts! | |||
| I look forward to x86 dying | |||
| plobsing | as I recall, the ms people even took the opportunity to kill stdcall vs pascall vs fastcall | 06:51 | |
| sorear | \\o/ | 06:52 | |
| chromatic | I tried regparm3, but it didn't do anything useful performance wise. | ||
| plobsing | I imagine accessing the top couple stack elements is pretty damned fast on any recent cpu | 06:53 | |
| sorear | I suspect Linux' use of -mregparm3 has a lot to do with the fact that kernel threads have non-growable 8kb stacks by default | 06:54 | |
| every wasted word in stack frames counts | |||
|
06:55
snarkyboojum joined
|
|||
| sorear | okay, blizkost compiles with pcc_hackathon_6Mar10 | 06:56 | |
| shift_pmc() not implemented in class 'CallContext' | |||
| current instr.: 'main' pc 37 (test.pir:17) | |||
| Segmentation fault (core dumped) | |||
| woah, gdb can handle core dumps where the segfaulted instruction is in a dlopened library? impressive. gdb++ | 06:57 | ||
| the crashed statement was an attribute accessor... somehow, the object's .data == 0 | 06:59 | ||
| no attribute storage at all | |||
| chromatic | Probably not a CallContext. | 07:00 | |
| sorear | no, a P5Interpreter | 07:04 | |
|
07:11
uniejo joined
|
|||
| plobsing | any recommendation of an OO-heavy benchmark file for rakudo? | 07:11 | |
| chromatic | Anything from S12 | 07:12 | |
| dalek | rrot: r45101 | plobsing++ | branches/shallow_clone/src/pmc/capture.pmc: make Capture.clone shallow. |
07:17 | |
| rrot: r45102 | plobsing++ | branches/no_pmc_install/lib/Parrot/Pmc2c/Dumper.pm: eliminate pmc2c dependancy on default.pmc |
|||
| sorear | plobsing++ | ||
|
07:40
Psyche^ joined
07:44
bacek joined
07:45
Psyche^_ joined
|
|||
| bacek | aloha | 07:47 | |
|
08:03
payload joined
08:05
riffraff joined
|
|||
| Austin | Hello, bacek | 08:09 | |
| bacek | Hi Austin | ||
| Austin | Bacek, irclog.perlgeek.de/parrot/2010-03-21#i_2133947 | 08:16 | |
| There's some kind of issue with taking continuations and returning values after re-invoking the continuations. Naturally, I thought of you... | 08:17 | ||
| bacek | bacek@icering:~/src/parrot$ ./parrot bb.pir | 08:18 | |
| Blob? | |||
| la | |||
| ny | |||
| purl | blobby blooby blob! or a Binary Large OBject, or a big chunk of data in a database or the bane of DBD::Oracle or a cute little baby or en.wikipedia.org/wiki/The_Blob or a way of saying "... and it might be big" | ||
| bacek | bos | ||
| Blob. | |||
| Austin | Woot. | ||
| bacek | It's on pcc_refactor branch | ||
| Austin | WFY | ||
| I'm sure arnsholt will be delighted... | 08:19 | ||
| :) | |||
| bacek++ | |||
| bacek | Care to create todoed test for it? | ||
| Austin | Not even a little bit. | 08:20 | |
| bacek | Sigh... | ||
| Austin | Yeah. | ||
| bacek | Laziness ftw | ||
| Austin | heh. | ||
| Violates my "no pir" rule. | |||
|
08:25
iblechbot joined
08:27
fperrad joined
|
|||
| Austin | msg arnsholt FYI, Bacek has your weird Continuation scenario working in the pcc_refactor branch. | 08:28 | |
| purl | Message for arnsholt stored. | ||
| Austin | seen arnsholt? | ||
| purl | arnsholt was last seen on #parrot 8 hours, 40 minutes and 37 seconds ago, saying: Could it be that the Continuation resumes from a slightly off position (ref. bug.pir)? | ||
| Austin | msg arnsholt ... and he would be delighted if that scenario somehow became a test case | 08:29 | |
| purl | Message for arnsholt stored. | ||
| bacek | :) | 08:33 | |
| Austin | Laziness ftw. | ||
| (plus me not really understanding wtf he's doing..) | |||
| bacek | seen moritz | 08:38 | |
| purl | moritz was last seen on #parrot 17 hours, 47 minutes and 44 seconds ago, saying: nope :( | ||
| moritz is online | 08:39 | ||
| Austin | Man, if I could do this ... failblog.org/2010/03/16/entrance-win/ | 08:40 | |
| bacek | Hooray! :) | ||
| nopaste | "bacek" at 114.73.162.254 pasted "Rakudo patch for moritz++" (194 lines) at nopaste.snit.ch/20030 | ||
| bacek | moritz, can you try nopasted path on rakudo+pcc_hackatron? | 08:41 | |
| I have feelings that this weird save/restore stuff isn't needed anymore | |||
| moritz | bacek: is that on top of the patch on parrot-dev? | 08:42 | |
| bacek | moritz, nope. Clean one | ||
| But you can just delete few lines on top of old one. | |||
| In perl6.ops | 08:43 | ||
| In bind_signature inside "if (bind_error == BIND_RESULT_JUNCTION) " | |||
| moritz | huh, I get some hunks FAILED | ||
| bacek | sigh... | ||
| It's on top of old one? | 08:44 | ||
| moritz | no | ||
| I'm on master, commit 265726dfc14e11242f9f7673a61b1d0cccb14df5 | |||
| bacek | let me update to current master in try | 08:46 | |
| nopaste | "bacek" at 114.73.162.254 pasted "Patch again" (98 lines) at nopaste.snit.ch/20031 | 08:48 | |
| bacek | moritz, nopasted patch against 265726dfc14e11242f9f7673a61b1d0cccb14df5 | ||
| bacek 's laptop is dying... | 08:51 | ||
| moritz, If I'll disappear try to remove all this save/restore stuff from rakudo. I hope it will help | |||
| moritz | will do | 08:53 | |
|
08:54
kurahaupo joined
|
|||
| moritz | purl, msg bacek rakudo now mostly works on the branch, just calling sets ($obj.*method) die with "shift_pmc() not implemented in class 'CallContext'" | 09:26 | |
| purl | Message for bacek stored. | ||
|
09:28
AndyA joined
|
|||
| moritz | purl, msg bacek also the memory usage is a bit higher - without the branch it rakudo compilation works with a ulimit of 1G virtual mem, on the branch that's not enough | 09:28 | |
| purl | Message for bacek stored. | ||
| chromatic | Funny, because CallContext does implement shift_pmc(). | 09:32 | |
| moritz | on the pcc_hackathon_6Mar10 branch? | 09:34 | |
| I only see unshift_pmc in src/pmc/callcontext.pmmc | |||
| chromatic | Oh, I'm not on the branch. Good point. | ||
| Called from Pthe 6Opaque PMC? | 09:36 | ||
| the P6Opaque PMC? | |||
|
09:37
Mokurai1 joined
|
|||
| moritz | no idea | 09:38 | |
| the bactrace says | |||
| current instr.: '!dispatch_.*' pc 529 (src/glue/dispatch.pir:167) | |||
| called from Sub '_block170' pc 1518 (EVAL_1:564) | |||
| chromatic | A gdb backtrace would show it. Set a breakpoint on Parrot_ex_throw_from_c_args. | 09:39 | |
|
09:39
snarkyboojum joined
|
|||
| moritz | my gdb fu is rather weak - how do I do that? | 09:40 | |
| chromatic | gdb ./parrot | ||
| Actually, no. | |||
| gdb ./perl6 | |||
| > break Parrot_ex_throw_from_c_arg | 09:41 | ||
| (y) | |||
| > r example.p6 | |||
| > bt | |||
| moritz | doesn't trigger the breakpoint | ||
| chromatic | Should be argS instead of arg | 09:42 | |
| nopaste | "moritz" at 87.159.150.189 pasted "bt for chromatic++" (42 lines) at nopaste.snit.ch/20032 | 09:44 | |
| chromatic | Hm. Hit c to continue. | ||
| There'll probably be a few of those. | 09:45 | ||
| nopaste | "moritz" at 87.159.150.189 pasted "the real one..." (33 lines) at nopaste.snit.ch/20033 | 09:47 | |
|
09:48
payload joined
|
|||
| chromatic | Hm. That's not where I thought it was. | 09:48 | |
| That's from the PIR level, not C. | |||
| Either way, somehow we lost unshift_pmc in the branch. | 09:52 | ||
|
09:52
parthm joined
10:00
JimmyZ joined
|
|||
| chromatic | Hm, no. It's there and it's working. | 10:01 | |
| moritz | it's shift_pmc that's missing | ||
| not unshift_pmc | |||
| chromatic | ah. | ||
| Perhaps I should sleep eventually. | |||
| sorear | losing shift_pmc also broke blizkost, but I was expecting I just needed to change apis | 10:02 | |
| chromatic | Hm, there's a shift_pmc in there too. | 10:03 | |
| vt->shift_pmc = Parrot_CallContext_shift_pmc; | 10:04 | ||
| Oh, spot the problem. | 10:05 | ||
| #2 0x00007f38e4c10e4e in Parrot_default_shift_pmc (interp=0x2c5f010, pmc=0x0) at ./src/pmc/default.c:1927 | |||
| Austin | Psssh. If it was that easy, anybody could do it... | 10:06 | |
| chromatic | Though why anything'd get to default if the PMC really were NULL is a good question. | 10:07 | |
| Austin | Null attribute? | ||
| chromatic | NULL->vtable should go boom. | 10:08 | |
| Unless the backtrace demonstrates clever GCC optimizations. | |||
| I'd have to see the related PIR to know better. | 10:09 | ||
|
10:10
riffraff joined
|
|||
| arnsholt backlogs | 10:12 | ||
| moritz | it's all in public repos :-) | 10:13 | |
| chromatic: github.com/rakudo/rakudo/blob/maste...h.pir#L167 | 10:15 | ||
| chromatic | Thanks. | 10:17 | |
| Which test file did you run? | 10:19 | ||
| moritz | t/spec/S12-methods/calling_sets.t | ||
| simpler: | 10:20 | ||
| ./perl6 -e '2.*ACCEPTS(2)' | |||
| chromatic | works for me | 10:21 | |
| moritz | on the branch? | ||
| chromatic | yes. | 10:22 | |
| moritz | wow | ||
| how did you compile rakudo? did you use the patch from parrot-dev? | |||
| chromatic | Let me check something though, now i have a strange question about how I made my git branch. | 10:23 | |
|
10:23
parthm left
|
|||
| moritz | if rakudo builds on your pcc_hackathon_6Mar10 branch without a patch, you're doing something wrong | 10:25 | |
| chromatic | Yeah, I wasn't tracking the right remote ref. | ||
| nopaste | "moritz" at 87.159.150.189 pasted "build rakudo on parrot branch" (138 lines) at nopaste.snit.ch/20034 | ||
| chromatic | Confirmed, moritz. | 10:39 | |
|
10:43
payload joined
|
|||
| dalek | kudo: 041ad2a | (Solomon Foster)++ | src/Perl6/Grammar.pm: Tweak the grammar for unicode hyperops. Still getting strange issues with this, but hyper.t definitely works better with this change than without it. |
10:50 | |
| kudo: 35f3373 | (Solomon Foster)++ | t/spectest.data: Turn on hyper.t. |
|||
| chromatic | moritz, I've just committed a patch which appears to DTRT. | 11:04 | |
| Parrot r45103. | 11:06 | ||
| msg bacek r45103 is a quick and dirty attempt to get Rakudo working again; it's worth review. | |||
| purl | Message for bacek stored. | ||
|
11:08
clinton joined
|
|||
| dalek | rrot: r45103 | chromatic++ | branches/pcc_hackathon_6Mar10/src/pmc/callcontext.pmc: [PMC] Added preliminary shift_pmc and shift_string VTABLE entries to |
11:08 | |
| arnsholt | Hmm. Writing a test case for this continuation stuff is hard | 11:16 | |
|
11:17
payload joined
|
|||
| Austin | Arnsholt: I thought what you had was a pretty good start. | 11:21 | |
| arnsholt | Austin: Yeah, it is | ||
| Austin | Except maybe append to a string instead of printing.. | ||
| arnsholt | I just need to figure out how to get the calling code know what value to expect | ||
| Austin | ? | 11:22 | |
| arnsholt | But I think I've got it | ||
| Austin | Tell it. | ||
| "This should emit 'la, la, ny, ny, bos, bos'" | |||
| arnsholt | Oh, right. There's that option of writing tests | ||
| arnsholt digs for an example to copy | 11:23 | ||
| There | 11:31 | ||
| How should I submit the patch? | |||
| Austin | nopaste and send a msg to bacek | 11:32 | |
| arnsholt | Cool | 11:33 | |
| nopaste | "arnsholt" at 193.157.196.115 pasted "Test for continuation issue" (92 lines) at nopaste.snit.ch/20035 | 11:37 | |
| arnsholt | msg bacek I wrote a test for my continuation issue, see nopaste.snit.ch/20035 | 11:38 | |
| purl | Message for bacek stored. | ||
| Coke | msg plobsing - I'm looking at "no_pmc_install" - is this going to negatively impact HLLs abilities to build dynamic pmcs? | 11:42 | |
| purl | Message for plobsing stored. | ||
| Coke | msg plobsing - (I see the discussion about .dump vs .pmc) - let me know when it's safe to try an HLL against trunk with those changes. | 11:50 | |
| purl | Message for plobsing stored. | ||
|
11:59
whiteknight joined
|
|||
| Austin | Guten morgen, Whiteknight. | 12:00 | |
| whiteknight | Hello Austin. How are you today? | ||
| Austin | Coughing and dizzy, sadly. | 12:01 | |
| I think the cleaning fumes from yesterday are lingering... | |||
| whiteknight | ...<insert joke about atmosphere of New Jersey here>... | ||
| Austin | I was going to make it about close, but your way is good, too. | 12:02 | |
| So today I'm trying to figure out how postcircumfix works in the nqp optable parser. | 12:07 | ||
| whiteknight | like the actual parsing mechanics? | 12:08 | |
| Austin | Yeah. | ||
| I need to know how the a and the [i] get hooked together in a[i] | |||
| whiteknight | oh, to test your PCT matcher thingy? | 12:09 | |
| Austin | Bah, not even. | ||
| I'm trying to get some code to work. | |||
| Well, to generate some kind of tree. | |||
| Then I can write a test for it. | |||
| (Not true, actually. I've got some tests written, but they don't pass.) | |||
| whiteknight | oh | 12:10 | |
| Austin | Code tests, not tests of my matcher. The matcher works. | 12:11 | |
| whiteknight | ok | 12:16 | |
| Austin | I think the problem is that [] needs to be marked as an infix/left-associative op, not as a unary op. | ||
| But that doesn't work, either. | 12:17 | ||
| Mother F....r | |||
| Coke | $ ./perl6 -e 'Mother F....r' | 12:18 | |
| Segmentation fault | |||
| purl | (Core dumped) | ||
| whiteknight | great | ||
| Coke | (old rakudo. upping...) | ||
| arnsholt | Who wrote purl? | 12:19 | |
| Coke | purl, owner? | 12:20 | |
| purl | i think owner is hachi, see also #purl | ||
| Coke | I'm pretty sure purl is an infobot with some custom stuff on top. | 12:21 | |
| Coke comes back in 30m when rakudo has finished building. | |||
| Austin | Hachi! There's a name I haven't heard in a while... | 12:23 | |
| Coke | HACHI MACHI! | 12:26 | |
| Coke misses _the critic_ | |||
|
12:36
tetragon joined
|
|||
| Coke | wah, current rakudo doesn't segfault on that. | 12:47 | |
| moritz | purl, msg chromatic with your patch, all rakudo tests pass on the pcc_hackathon_6Mar10 (at least all that also pass in master) | 12:59 | |
| purl | Message for chromatic stored. | ||
|
13:06
janus joined
13:07
patspam joined
13:11
PerlJam joined
13:49
theory joined
14:10
PacoLinux joined
|
|||
| whiteknight | moritz: which patch? Is that a patch for Rakudo? | 14:15 | |
| moritz | whiteknight: there's both a patch by chromatic in that branch, and a local rakudo patch for adapation | 14:16 | |
| whiteknight | moritz: can you send me the patch for that branch? I could apply it and prepare the merge | ||
| moritz | whiteknight: it is applied already - sorry for the confusion | 14:17 | |
| whiteknight | oh, okay | ||
| incoming | 14:21 | ||
| purl | duck! | ||
|
14:23
fperrad joined
|
|||
| dalek | rrot-linear-algebra: 657f6b7 | Whiteknight++ | setup.pir: setup.pir has +x |
14:24 | |
| rrot-linear-algebra: 06f8acb | Whiteknight++ | (2 files): update get_block and set_block on NumMatrix2D to handle more error conditions. Expand several TODO'd tests for both methods. All tests pass on this type now. |
|||
| rrot-linear-algebra: bd53755 | Whiteknight++ | (2 files): Add get_block and set_block methods to PMCMatrix2d. After some refactoring of tests, all tests pass. |
|||
| rrot-linear-algebra: 3fc10ea | Whiteknight++ | src/pmc/complexmatrix2d.pmc: add get_block and set_block methods to complexmatrix2d. All tests pass |
|||
|
14:37
Myhrlin joined
|
|||
| Austin | Hey, whiteknight. | 14:39 | |
| purl | i guess whiteknight is mailto:wknight8111@gmail.com or the grand master funk or wknight8111.blogspot.com/ | ||
| whiteknight | ? | ||
| Austin | While you're hacking, you wouldn't want to make the various keyed access vtables (get/set)_(int/str/pmc/num)_keyed(_int/str/num/pmc) overridable on Object, would you? | 14:40 | |
| whiteknight | aren't they already? | ||
| Austin | Because if there were vtable overrides, you wouldn't have to do {Key.new(0,0)} | ||
| I looked a while ago, when you started migrating to Kakapo, but I didn't see anything that looked like it. | 14:41 | ||
| And, hey, whiteknight++ - you're cranking out the pla tests. | 14:42 | ||
| Coke | pla? | ||
| purl | pla is really focusing on fast 2D data buffers or Parrot-Linear-Algebra | ||
| Coke | ah | ||
| whiteknight | Austin: yeah, I think I'm basically done with this sprint now. I'm going to move over to PDS and upgrade the test suite there now | ||
| Austin | Sounds cool. repo? | 14:43 | |
| pds? | |||
| purl | pds is Parrot Developer Summit or Parrot-Data-Structures or github.com/Whiteknight/parrot-data-structures | ||
| Austin | We're getting quite the drenching here... | 14:44 | |
|
14:44
dalek joined
|
|||
| whiteknight | this one is going to be a little bit harder since the types don't share common behaviors. The fixed* types don't act much like the resizable* types, and stacks don't act like queues | 14:44 | |
| so I can't inherit many tests | 14:45 | ||
| Austin | Right. But the early tests ought to be easy to get going. | ||
|
14:48
riffraff joined,
pmichaud joined
14:49
atrodo joined
15:02
sri joined
|
|||
| Coke | pmichaud: hey! | 15:23 | |
| pmichaud | good morning, #parrot | 15:24 | |
| Austin | Hey, pmichaud! | 15:25 | |
| purl | i heard pmichaud was www.pmichaud.com/ or "Patrick R. Michaud" <mailto:pmichaud@pobox.com> or in charge of toaster experiments or a friendly guy :) | ||
| whiteknight | pmichaud! How are you? | ||
| pmichaud | Tired. | ||
| we're finally out of the hospital, but not out of the woods. | |||
| Austin | :( | ||
| whiteknight | out of the hospital is always a good first step | ||
| Austin | Any news? | 15:26 | |
| pmichaud | well, Paula's surgery was overall successful, but we've had a fair number of complications | ||
| Austin | Yikes. | ||
| I've noticed they never say, "There's a complication. It turns out the hospital needs to get rid of eight million dollars, and we've picked you to receive half of it..." | 15:27 | ||
| whiteknight | They also never say "We're not worried at all about a malpractice suit, so we're going to let you go home before you are ready" | 15:29 | |
| In my experience, getting cleared to leave the hospital can be the longest, hardest part of the whole ordeal | 15:30 | ||
| Austin | FWIW, Pmichaud, just about every day for the last week I've said, "Man, I wish I could ask pmichaud about this..." | ||
| If you could just plug your brain into a usb port, it would rock... | 15:31 | ||
| whiteknight: :) I spent a few months in hospital because of a half-degree fever. | |||
| whiteknight | Austin: We spent almost 24 hours in the hospital when the kid was born. The doctor wouldn't clear him to leave the last day until he produced a wet diaper | 15:32 | |
| Austin | Yeah | ||
| whiteknight | my dad spent a whole extra weekend in the hospital once because they couldn't get the right doctor to sign the release | 15:33 | |
| Austin | They do that with anesthesia patients, too. | ||
| Nothing to eat or drink until you pee. | |||
| pmichaud | 15:29 <whiteknight> They also never say "We're not worried at all about a malpractice suit, so we're going to let you go home before you are ready" | 15:35 | |
| Actually, they did try to discharge us early. | |||
| We had to refuse and call in various patient advocates to prevent it. | 15:36 | ||
| Austin | 8-O | ||
| What, did they have a convention booked in for the weekend? | 15:37 | ||
| pmichaud | there were some serious miscommunication problems between the nursing staff and the doctors | ||
| Austin | Sorry, we need these rooms for the shriners? | ||
| Gack. | |||
| pmichaud | as of wednesday afternoon, when they tried to discharge, I couldn't even get Paula out of her hospital bed. The *staff* couldn't get her out of the hospital bed without first adminstering a fair amount of pain medicine and having two nursing techs to do it. | 15:38 | |
| dalek | tracwiki: v34 | coke++ | BranchDescriptions | ||
| tracwiki: update from script. | |||
| tracwiki: trac.parrot.org/parrot/wiki/BranchD...ction=diff | |||
| pmichaud | and somehow they expected us to go home, and for me to be able to get her from the van into the house | ||
| turns out we were correct to refuse dismissal, by that evening she was completely unable to move her right leg. | 15:39 | ||
| one of the doctor's assistants showed up Thursday morning and said "we realize there's some pain, but we think you're ready to discharge". To which I responded "...but Paula is completely unable to move her right leg." "Oh. We weren't aware of that." | 15:41 | ||
| whiteknight | pmichaud: Oh, I'm sorry to hear that. My experience in hospitals is (thankfully) limited | ||
| Austin | wtf? | ||
| What happened to her leg? | |||
| pmichaud | well, at the time nobody knew. We now suspect it was a pinched nerve blocking the signals to the leg. | 15:42 | |
| (the nerve has since become unpinched, so she has the use of the leg again, but it's extremely weak.) | |||
| Austin | And naturally, the doctors didn't get the word from the nursing staff about this? | 15:43 | |
| pmichaud | right, that's why the doctors were a bit surprised (and concerned) | ||
| as soon as word actually made it to one of our doctors, things happened quick. | |||
| we had several doctors there in rapid succession, various consults, etc. | 15:44 | ||
| Austin | Well, that's a plus. | ||
| Tell 'em "Hey, you know that commercial where there's one guy working, and a bunch of monkeys..." | 15:45 | ||
| pmichaud | and I suspect the hospital has since reviewed the case somewhat, because they've (unprompted) sent over some home health assistance | ||
| Austin | Is that the hospital, or the insurance company? | ||
| pmichaud | (came over on Saturday, said that Paula was flagged as a "hot" case) | ||
| Austin | Aj | 15:46 | |
| pmichaud | I'm pretty sure it's the hospital in this instance. | ||
| Austin | Ah | ||
| dukeleto | 'ello | 15:48 | |
| pmichaud: sorry to hear about your hospital misadventure. I hope everyone is happy and healthy soon | |||
| Austin | Hey, duke | ||
| pmichaud | me too, but we're not there yet. :-) | ||
| dukeleto | Austin: top of the week to ya | ||
| pmichaud | anyway, now that we're home I'll try to hang out on the channel, but (as has happened three times already since I rejoined the channel) I'll often have to "disappear" suddenly to help Paula with something. | 15:51 | |
| Austin | That's fine. A little bit of Pmichaud is better than "Oh, crap, time to turn on trace(1) again..." | 15:52 | |
| whiteknight | a little bit of Pmichaud on my mind, a little bit of pmichaud he's on line. A little bit of pmichaud is all I see... | 15:58 | |
| git merge master mambo_number_5 | |||
| Austin | Grrr... | 16:03 | |
| time for lunch | |||
| whiteknight | What's on the menu today? I had chicken salad | 16:06 | |
|
16:11
ruoso joined
16:24
payload joined
|
|||
| whiteknight | does NQP support multiple inheritance? | 16:27 | |
| pmichaud | I don't think it supports it yet. We could probably add it w/o too much difficulty. | 16:28 | |
| whiteknight | nah, it's not a big deal. | ||
| I'm trying to write up a proper NQP-based test suite for PDS, and I'm being greedy about trying to inherit lots of tests and reduce duplication | 16:29 | ||
| but the gains are small | |||
|
16:39
Andy joined
|
|||
| cotto_work | o hai | 16:42 | |
| dukeleto | cotto_work: howdy | ||
| whiteknight | hello | 16:43 | |
| szbalint | qdb.us/302018 # reminded me that chromatic makes parrot vrrrm vrrmm | 16:46 | |
|
16:57
darbelo joined
|
|||
| whiteknight | goddamn cpan | 17:02 | |
|
17:04
rt7 joined
|
|||
| dalek | rrot: r45104 | petdance++ | trunk (3 files): adding more PARROT_* attributes to funcs |
17:11 | |
|
17:13
cotto_w0rk joined
17:17
cotto_work joined
|
|||
| cotto_work | If I have some supporting code that's needed for some Parrot core tests written in nqp, what's the best place to put it? | 17:28 | |
| Coke | I would put it right next to the support code neede for parrot tests written in pir. | 17:29 | |
| also 'core parrot tests written in nqp' is an oxymoron. =-) | |||
| s/core// ? | |||
| cotto_work | nqp's included in ext | ||
| Coke | that's npq-rx. =-P | ||
| (since we also have compilers/nqp, which is not part of corevm) | 17:30 | ||
| that should be fine, yah. | |||
| cotto_work | by | ||
| "core" I mean "distributed as part of Parrot" | |||
| not corevm | |||
| Coke | ok. we might want a better word for 'core' vs. 'corevm' to avoid (my, at least) confusion, but yah, that seems fine, and my answer on where is the same. | 17:31 | |
| (are these tests to test nqp-rx, or just to use nqp-rx in testing?) | 17:32 | ||
| cotto_work | they'll just use nqp-rx. They're for testing the profiling runcore. | ||
| Thanks. | 17:33 | ||
| Coke | whee. | 17:34 | |
|
17:39
chromatic joined
|
|||
| Coke | nqp-rx doesn't support "foo if $bar", does it? | 17:47 | |
| chromatic: morning. | |||
| chromatic | morning | ||
|
17:49
kjeldahl joined
|
|||
| moritz | Coke: it does - see #perl6 | 17:54 | |
| though if foo is a function, you need to write foo() if bar | |||
| Coke | moritz++ | 17:58 | |
| dxpw? | 18:01 | ||
|
18:05
Psyche^ joined
18:15
joeri joined,
payload joined
|
|||
| chromatic | New mini-bottleneck in PCC: the use of malloc/free for splitting signatures. | 18:24 | |
|
18:28
ash_ joined
|
|||
| dalek | rrot: r45105 | plobsing++ | branches/no_pmc_install/lib/Parrot/Pmc2c (2 files): fix always parse default.pmc bug. partcl now builds |
18:33 | |
|
18:48
hicx174 joined
|
|||
| dalek | rrot: r45106 | NotFound++ | trunk/src/dynext.c: Fix C++ build |
18:49 | |
|
18:57
dmagnus joined
|
|||
| whiteknight | my PMC type has "provides stack" in the pmclass declaration, but then it fails tests on "does 'stack'" | 18:58 | |
| darbelo | whiteknight: s/provides/does/ ? | 18:59 | |
| whiteknight | darbelo: my queue type "provides queue", and successfully "does 'queue'" | 19:00 | |
| and all the PLA types do the same for the "matrix" role | |||
| so the syntax works | |||
| darbelo | Check for typos on that line. pmc2c silently ignores stuff it doesn't understand. | 19:01 | |
| cotto_work | What's the C code look like for provides_str? | 19:02 | |
| whiteknight | no idea. | 19:03 | |
| cotto_work | grep provides_str path/to/your_pmc.c | 19:04 | |
| or ack if you want to be awesome | |||
| whiteknight | vt->provides_str = Parrot_str_append(interp, vt->provides_str, | 19:05 | |
| string_make(interp, "stack", 5, "ascii", | |||
| PObj_constant_FLAG|PObj_external_FLAG)); | |||
| so, "stack" is in there | 19:06 | ||
| cotto_work | That's odd. It should generate a space-separated list in a single STRING*. | 19:12 | |
| plobsing | arg. I can't show any significant speed improvement on rakudo using shallow clone. I think rakudo is avoiding using clone to work around the issues deep clone causes. | ||
| whiteknight | plobsing: that's probably extremly accurate | ||
| chromatic | At least Rakudo can get rid of code. | 19:13 | |
| plobsing | I'm almost 100% sure its happening. A place i noticed deep cloning happening 2 weeks ago no longer does so. | ||
| whiteknight | cotto_work: yeah, it does look a little weird. But, it only does one thing | 19:14 | |
| chromatic | Check to see if Sub PMCs get cloned when you clone a NameSpace. | ||
| plobsing | chromatic: from parrot or from rakudo? | ||
| chromatic | From Rakudo. | 19:15 | |
| plobsing | do I drop down to pir:: to do that? | ||
| chromatic | I'd annotate NameSpace clone or use gdb. | 19:16 | |
| cotto_work | whiteknight, that's an odd problem. If you want I can dig into it tonight. | 19:20 | |
| whiteknight | cotto_work: yeah, that would be nice if you have time and motivation for it | ||
| I'll set you up with a commit bit to PDS | |||
| Done. | 19:21 | ||
| cotto_work | ok. If it bugs you, that's motivation. | ||
| whiteknight | cotto++ | ||
| cotto_work | also, it'll give me an excuse to say pmc2c-- a few more times | ||
| plobsing | chromatic: I'm fine figuring out what NameSpace.clone, it's getting rakudo to invoke NameSpace.clone that I'm not to sure about | 19:22 | |
| module ASDF { sub Hi { ... } } my $x = ASDF.clone() # doesn't work | |||
|
19:26
payload joined
|
|||
| plobsing | msg Coke I have the major HLLs (except cardinal, which doesn't use installed parrot) working against the no_pmc_install branch. Feel free to test. | 19:28 | |
| purl | Message for coke stored. | ||
| chromatic | I should be able to merge pcc_hackathon to trunk in a bit. | 19:29 | |
| Tene | does performance vary between trunk and branch? | 19:30 | |
| chromatic | The branch is a bit faster. | 19:31 | |
| Tene | Better than the "much slower" from the last pcc branch, iirc. | ||
| chromatic | I have a couple of other ideas to try too. | 19:32 | |
| post-merge anyhow | |||
| cotto_work | Which HLLs work with the branch? | 19:36 | |
| chromatic | We tested Rakudo. | 19:39 | |
| dukeleto | chromatic++ # pcc_hackathon merge | 19:42 | |
| cotto_work | any of the smaller ones? | 19:44 | |
|
19:44
allison joined
|
|||
| cotto_work | hi allison | 19:44 | |
|
19:47
eiro joined
|
|||
| whiteknight | incoming | 19:48 | |
| purl | duck! | ||
| cotto_work | quack | ||
| dalek | rrot-data-structures: c4f7d37 | Whiteknight++ | setup.pir: +x to setup.pir |
19:49 | |
| rrot-data-structures: a8634e1 | Whiteknight++ | t/ (5 files): start reworking the test suite to use Kakapo. |
|||
| rrot-data-structures: d47a392 | Whiteknight++ | t/pmc/ (5 files): major overhaul of the existing tests. Since we have many similar types (stcks, queues) we can inherit most of the tests from a hierarchy of parent test classes. Almost all tests now are in common.nqp and inherited by the individual files. |
|||
| rrot-data-structures: 194afc2 | Whiteknight++ | t/testlib/common.nqp: add that file, finally |
|||
| rrot-data-structures: 878a834 | Whiteknight++ | t/harness: small fix to the harness |
|||
| rrot-data-structures: b697c2c | Whiteknight++ | t/ (8 files): add a run_test utility to run an individual test. Fix all tests so that the test suite actually runs (but several tests fail) |
|||
| rrot-data-structures: 1c20dc0 | Whiteknight++ | (7 files): add get_bool to most types. Fix several test failures. most types are failing one test each now |
|||
| rrot-data-structures: 1f3d846 | Whiteknight++ | (10 files): merge the test_cleanup branch |
|||
| chromatic | cotto_work, I don't know that anyone has tested the others. | 19:52 | |
|
19:52
iblechbot joined
|
|||
| whiteknight | matrixy is fallow for now, so I'm not going to test it | 19:53 | |
| cotto_work | chromatic, a wiki page on how to fix an HLL might help. | 19:54 | |
| (post-pcc merge) | |||
| chromatic | Sounds good. | 19:55 | |
| purl | Sounds good. is there a good way for me to find out when branches are merged, other than read every svn commit? | ||
| plobsing | purl, forget sounds good | 19:57 | |
| purl | plobsing, I didn't have anything matching sounds good | ||
| plobsing | purl, forget sounds good. | ||
| purl | plobsing, I didn't have anything matching sounds good | ||
| plobsing | purl, forget "Sounds good." | ||
| purl | plobsing, I didn't have anything matching "sounds good." | ||
| chromatic | purl, forget Sounds good. | 19:58 | |
| purl | chromatic, I didn't have anything matching sounds good | ||
| chromatic | Wow. | ||
| cotto_work | sounds good. | ||
| purl | sounds good. is, like, "" | ||
| cotto_work | sounds good. | ||
| purl | sounds good. is "" | ||
| cotto_work | sounds good. | ||
| purl | sounds good. is "" | ||
| darbelo | no, Sounds good. is <reply> | ||
| purl | okay, darbelo. | ||
|
19:59
bacek_mobile joined
|
|||
| bacek_mobile | o hai | 20:00 | |
| cotto_work | hi bacek_mobile. Are you on your new development machine? ;) | 20:01 | |
| Austin | whiteknight: Kakapo does multiple inheritance. | ||
| (Naturally) | |||
| bacek_mobile | cotto, almost. at least it has linux inside | ||
| :) | |||
| Running irc on mobile phone is... like FUTURE! :) | 20:03 | ||
| whiteknight | Austin: nice | ||
| bacek_mobile | seen chromatic | 20:04 | |
| purl | chromatic was last seen on #parrot 5 minutes and 55 seconds ago, saying: Wow. | ||
| chromatic | pong | ||
| bacek_mobile | chromatic, i missed shift-foo in CallContext during switching to array from list... | 20:05 | |
| Myv fault | |||
| chromatic | Not a problem, I'm adding back now with tests. | ||
| bacek_mobile | ok | ||
| Austin | Whiteknight: but we probably want roles. | 20:06 | |
| bacek_mobile | Are you going to merge it? | ||
| Austin | Actually, "ro^les" with that cool hat thingy. | ||
| We'll need to use the "do^es" keyword for that... | |||
| chromatic | Yes, I am. | 20:08 | |
| cotto_work | rļæ½les? | ||
| bacek_mobile | chromatic, good. | 20:09 | |
| Austin | asdas | ||
| Bah | |||
| whiteknight | Austin: I've gotten all those issues sorted out with simple inheritance | ||
| dalek | rrot-data-structures: c9207e7 | Whiteknight++ | (3 files): updates to README |
||
| Austin | Bummer :( | 20:10 | |
| I was kind of looking forrward to it.. | |||
| whiteknight | Austin: Maybe we can add them in next | 20:11 | |
| Austin | yeah.. | ||
| whiteknight | Take a look at the tests in PDS and see if you can find a better way to write it all than I have | ||
| Austin | But my never-to-be-sufficiently-accursed grammar is giving me problems now... | ||
| so a distraction would be welcome. | |||
| Counterproductive, but welcome. | |||
|
20:13
theory joined
|
|||
| Coke | Austin: if you want a distraction, you can try to wire up partcl-nqp with kakapo! | 20:14 | |
| Austin | Heh. | ||
| Too easy. | |||
| purl | too easy is codeword for "restrict coral's creativity, it's hurting me" | ||
| Coke | but think of all the code you could rip out! | 20:15 | |
| Austin | Mmmm | ||
| There is that. | |||
| I need a list of all the "global" symbols that the expression parser uses | |||
| Well, that was easy. | 20:18 | ||
| :) | 20:19 | ||
|
20:20
frodwith joined
|
|||
| dalek | rrot: r45107 | chromatic++ | branches/pcc_hackathon_6Mar10/t/pmc/callcontext.t: [t] Added tests for CallContext's unshift_pmc VTABLE. |
20:28 | |
| chromatic | Incoming. | 20:53 | |
| purl | duck! | ||
| cotto_work | incoming duck? | ||
| chromatic | Incomng merge. | ||
|
21:01
allison joined
|
|||
| dalek | rrot: r45108 | chromatic++ | trunk (35 files): Merged pcc_hackathon_6Mar10 into trunk. Because this changed op numbering, you |
21:02 | |
| Austin | Coke: ping | 21:09 | |
| nopaste | "Austin" at 68.39.12.202 pasted "(for coke) Error message output when trying to use mscgen plugin in trac" (10 lines) at nopaste.snit.ch/20040 | 21:10 | |
| WorkCoke | :? | 21:11 | |
| purl | it has been said that : is the path separator | ||
| WorkCoke | Austin: do you have a page that causes that error for me to look at? | ||
| Austin | I was trying to play around with the mscgen plugin, but it appears to be improperly configured or not working. | ||
| trac.parrot.org/parrot/wiki/TreeUnit | 21:12 | ||
| The mscgen code is copied from the example on the plugin website. | |||
| WorkCoke | I noticed that. =-) | 21:13 | |
| Austin | Gotta start somewhere... | ||
| WorkCoke | austin? | 21:14 | |
| purl | austin is nice. or a city in Texas. or Mr. Hastings, if you're nasty. | ||
| WorkCoke | austin_hastings? | ||
| purl | austin_hastings is asking for method. | ||
| WorkCoke | facepalm. | ||
| purl | Oh geez, not this shit again. | ||
| Austin | purl++ | ||
| WorkCoke | Austin: cc'd you on the ticket. | 21:15 | |
| Austin | okay | ||
| Thanks. | |||
| Do we need that page to stay as-is? | 21:16 | ||
| WorkCoke | Austin: if you need to change it, just move the test to a separate page and reply to the ticket. | 21:17 | |
| (i mean, the mscgen bit.) | |||
| Austin | Sure | 21:18 | |
|
21:26
davidfetter joined
|
|||
| dalek | tracwiki: v3 | Austin_Hastings++ | TreeUnit | 21:27 | |
| tracwiki: trac.parrot.org/parrot/wiki/TreeUni...ction=diff | |||
| tracwiki: v4 | Austin_Hastings++ | HLL%20Resources | |||
| tracwiki: trac.parrot.org/parrot/wiki/HLL%20R...ction=diff | |||
| WorkCoke | 'make codetest' fails after mergeback. only interesting bit is the pod failure in ext/, which actually looks like it's finding a bug in the file (2 cuts in a row.) | 21:28 | |
| (also, branch still exists) | |||
|
21:28
allison joined
|
|||
| dalek | kudo: db0f857 | moritz++ | t/spectest.data: run more teest files |
21:29 | |
| chromatic | Merging the test file was awkward. | 21:35 | |
| dalek | kudo: 5886ef7 | moritz++ | (4 files): enable build on parrot after pcc_hackathon_6Mar10 merge |
||
| chromatic | Feel free to remove the branch, any karma hounds. | ||
|
21:43
joeri joined,
joeri left
|
|||
| dalek | tracwiki: v1 | Austin_Hastings++ | NQP-rx%20Tricks | 21:44 | |
| tracwiki: trac.parrot.org/parrot/wiki/NQP-rx%...ction=diff | |||
|
21:44
bacek_mobile joined
|
|||
| bacek_mobile | chromatic++ | 21:45 | |
| chromatic, care to hack IMCC little bit? | |||
| chromatic | I might have some time tonight. What do you have in mind? | 21:46 | |
| NotFound | I'm having problems with the oplib.pmc | ||
| bacek_mobile | we can create CallContext in compile time for set-args/set-results | 21:47 | |
| and just fill it in runtime | |||
| NotFound | With parrot r45108, pirado segfaults. | ||
| chromatic | How does that work with re-entrant calls, bacek_mobile? | 21:48 | |
| bacek_mobile | hmm | ||
| it will not... | 21:49 | ||
| sigh... it was bad idea... | |||
| chromatic | Not until we break out Context again.... | 21:52 | |
| cotto_work | ooc, is there a planned pcc refactor that will give up significant speed improvements? | 21:53 | |
| NotFound | Singletons are marked? | ||
| darbelo | They should be. | 21:54 | |
| WorkCoke | dokuwiki.osuosl.org/public/ganeti_m...n_schedule - parrot.org's vm is getting migrated on 3/31; supposed to be a 5-10m outage. | 21:55 | |
| NotFound | Adding Parrot_pmc_gc_register(INTERP, OPLIB_OPCODE_CACHE); it doesn't segfault, so looks like isn't marked. | ||
| darbelo | Then anything you hang off a singleton can be prematurely collected... | 21:56 | |
| chromatic | cotto_work, making CallSigs compile-time constants should do that. | ||
| NotFound | darbelo: the singleton isn't the problem, but its collectable attributes. | 21:57 | |
| dalek | kudo: eae8b29 | moritz++ | t/spectest.data: we pass some basic protoregex tests |
21:58 | |
| darbelo | NotFound: That's the "anything you hang off" I was referring to. | ||
| NotFound | darbelo: ups, didn't read that line | 21:59 | |
| darbelo | The singleton is basically immortal as it's allocated from the constant pool. But it's ATTRs are fair game for collection. | ||
| Unless we declare that all singletons must have singleton/constant ATTRs. | 22:00 | ||
| The "don't do that" method ;) | |||
| NotFound | If I add an instance of OpLib in the main sub, it doesn't segfault. So yes, looks like the problem is that the singleton isn't marked when there is no live variable pointing to it. | 22:01 | |
| chromatic | Marking it isn't going to work. | 22:02 | |
| The next GC run it's already marked, so it doesn't get marked again and doesn't get its mark called again, so any non-constants it contains won't get marked and may get collected. | |||
| NotFound | Registering the ATTR in the init function works, but I don't think is a desirable solution. | 22:04 | |
| darbelo | How about a separate singleton pool? | 22:06 | |
| NotFound | How about killing singletons? ;) | ||
| darbelo | I've suggested that in the past too. | 22:07 | |
| davidfetter | mmm...singletonz :d | ||
| dalek | rrot: r45109 | darbelo++ | branches/pcc_hackathon_6Mar10: Branch has already been merged into trunk and is no longer needed at HEAD. |
22:08 | |
| cotto_work | darbelo, I remember you had some fun with those during the last gsoc. | 22:09 | |
| darbelo | Yep, and singleton dynpmcs can still segfault parrot today. | 22:11 | |
| Or maybe not... I haven't retested after bacek's last round of gc work. | 22:12 | ||
| chromatic | It's probably still a problem | ||
| dalek | TT #1522 created by allison++: sweep-free gc | ||
| TT #1522: trac.parrot.org/parrot/ticket/1522 | |||
| darbelo | If I'm remembering it correctly, the only solution there was to move singletons out fo the constant pool. | 22:13 | |
| Or over-complicating the interpreted destruction logic, of course. | 22:14 | ||
| cotto_work | ordered destruction? | 22:15 | |
| darbelo | Yep. | ||
| cotto_work | I thought that was something we eventually wanted. | ||
| (as are ponies) | |||
|
22:16
riffraff joined
|
|||
| NotFound | Oh, wait.... OpLib isn't a singleton! | 22:16 | |
| Even worse, is my fault X-) | 22:17 | ||
| cotto_work | but that means you can fix it | ||
| NotFound | Not sure... let's see. | 22:18 | |
| darbelo | Looking at PDD 28, it sounds like NFG would add some sanity to our strings. | 22:26 | |
| chromatic | A lot. | 22:28 | |
| dalek | TT #1523 created by allison++: subroutine leave semantics/exit handlers | 22:29 | |
| TT #1523: trac.parrot.org/parrot/ticket/1523 | |||
| TT #1524 created by allison++: [RFC] model and implementation of lvalue semantics | |||
| TT #1524: trac.parrot.org/parrot/ticket/1524 | |||
| TT #1525 created by allison++: improved NCI/FFI | |||
| TT #1525: trac.parrot.org/parrot/ticket/1525 | |||
| NotFound | Looks like I was completely wrong, the singleton is marked. | 22:30 | |
| chromatic | It still can't point to non-constant PObjs. | 22:31 | |
| NotFound | I'm not sure about what is happening, but making OpLib a singleton pirado doesn't segfault. | 22:35 | |
|
22:39
mikehh joined
|
|||
| dalek | rrot: r45110 | mikehh++ | trunk/src/pmc/callcontext.pmc: fix codetest failure - unwrapped macro argument |
22:40 | |
|
22:45
kid51 joined
22:47
Whiteknight joined
|
|||
| Whiteknight | pmichaud++ (NQP efficiency "interview" on the wiki) | 22:55 | |
| dalek | rrot: r45111 | mikehh++ | trunk/src/runcore/trace.c: fix codetest failure - line length |
22:56 | |
| rrot: r45112 | mikehh++ | trunk/src/call/args.c: fix codetest failure - trailing whitespace |
|||
| rrot: r45113 | NotFound++ | trunk/src/pmc/oplib.pmc: make OpLib a singleton again |
|||
| cotto_work | Whiteknight, ? | ||
| purl | Whiteknight, is there a way to know which one, or is it a try and see thing? | ||
| cotto_work | forget Whiteknight, | ||
| purl | cotto_work: I forgot whiteknight, | ||
| Whiteknight | trac.parrot.org/parrot/wiki/WhyDoes...icientCode | 22:58 | |
| cotto_work | I felt kinda like one of the kids on Mr. Wizard. | 22:59 | |
| Whiteknight | it was a great interview | 23:00 | |
| I think pmichaud's estimate of a 4% performance improvement is a tad conservative | |||
| chromatic | Probably. | ||
| Whiteknight | for some operations I think we could be closer to 20% just by avoiding so much find_lex/store_lex nonsense | 23:01 | |
| is that PCC branch merged in yet? | 23:02 | ||
| cotto_work | it'd be instructive to profile some nqp-rx-generated pir before and after a manual conversion to remove the unnecessary find_lex/store_lex ops | ||
| Whiteknight, yes | 23:03 | ||
| chromatic++ merged it a few hours ago | |||
| Whiteknight | nice. chromatic++ | 23:04 | |
| chromatic | Now we can fix constant STRING storage in the next week. | 23:05 | |
| Whiteknight | nice | ||
| darbelo | There's still the 'Rakudo gobs all my memory' thing to solve before the release. | 23:06 | |
| Whiteknight | ah yes. I have to look into that patch again | ||
| chromatic | The real problem there is that compact_pool never expects the pool size to shrink. | 23:08 | |
| dalek | rrot-linear-algebra: fb8df75 | Whiteknight++ | ports/plumage/parrot-linear-algebra.json: add json metadata information for plumage |
23:11 | |
| Whiteknight | I think we may be getting ready to cut a PLA release | 23:12 | |
| and if I can finally get the function call semantics correct, I can cut one for Matrixy too | 23:13 | ||
| dalek | rrot: r45114 | mikehh++ | trunk/ext/Parrot-Embed/t/interp.t: fix codetest failure - perlcritic - extra =cut removed |
||
| darbelo | Whiteknight: Oh, matrixy survived the pcc branch? | 23:14 | |
| chromatic | Break compact_pool into several smaller functions and it's easier to manage. That's probably step one. | ||
| mikehh | getting post-config test failure - t/steps/gen/platform-01.t - Failed test: 5 - I am fairly sure this is due to context.h being moved | ||
| but I am not sure how to fix it - it is not obvious from looking at the test source | 23:16 | ||
| plobsing | mikehh: "Located required platform interface header" failure looks like my fault. attempting to fix. | 23:20 | |
| and by fix, I mean remove, because the tested functionality no longer exists | 23:21 | ||
| mikehh | plobsing: yes - we need to examine the pre/post-config tests - the functionality the tests were checking for has changed quite a bit recently | 23:23 | |
| plobsing | I suppose I could test that it no longer exists.... | 23:25 | |
| darbelo | plobsing: In case we accidentally re add the file? | ||
| If the feature's gone, let the test go as well. | 23:27 | ||
| plobsing | darbelo: no, to anoy the person that re-adds the file on purpose | 23:28 | |
| dalek | rrot: r45115 | plobsing++ | trunk/t/steps/gen/platform-01.t: fix config test forgotten when eliminating generation of platform_interface.h |
23:30 | |
| plobsing | hmmm... testr t/op/exceptions_23.pbc has been running for 3.5 minutes | 23:31 | |
| infinite loop? | |||
| purl | see infinite regress | ||
| Tene | infinite regress? | 23:32 | |
| purl | see infinite loop | ||
| plobsing | did anyone run fulltest on the pcc branch before it landed? | 23:33 | |
| chromatic | I didn't run it on all cores, no. | 23:34 | |
|
23:35
tetragon joined
|
|||
| mikehh | unfortunately pressure of $work has prevented me from being involved in parrot for the last week - just getting started again now | 23:42 | |
| dalek | rrot: r45116 | plobsing++ | branches/tt1015: branch takes wrong approach |
23:46 | |
| rrot: r45117 | petdance++ | trunk (3 files): adding headerizer protectors |
|||
| nopaste | "plobsing" at 67.55.2.108 pasted "infinite loop when compiled to pbc post-pcc merge" (18 lines) at nopaste.snit.ch/20042 | 23:53 | |
| plobsing | fulltest++ | ||
| chromatic | Ugh, tailcall. bacek_mobile? | 23:56 | |
| bacek_at_work | chromatic, not mobile. at_work apparently | 23:57 | |
|
23:57
patspam1 joined
|
|||