argggh, getting tired. every time I almost get the problem generically solved, Parrot throws up another "oh, you can't do that." oh well, I'll have to let it go for tonight. Need sleep, then make breakfast, send kids to school, etc. g'nite pmichaud: gnite % iblechbot has joined #parrot % IllvilJa has joined #parrot % Zaba_ has joined #parrot I'm getting occasional memory corruptions while running 'make spectest_regression' % Zaba has left Zaba!~zaba@ip102.148.adsl.wplus.ru hi all hi jonathan * moritz waves to the cheering croud % bacek_ has left bacek_!~bacek@mcas-151.usr.optusnet.com.au % mire has joined #parrot % Zaba_ has left Zaba_!~zaba@ip102.148.adsl.wplus.ru % Zaba has joined #parrot % Whiteknight has joined #parrot % Ademan has left Ademan!~dan@h-69-3-232-86.snfccasy.dynamic.covad.net % Ademan has joined #parrot r27934 | jonathan++ | mutablerakudo: : [rakudo] Huge refactor of type checking of variables, for mutables branch. We now do the type check upon assignment. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27934 Phew. I'm glad to have that bit done. % cognominal has joined #parrot % Whiteknight has left Whiteknight!~nobody@c-71-230-33-251.hsd1.pa.comcast.net % ank has left ank!~ank@ppp121-44-210-24.lns1.hba1.internode.on.net r27935 | jonathan++ | mutablerakudo: : [rakudo] Fix our variables that aren't assigned to at the point of declaration. This allows us to run Test.pm again, so the spectest damage can be seen. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27935 r27936 | jonathan++ | mutablerakudo: : [rakudo] Initialize mutables with proto-object, if that is what is named as the type. This gets my Dog $fido working again, and probably passes one of the failing spectests. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27936 % zarchne has joined #parrot bacek__> rakudo: my @r; @r.push; rakudo r27936 OUTPUT[Method 'viviself' not found for invocant of class 'PAST::Op'␤current instr.: 'parrot;PAST::Compiler;keyed' pc 6207 (src/PAST/Compiler.pir:1721)␤ looks like PAST bug... % IllvilJa has left IllvilJa!~jilves@emea-netcache1.oracle.co.uk % Whiteknight has joined #parrot % mire has left mire!~Frodo@195-169-222-85.adsl.verat.net % cognominal has left cognominal!~cognomina@auteuil.enstimac.fr % iblechbot has left iblechbot!~iblechbot@51.17-dial.augustakom.net % cognominal has joined #parrot % cognominal has left cognominal!~cognomina@auteuil.enstimac.fr % Whiteknight has left Whiteknight!~nobody@c-71-230-33-251.hsd1.pa.comcast.net % cognominal has joined #parrot % cognominal_ has joined #parrot % cognominal has left cognominal!~cognomina@194.167.199.240 % IllvilJa has joined #parrot Hrm... My build fails when I use make -j4 % ank has joined #parrot japhb: Triangle spins on OS X 10.4 (32-bit Intel) using 20080527 patch % tetragon has left tetragon!~seneca@216.126.67.44 10:41 bacek__> rakudo: my @r; @r.push; granted, PAST isn't doing the right thing, but this would end up being a runtime error anyway, since @r.push returns an Int pmichaud: Just working on trying to merge trunk into the Mutable branch. So I can see what spectest_regression fails ouch As in, what filas as a result of my changes As opposed to, things changed in spectests. Due to additions in trunk. Yes I made some *significant* changes to trunk yesterday. in particular, my @a = 1; now works. :-) Ouch is the word. I reviewd your changes and can see how to combine our work, I think. How on earth do you handle files that were added to trunk? pmichaud, what does it do? the my @a = 1; thing svn: Copyfrom-url 'https://svn.perl.org:/parrot/trunk/languages/perl6/src/classe s/Array.pir' has different repository root than 'https://svn.perl.org/parrot' If you have to handle that manually, I see what people meant about svn's merge support sucking. jonathan's url is at http://xrl.us/bk9pm % d4l3k_ has joined #parrot % iblechbot has joined #parrot % dalek has left dalek!dalek@193.200.132.135 % d4l3k_ is now known as dalek as does my %hash = (1, 2, b=>c); how are you doing the merge? I normally do svn merge -r x:head https://svn.perl.org/.... and 'svn merge' handles additions the big conflict we're likely to have is that the changes I made yesterday usurp the Perl6Array and Perl6Hash class names but yes, I don't think it'll be difficult to merge mutable with trunk you want to make sure you're merging from the same repository directory as your working directory my suggestion at this point would be to just get mutables working for Perl6Scalar pmichaud: I was going a directory at a time, just to try and keep it simpler C:\Hacking\mutable\languages\perl6\src\classes>svn merge -r27798:HEAD https://sv n.perl.org:/parrot/trunk/languages/perl6/src/classes personally, if I were doing a merge into the branch, I'd do it this way (1) copy my working directory into a backup location somewhere (2) recheck-out a new trunk (3) copy the significant files that changed from the branch into the new trunk. In this case I think it's principally mutable.pmc, perl6scalar.pmc (4) hand-merge the changes for actions.pm and guts.pm And a whole bunch of changes to actions.pm and elsewhere... ouch. how much is there "elsewhere"? I thought svn was menat to, like, help with stuff. seems to me like it should be Object.pir, guts.pir, and actions.pm Yeah, you're right actually. There is little besides those. the point of doing it this way is thatyou're not trying to merge the refactors I did yesterday in List.pir, Mapping.pir, Hash.pir, Array.pir, ...... and I think if we focus only on Perl6Scalar, we can prove that it's all going to work without breaking anything significant in Array and Hash the main change I did was to create an "infix:=" multisub which is overloaded for Array and Hash the default infix:= basically calls the old !TYPECHECKEDASSIGN and I removed !TYPECHECKEDASSIGN from actions.pm (because it's being handled by infix:=) Yeah Now the type check is done inside assign. which is basically what you've done :-) So that goes away altogether inside my branch. it's basically gone inside of mine too, except I'm using infix:= where you're using the assign opcode. (using the opcode is better -- I just didn't want to mess with vtables for this.) So you would replace the call with just an asign. Aha, OK. Ugh. This looks pretty ugly. % cognominal_ has left cognominal_!~cognomina@auteuil.enstimac.fr I did offer to do the merge. :-) ....actually I'm going to take you up on it. :-) here's what I propose to do. (more) if you're ready for us to do a test merge, I propose to create a new branch just to try merging trunk and mutablerakudo together if it works out, we merge that into trunk if not, then we simply drop the branch and you can continue on from where you are now I need to refactor parameter type checking. For now, we'll just rip that out, do the merge. And I'll sort it out afterwards. I think that delaying the merge beyond now is going to make it harder later. I agree OK, let's go with your suggestion. okay. I don't have a lot planned anyway for this morning (other than to write some blog posts, but those can wait :-) I need to post some journal thing I already wrote. and got a talk in 40 minutes or so here for the next 40 before that yeah, I'm in the same boat. I have a couple of posts already written but unposted is mutablerakudo up-to-date committed and all? (btw, I looked at your branch diffs from this morning and didn't see many conflicts in terms of merging with the stuff I did yesterday) % gryphon has joined #parrot Yes, no local diffs here Does it look along the lines of what you had in mind? pmichaud, (about PAST) it doesn't really matter. I can put this code in eval (and it really dies). so I can't implement eval_dies_ok in Test.pm r27937 | pmichaud++ | trunk: : [pct]: : * For vivibase, don't try to viviself something that can't be : viviselfed. (We probably need more work on this in general, but : this resolves the immediate issue for now.) : * From reports by bacek++ diff: http://www.parrotvm.org/svn/parrot/revision?rev=27937 bacek: > say (1..100).hash<55>; 56 pmichaud, excellent we don't do hash slices yet..... but that's a separate issue. :-) okay, let's see if we can merge mutables * bacek doing git stash; git svn rebase; git stash apply r27938 | pmichaud++ | mutamerge: : New branch to perform a test merge of jonathan++ 's mutablerakudo : branch with trunk. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27938 bacek@icebolt:~/src/parrot/languages/perl6$ cat eval.pl eval "my @r; @r.push;"; bacek@icebolt:~/src/parrot/languages/perl6$ ../../parrot perl6.pbc eval.pl No applicable methods. it dies in parrot guts now... % Zaba_ has joined #parrot Int doesn't know how to {'hi'} but it shouldn't kill whole program in 'eval'... why not? eval can throw exceptions yeek... if you want to stop the exception, use a try { ... } its slightly different from p5 :) bacek@icebolt:~/src/parrot/languages/perl6$ cat e.pl use Test; plan 1; eval_dies_ok "my @r; @r.push;", '.push should emit error.'; bacek@icebolt:~/src/parrot/languages/perl6$ ../../parrot perl6.pbc e.pl note that 'eval' in rakudo really doesn't work. also, we should be eliminating "eval_dies_ok" "bacek" at 202.7.166.182 pasted "Test.pm eval_dies_ok impl" (17 lines) at http://nopaste.snit.ch/13117 % Zaba has left Zaba!~zaba@ip102.148.adsl.wplus.ru pmichaud, hmm.. Why> ? oh, never mind, I see it in fudge me too :) but why use "eval_dies_ok" there? I think it should just be dies_ok( { my @r; @r.push } , ... ); pmichaud, it's just implementation. Not related to particular test % Whiteknight has joined #parrot ah. your eval_dies_ok impl looks good to me :-) pmichaud, :) pmichaud, btw, there is another problem with 'multi'. If I'll replace 'sub push' in src/classes/Array.pir from :multi(Perl6Array, _)' to ':multi(Perl6Array)' it will handle @a.push; so, question is - it is really should be without '_' or parrot can't handle omitted args in multi sub properly? the _ means "required argument" so it should be without '_' ok. Then you should fix Array.pir :) I'm redoing all of that, yes. But I need to work on the mutables merge first according to S29-array/push.t so that will likely be later today. pmichaud, ok. I'm trying to avoid us having to create a bunch of .sub 'foo' :multi(XYZ); .param pmc xyz; .return xyz.foo(); .end methods yeah... It's really weird... s/It's/They are/ well, it appears it can be done with a really smart exporter.... but getting the MultiSub management right is slightly tricky that's what I was working on last night before I got too tired to trust what I was writing :-) :) It's really good idea don't write code after 2AM it worked the night before last :-) I remember staying up til 3am writing some really cool code, but I don't remember now what it was. I know. It was a 'day' here :) pmichaud, question for 42 may be? pmichaud: I wrote some PIR a while back that took a method from a class (basically, the sub PMC) and (provided it was makred multi) you could just push it into a PMC for that method name in the HLL root namespace. oh, yes, I remember now. I got "my @a = 1;" to work. jonathan: yes, that's what I was doing last night. essentially MultiSub isa ResizablePMCArray Yup. but I was missing a step somewhere % mire has joined #parrot or must've been missing a step or some of the liberties that P6object is taking with methods wasn't working out also, I discovered that ns.'add_sub'(...) doesn't like MultiSub Hmm anyway, I had a version that was almost working except in one case, but then decided sleep was the better option for now. * bacek thinks that pmichaud lost 'ultimate question' :) oh, I know that question. it's something along the lines of "When will Perl 6 be finished?" Christmas! Which one not specified. :-) Q: When will Perl 6 be finished? A: 42. Though the question I get more from realistic people now, is when can we expect a first alpha release of Rakudo. that's an interesting question. I suspect it depends on when I get a chance to improve parsing speed. Yeah. I've been saying that certainly not as soon as this summer, but we might make it before the year is out. (which I'm still thinking will happen this summer) we do have to get mmd fixed http://use.perl.org/ :-) so yes, Q4 2008 seems plausible. and replace string concatenation with string array in parser... GC in parrot it really, really bad bacek: Yeah, but if the GSOC project delivers the new GC, hopefully that's not going to be an issue after the summer either. :-) * jonathan crosses his fingers. right now the big performance bottlenecks I see are jonathan, steal some code from Harmony? (1) need protoregexes and ltm (2) garbage collection (3) strings I am going to do my absolute best on that GC. * Whiteknight crosses his fingers too Whiteknight: I know, and I'm really happy to have someone working on it. :-) * bacek takes more popcorn :) % braceta has joined #parrot % Ademan has left Ademan!~dan@h-69-3-232-86.snfccasy.dynamic.covad.net ("moose".length) eval("moose".length) Method 'length' not found for invocant of class 'Perl6Str' hmm... ....what is this ".length" thing you're writing? ;-) Perl 6 has depth but no length. % braceta has left braceta!~Braceta@bl9-217-157.dsl.telepac.pt pmichaud, this is from spectest then spectest is real wrong there. (if it's expecting a .length to work) its only one test which uses eval_dies_ok okay, then. It will indeed die. :-) but why it uses eval? I don't know. some of the spectests were cargo-culted from P5's test suite without necessarily a lot of thought as to what they were doing, or how it might be different for P6 > try{ "m".lenght }; say $! Method 'lenght' not found for invocant of class 'Perl6Str' i.e., in many cases we have P6 tests being written by P5 programmers is it expected behaviour? that does what I expect, yes. hmm... Why it is 'compile-time error' instead of run-time? what you just shows is a run-time error r27939 | Whiteknight++ | gsoc_pdd09: : [gsoc_pdd09] merging to trunk r27938 diff: http://www.parrotvm.org/svn/parrot/revision?rev=27939 pmichaud, but why it wasn't caught by 'try'??? it was caught at least it appears it was caught. You then turned around and printed the error message with "say $!" pmichaud, my bad... * bacek turns to pumpkin after midnight. % cognominal has joined #parrot when is it not after midnight? ;-) % uniejo has left uniejo!~uniejo@langebro.adapt.dk midnight! midnight is 12 am right? * cizra has never understood the AM/PM system. I mean, the border cases i always have to think about 12:01 1 PM is afternoon. 12 AM is what? 12am = 00 Well, how do you say midday then? "noon" With numbers? what time is it one minute before 1pm? ank: It's nearly twenty past seven in the morning where I am. 12pm one minute before 1pm is 12:59pm exactly :D fuckity. Why is the system so sick? The next thing after 12 pm is 1 pm? think of zero instead of 12 because people have difficulty using 0-based arrays. heh. Well, I guess you have to grow up in it to really accept it. so instead of 0..11, we got stuck with 1..12 and a rotate :-) just take all of the hours and modulo 12 It's inherited code ;) % teknomunk has joined #parrot "Because there were 20 or so pepole already using it, and it would be too difficult to switch." break; % AndyA has left AndyA!~andy@82.152.157.85 bacek@icebolt:~/src/parrot/languages/perl6$ grep -r eval_dies_ok t/spec|grep -v svn t/spec/fudge:my $IS = '\\b(?:is|ok|nok|is_deeply|is_approx|isnt|like|unlike|eval_dies_ok|cmp_ok|isa_ok|use_ok|throws_ok|dies_ok|lives_ok|eval_lives_ok|pass|flunk)(?:\\b|_)'; much better. We don't need 'eval_dies_ok' actually well, someone might want to use eval_dies_ok on a string that doesn't actually parse but it is not in 'spec' some internal unittests probably you mean none of the spec tests are using it? pmichaud, exactly there may be some tests outside of the spec/ suite that use it that just haven't been migrated over to t/spec/ yet I'll take care about them :) % AndyA has joined #parrot The "compile-time" can mean that the exception throws when eval is compiling his argument. anyway 'eval_dies_ok' officially not implemented in rakudo. (for spectest) bacek@icebolt:~/src/parrot/languages/perl6$ grep -r eval_dies_ok .|grep -v svn ./t/spec/fudge:my $IS = '\\b(?:is|ok|nok|is_deeply|is_approx|isnt|like|unlike|eval_dies_ok|cmp_ok|isa_ok|use_ok|throws_ok|dies_ok|lives_ok|eval_lives_ok|pass|flunk)(?:\\b|_)'; bacek@icebolt:~/src/parrot/languages/perl6$ pmichaud, there is no 'eval_dies_ok' in rakudo and spec test at the moment :) right. But there are still quite a few tests in pugs' t/ hierarchy that aren't part of t/spec/ yet and some of those are using 'eval_dies_ok' whether they should be using 'eval_dies_ok' is a legitimate question, but there are some tests using it that could end up in t/spec/ % wknight8111 has joined #parrot % Zaba has joined #parrot % Whiteknight has left Whiteknight!~nobody@c-71-230-33-251.hsd1.pa.comcast.net pmichaud, ok, I'll save this patch somewhere. Just in case if it will be required. % Zaba_ has left Zaba_!~zaba@ip102.148.adsl.wplus.ru But there is no point to commit it right now * bacek doing svn co http://svn.pugscode.org/pugs/t... Internet in Australia are really bad... % cjfields has joined #parrot % cjfields_ has joined #parrot % cjfields_ has left cjfields_!~cjfields@cjfields.igb.uiuc.edu % cjfields_ has joined #parrot pmichaud: How's the merge going? I'm getting a weird error. Ah. Specifically? (also got distracted on this end so just really got into it) I've seen plenty of weird errors while working on this. :-) (details in a sec) if I start from trunk and copy mutable_pmc.template from mutablerakudo into my branch, but make no other changes, then I don't get a working perl6.pbc even though nothing else in rakudo is using Mutable (as far as I know) Oh. That is...odd.. I'm rebuilding just to make sure. oh and I get a very strange error. C errors? % cjfields has left cjfields!~cjfields@newrad.igb.uiuc.edu no, Null PMC in get_string() somewhere in the P6object guts. Ah. OK, that is weird. pm: are you sure you had a working perl6.pbc to begin with ? :) PerlJam: actually, yes. I did spectest_regression on my branch before anything else. % teknomunk has left teknomunk!~teknomunk@r74-195-239-111.stl1cmta01.stwrok.ok.dh.suddenlink.net just to make sure I had a known good starting point. let's make sure I can build the mutablerakudo branch also jonathan: did you have to make any changes outside of the languages/perl6/ directory? (e.g., to parrot core) I don't *think* so. Let me check. doesn't look like it. my mutablerakudo branch builds okay. I don't remember doing so. OK Hmm Have you tried updating the entire contents of the pmc directory (at least, the ones I added/changed) together? Also, the makefile. the only file that significantly changed was mutable_pmc.template * bacek warned about merging in svn... I'm doing the merge by hand -- it's not a an svn issue in this case I wonder if anything changed in Parrot in the meantime. I'd not think so, though. yes, it's really kinda weird. What's the branch called? mutamerge but I haven't committed anything new to it yet. Let me grab it and see if I can reproduce. ...never quote that last sentence out of context... ("Speakers so loud they.... ") (don't know why that just popped in my head.) oh.... maybe I need to copy build/gen_mutable_pmc.pl also Ah. * bacek always use two step merge in svn: trunk->branch, branch->trunk Yes, I maybe fixed things in there. yes, those are different. ah, that was it. okay, I'll commit that. % cotto-work has joined #parrot now let's see what's in Perl6Scalar ok r27940 | pmichaud++ | mutamerge: : [mutamerge]: : First, grab the new Mutable PMC from mutablerakudo branch. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27940 getting myself a copy of the branch built so I can help if needed. Perl6Scalar simply extends Mutable. That's good. We might not even need it as a PMC, but could instead do that in PIR. Speeeeeeed. ;-) Array and Hash are, I guess, easier done in PIR though. yes, but even Scalar is going to have to be isa(Perl6Object) True we'll still get the same speed Maybe. well, we do get the ProxyPMC indirection, yes. Anyway, we shouldn't really worry about that too much yet. mind if I do Perl6Scalar in PIR to start? it'll be very short -- just a class registration Sure since there are no significant methods to speak of Though actually I think we need to move the type checking logic in Mutable now to be in Scalar. Because types on arrays are on the elements. it should be basically the same, in principle (more) the "type" always refers to the types of the contents Yeah, but you set the contents of an array with keyed vtables, not assign. except there is no assign_keyed vtable (although I've asked about getting one) Ah. Hm. set_* is for binding, not assignment. We shouldn't muck with that. True. I've asked about having keyed variants of assign, but allison didn't seem too keen on the idea. I think it's a key feature missing from parrot the 'copy' opcode is just a way to work around it. what we'll end up with instead is that every element of an array will have a Perl6Scalar in it. which means we've doubled the number of gc-able items. Yeah. I hate that. But it gets the right semantics. sounds like perl5 but we could do better with an assign_keyed Yeah, agree. we'd need int variant of it too, I guess. yes. for now I think I'm going to continue to let array elements work as they do, though. Though the int hack maybe ain't going to work for us long term. okay, time for scalar. multi method postcirfumfix:<[]> MyWeirdArray(Complex $key) { ... } But happily we'll not worry about this, for a while yet. :-) pmichaud: what do you think about using dynamic ops for assign_keyed? I think they should be core. think of dynops as a way to make your point rather than going for the whole shebang without having any data to back it up Right. If we do them right in dynops, we can show they're needed for core. then I don't have a problem with it. :-) It's not hard to move them there. yep, easy to move dynops to core ops Plus they seem to work pretty portably-ish. I know they work on Win32, because I used them in .Net. the thing is, in order for assign_keyed to be useful it has to be supported in PCT which basically means that anything using PCT or PGE would need them. which kinda defeats the purpose of having them as dynops :-) if it was just for Rakudo, I could see it. why can't pct have dynops? well, it *can*... but I've heard that dynops are a little "evil", and it's hard to imagine us doing much on Parrot w/o PCT (from an HLL perspective) Sounds, like a good way to make a point. ;-) anyway, that's something to do for later I guess "I did these dynops but dynops suck and now PCT is using them. I can haz core?" Of course, it really wants vtable methods. Not just the matching ops. correct. oh, come to think of it, we probably *could* make it work in rakudo with the way things are set up now, without having to do it in PCT anyway, I'm getting off-track of my task. * jonathan cracks the merge whip in pm's direction oh. (nm.) assign handles all of the typecheck stuff now? yES See assign vtable method in mutable gREAT! Caps lock. We fails it. r27941 | pmichaud++ | mutamerge: : [mutamerge]: : * Add a Perl6Scalar class, with associated 'infix:=' method. : * We aren't using this yet -- just defining it for the moment. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27941 % cognominal has left cognominal!~cognomina@auteuil.enstimac.fr % cosimo has left cosimo!~cosimo@pat-tdc.opera.com % cognominal has joined #parrot Are there any relatively simple things that need doing for rakudo? (I'll have a couple of hours to play once I put the kids down for a nap) earlier bacek posted some spectests that supposedly can be added to spectest_regression % Theory has joined #parrot PerlJam: tools/update_passing_test_data.pl needs work specifically, it needs to be made cross-platform, and one more thing... it should accept two targets, "full" and the "subset", so we can discover which files from "full" can be moved to "subset" because they're passing. right now it works *only* for spectest and spectest_regression i'd like it to work for spectest and localtest, spectest_regression and localtest, x and y % gryphon has left gryphon!~gryphon@dsl-209-221-185-54.zipcon.net % gryphon has joined #parrot getting an odd segfault. r27942 | jonathan++ | trunk: : [rakudo] Fix to make loop { ... } work again (that is, when you don't supply a clause in brackets). Not quite sure why we had to do this fix - it may be a bug in NQP or PGE. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27942 sub add_firsts(@a, @b) { say @a[0] + @b[0] } add_firsts(<1 2 3>, <4 5 6>) am I rihgt in thinking this should give 5? yes but I haven't worked on array parameters yet. get_pmc_keyed_str() not implemented in class 'ResizablePMCArray' is probably not the righ thing for it to give then :-) ah, OK looks like we're leaving here now back online later, probably...maybe... ;-) okay. I'll need a break soon also. I'm still working on the merge. I'll make frequent commits, though. % cognominal has left cognominal!~cognomina@auteuil.enstimac.fr cool pmichaud++ # saving me from svn horrors pmichaud++ #sneaky way to review jonathan++'s code if we do assign $P0, $P1 and both $P0 and $P1 are Perl6Scalars is this causing $P1 to become the value attr of $P0 ? (i.e., $P0 delegates to $P1 which delegates to ... ) r27943 | pmichaud++ | mutamerge: : [mutamerge]: : * First cut at merging actions.pm. This breaks things a bit, as I'm : now getting an odd segfault when performing "does" on a Perl6Scalar : (which happens quite a bit due to list context). diff: http://www.parrotvm.org/svn/parrot/revision?rev=27943 % braceta has joined #parrot % davidfetter has left davidfetter!~davidfett@start.fetter.org r27944 | Whiteknight++ | gsoc_pdd09: : [gsoc_pdd09] implemented basic pool allocators by borrowing heavily from GC_GMS. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27944 % barney has joined #parrot % ejs has left ejs!~ejs@51-244-124-91.pool.ukrtel.net % ejs has joined #parrot r27945 | pmichaud++ | mutamerge: : [mutamerge]: : * Okay, using Perl6Scalar as a subclass of "Mutable Any" didn't : work out so well - kept getting segmentation fault on : C. So, this version uses a Perl6Scalar PMC, : which has the disadvantage of not being a subclass of Any. : All but one of the spectests passes. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27945 msg tetragon Did you try the latest patch on the OpenGL ticket? It's dated 2008-05-28, not -27 as you mentioned earlier .... Message for tetragon stored. % jhorwitz has joined #parrot % AndyA has left AndyA!~andy@82.152.157.85 % AndyA has joined #parrot hm, seeing this in a perl6 handler run from mod_parrot: Method 'split' not found for invocant of class 'Perl6Str' analogous code works outside of mod_parrot file a bug with the mod_parrot author :P * jhorwitz takes a swing at particle but can't determine his position. ;-) so you *can* determine his velocity? or spin so does that even make sense? split is most certainly a method of the Perl6Str class... % cjfields_ has left cjfields_!~cjfields@cjfields.igb.uiuc.edu i need to walk around, i'm getting a headache. i'll help when i return & % ank has left ank!~ank@ppp121-44-210-24.lns1.hba1.internode.on.net % kdc has joined #parrot % Zaba_ has joined #parrot % Zaba has left Zaba!~zaba@ip102.148.adsl.wplus.ru % barney has left barney!~bernhard@dslb-084-058-151-212.pools.arcor-ip.net % Ivatar has joined #parrot % cjfields has joined #parrot sweet, cached mod_perl6 registry scripts work now. jhorwitz++ pmichaud: see my 'split' question from before? I did. I don't really know what's up with that. I'd probably need some code to play with to find it. yeah, i don't even know where to start for that... or a test case that exhibits the bug. that i have. but only in mod_parrot, so it's kinda awkward to debug I'm seeing a few oddities like that here and there. I suspect something odd in mro or mmd i'd believe it what exactly is the purpose of the set_pmc vtable method? % braceta has left braceta!~Braceta@81.193.53.122 assign $P0, $P0 # very bad for Mutable. % braceta has joined #parrot I'm thinking I'd like to move mutable.pmc into parrot core % kdc has left kdc!~calbert@ip68-100-47-41.dc.dc.cox.net % braceta has left braceta!~Braceta@81.193.50.239 % braceta has joined #parrot % Zaba has joined #parrot % donaldh has joined #parrot % Zaba_ has left Zaba_!~zaba@ip102.148.adsl.wplus.ru % Ademan has joined #parrot how can I check if a PMC is of type Mutable without using vtable_isa ? r27946 | pmichaud++ | mutamerge: : [mutamerge]: : * Uninitialized values should be Failure, not Undef. : * Add some comments to Scalar.pir . diff: http://www.parrotvm.org/svn/parrot/revision?rev=27946 % AndyA has left AndyA!~andy@82.152.157.85 % AndyA has joined #parrot How might I specify out parameters to dlfunc ? Are they supported? e.g. int sqlite3_open( const char *filename, /* Database filename (UTF-8) */ sqlite3 **ppDb /* OUT: SQLite db handle */ ); % mire has left mire!~Frodo@195-169-222-85.adsl.verat.net % mire has joined #parrot =item C Compares two Parrot strings, performing type and encoding conversions if necessary. Note that this function returns 0 if the strings are equal, and non-zero otherwise. necessary is probably a very strong word. it has been said that otherwise is cacheble =cut * pmichaud boggles. forget necessary pmichaud: I forgot necessary forget otherwise pmichaud: I forgot otherwise % jjore is now known as zz_jjore % zz_jjore is now known as jjore % Auzon has left Auzon!~ak9@24-171-76-148.dhcp.mtvr.il.charter.com pmichaud: were you answering your own question? no, I'm just seriously bothered by a function called "string_equal" that returns false when the strings are equal. :-| I think I'm on the right track for figuring out my earlier question, although I don't like it. :-) (I don't like the answer, that is.) pmichaud: must have been written by somenone that thinks that strcmp was written by God. heh. no worries. I was pretty sure you weren't answering my question. or something like that. donaldh: I don't have an answer to your question, sorry. Budha, maybe. nci isn't my thing. (yet) it doesn't bother me that strcmp == 0 for equal strings, I understand that. I suspect the answer is not-supported but perpetuating that meme into a function called "string_equal" is just too much. however, apparently it's been that way since the earliest days of Parrot. so the code is littered with lots of if (string_equal(a, b) == 0) .... yuck which, if I just read it normally, seems to be asking if a and b are unequal pmichaud: on the other side, we have the macro STREQ whose only work is to convert the result of strcmp to a logic value. that doesn't bother me either. Don't bother, just makes me smile. I don't like it when people write if (!strcmp(a,b)) ... so, seeing STREQ seems like a reasonable approach although maybe we also need STRNE, STRLE, STRLT, STRGE, STRGT :_P or a better language? Agree, but people with that type of reasoning usually does not write the function string_equal we have. ahem By the way, we have a lot of string_to_cstring and string_from_cstring conversions. A lot of them probably can be avoided. yes, those bug me also. But I'm less certain how to avoid them :-) pmichaud: A way I was looking at this moment can be use STRING * instead od char * in some mmd tables. oooh, that seems.... smart Problem is that predefined table is an static array. the more I look at the code, the more it scares me. :-| okay, I'm less scared now. r27947 | jonathan++ | trunk: : [rakudo] Fix .+ and .*; they got missed while getting the new metamodel in place. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27947 pmichaud: Just around for a moment - how's it going with the merge? assign $P0, $P0 seems to be an issue also, assigning a Mutable to a Mutable makes for a long chain of Mutables % cognominal has joined #parrot as far as the merge itself is going -- that seems to be okay I don' understand what Parrot_mmd_rebuild_table does, and why it lies about his arguments. I have spectest_regression down to one failing test If C is negative all classes are rebuilt. .... UNUSED(type); pmichaud: Do we ever directly assign a string? I thought we'd always make an instance of Perl6Str there Perl6Str and Str both *there's Ah, the long chain thing... That can be fixed. yes, I'm working on that now However, bit tricky to see if we really have a mutable. I think I need to overload VTABLE_isa so that Mutables report themselves as Mutables (as well as whatever type their contents have) Hmmm so I'm trying to figure out how to do that. (how to check if we have a Mutable) Well, need to add a method in the template if you plan to do that. (I know how to forward to the contents) ok I can fix that, probably. anyway, since I'm down to only one failing spectest_regression I'm thinking of merging it all into trunk What fails? fails are rare and then we can fix the one regression test. It has to do with class/object attributes t/spec/S12-class/parent_attribute 1 256 3 6 200.00% 1-3 parent attributes one? Oh, geck, I thought I'd fixed that. oh, you probably did -- I probably just didn't port over the fix. OK I was pretty selective about what I ported and didn't port. Object.pir? right, haven't done much with Object.pir yet (if anything) ok, fix would likely be in there right. try merging it and see really nice work on the other spec test fixes! I wasn't able to make Mutable into a subclass of Any, either. actually, it was simple. OK I had very few failures here after I gave it to you for merging. once I figured out that Mutable as subclass of Any wasn't working and left Perl6Scalar as a PMC, everything "just worked" OK We can override isa :-) right now it's (1) override isa and (2) update assign to follow a chain of Mutables until we get to the actual value (and doing #2 seems to require #1) okay, I'll look at Object.pir next. Hmm...I think I'm meant to go socialize now. To override isa, need to do it in mutable_pmc.template. % gryphon has left gryphon!~gryphon@dsl-209-221-185-54.zipcon.net right, had figured that part out. That seems pretty straightforward with the way you have it set up. Just add overrides for VTABLE INTVAL isa_pmc(PMC* _class) { and VTABLE INTVAL isa(STRING* _class) { I'm also trying to decide which is more efficient to use The first one. the first one is, like, ideal Because if we cache somewhere in a static, the PMCProxy for Mutable Then it can we a walk mro doing pointer comparrisions. :-) well, we could... but I'm not sure that's what it's doing. :-) Which is probably cheaper than messing with strings. a lot of the isa_pmc() methods seem to convert to strings and then do comparisons Well, do this one better. ;-) which feels really wrong to me. Yeah, me too. a n y w a y Ok, gotta go EXCUSE ME, I HAVE TO GO WASH MY COMPUTER Object.pir, here I come Completely unrelated to the topic of this channel: Big Buck Bunny is now released - http://www.bigbuckbunny.org/index.php/download/ +.sub '!DOTYEPCHECK' shouldn't that be "!DOTYPECHECK shouldn't that be "!DOTYPECHECK" ? ;-) at least it's consistently oddly spelled :-) % gryphon has joined #parrot % gryphon has left gryphon!~gryphon@dsl-209-221-185-54.zipcon.net Ah. (NCI related) Should have thought of that sooner. Somenone has at hand some mmd related bug? % Auzon has joined #parrot The up-to-date list of NCI function signature types is in srd/call_list.txt the PDD is incomplete. donaldh: too true. Maybe I can fix that in a future patch. I just need to get the *current* one accepted. japhp: PDD patch? No, OpenGL patch ... it affects call_list, because OpenGL has ~ 270 unique signatures. Meaning, once my OpenGL patch goes in (as soon as signed off by one each of Mac OS X and Win32), then perhaps my sights should turn to the PDD. Is not yet acceepted the "make clean ; make" bug patch? NotFound: Yeah, the fix for that is included in my OpenGL patch. separate patches == more likely to be applied :-) (at least, the part about call_list.txt being missing after a make clean) pmichaud: I actually thought someone else was doing that, That's the part that bugs me. but since no one does and it was affecting my users, I included it in mine. ahhh well, you have a commit bit. If you're comfortable with the "make clean ; make" bug patch, go ahead and apply it. If anyone complains, you can blame me. No, the problem is that if affects everyone that uses make clean. okay, NotFound. purl: forget the problem NotFound: I forgot problem (I'd do it but my mind is focused elsewhere at the moment ;-) NotFound: I know that. I meant -- the people trying to test my OpenGL patch were tripping over this. In order to get my OpenGL patch tested, I had to include that fix. And I did the OpenGL patch before I got the commit rights. This is all a "transitioning from pre-commitbit to post-commitbit world" pains indeed. japhb: I know, but please don't forget the issue. % gryphon has joined #parrot Of course, if either of you has Win32 or Mac OS X, test my patch, and perhaps I can commit later today. <-- Linux (I'm under strict orders not to commit patches that affect the config system without those signoffs) can you commit the 'make clean; make' part? or does that need testing under different OS's also? Send me a Mac and I'll test it ;) pmichaud: sure. Let me get my son a snack, and then I'll break it out. Send me a Win32 box and I'll convert it to Kubuntu. :-) pmichaud: it's a makefile fix. Depends on how you define "config system", but I'll be liberal here and blame it on you. ;-) exactly. pmichaud: Before or after doing the test? I have a Win32 (vista) box here. can I help? message jonathan we can't use CONST_STRING in mutable.pmc because it's not built at the same time as Parrot. (IIUC, all of the CONST_STRING values get collected into all_cstring.str as part of building Parrot) Message for jonathan stored. bak donaldh: If you test my OpenGL patch, you can be counted as the Win32 test. What do I need? I think tetragon tested my patch on Mac OS X last night, but he reported the wrong patch version, so I have to reconfirm that OS #52976 is still valid? donaldh: OpenGL and GLUT. The required bits are specified in config/auto/opengl.pm in the patch CRAP. I know why tetragon tested with the wrong patch ... someone decided to edit headers in the thread, and we didn't continue CC'ing RT Okay, where do I grab the patch? OK, I'll have to resend that, just a sec. donaldh: give me a sec (edit headers) sometimes that happens if someone receives multiple copies of a message and chooses to reply to the wrong one pmichaud: I get multiple copies of just about every message, and yes, I have to be careful about the reply. It's quite annoying. One of those things computers are supposed to get right *for us* donaldh: OK, it's now properly attached to the RT. Go to http://rt.perl.org/rt3/Ticket/Display.html?id=54868 and select the patch named "parrot-opengl-2008-05-28.patch" OK, must backlog for a moment and see if I missed anything japhb: what format is the patch? donaldh: I believe it was from 'git diff remotes/trunk' -- so in git "enhanced unified" format I'm told it will apply for SVN users. japhb: with what command/ Um ... 'cd parrot-root; patch -p1 < parrot-opengl-2008-05-28.patch' IIRC donaldh: Which compiler environment are you using? MSVC, MinGW, or cygwin? cygwin Mind if I add you to purl's "parrot platforms" list? sure parrot platforms? parrot platforms is Win32/MSVC: particle, Ron; Win32/Cygwin: Limbic_Region, donaldh (Vista); Win32/MinGW: Limbic_Region; Mac OS X: kid51, tetragon (intel/32-bit/10.4), DietCoke (intel/10.4); Debian Linux/i386: japhb; AIX: paco japhb: what tests? http://dev.catalyst.perl.org/wiki/Testing donaldh: ./parrot examples/opengl/triangle.pir -- does the triangle spin? donaldh: this assumes, of course, that you have the SDK and GLUT installed ... (And you'll need to make realclean and reconfigure once you have the SDK and GLUT in place, so that the OpenGL headers can be parsed by Configure) ah, okay. sorry I don't have GLUT yet. donaldh: You can either use Nate Robins' "GLUT for Win32" (quite old, known to work for MSVC, untested on cygwin or MinGW) or freeglut (up to date, and I think works on at least cygwin) thanks (Please record the list of packages you need to install, for cygwin, BTW, I want to get the docs filled out) E,TOO,MANY,COMMAS, I think thats: E,TOO,MANY,C,O,M,M,A,S,,,,,, % particle has left particle!~particle@c-98-232-7-104.hsd1.wa.comcast.net :D ./configure (we'll see) % particle has joined #parrot % iblechbot has left iblechbot!~iblechbot@ppp-62-216-205-112.dynamic.mnet-online.de 'make clean' fix for call_list.txt extracted ... testing ... % cjfields has left cjfields!~cjfields@newrad.igb.uiuc.edu % AndyAway has left AndyAway!~AndyL@host3130.follett.com r27948 | pmichaud++ | mutamerge: : [mutamerge]: More updates : * Mutable assign now dereferences any source mutables first. : * Mutables return true for "isa Mutable" : * Cleaned up type checking : * Cleand up default infix:= for non-containers. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27948 japhb: leave this with me. I need to sleep. .oO( Why is a target like 'make coretest' trying to test the library? ) donaldh: huh? (What do you mean by "leave this with me"?) coretest is all of the tests excluding configuration subsystems and documentation pmichaud: I understand that. I was questioning whether that was what it *should* be. :-) japhb: testing the patch. I'm installing GLUT, rebuilding parrot, etc. and need to sleep first. basically, "does everything that is supposed to run still run?" ah, gotcha sleep well, donaldh thanks % donaldh has left donaldh!~chatzilla@host213-123-171-12.in-addr.btopenworld.com r27949 | japhb++ | trunk: : [Makefiles] Fix call_list.txt 'make clean; make' failure diff: http://www.parrotvm.org/svn/parrot/revision?rev=27949 NotFound: You should be happier now. :-) japhb++ japhb++ # happier. * japhb regenerates OpenGL patch to no longer include that fix ... % tetragon has joined #parrot % rdice has joined #parrot msg tetragon OK, make that the 2008-05-30 patch -- I had to regenerate it. Message for tetragon stored. Where are the PIO printf formats documented? haha I was about to get around to -30 Just have to deal with a database first % kid51 has joined #parrot % maxs42 has joined #parrot Looks like they are documented only in the comments of the Parrot_sprintf_format function. % wknight8111 has left wknight8111!~nobody@c-71-230-33-251.hsd1.pa.comcast.net % gryphon has left gryphon!~gryphon@dsl-209-221-185-54.zipcon.net % maxs42 has left maxs42!maxschober@80.108.81.193 % silug has left silug!~steve@ppp-70-225-32-179.dsl.covlil.ameritech.net % jhorwitz has left jhorwitz!~chatzilla@96.245.16.45 japhb: 10.5 on PPC still spins with 20080530 EXCELLENT tetragon: do you have any other OS X variants? I'm feeding the bot Just 10.5 on 32-bit ppc and 10.4 on 32-bit intel great, thank you parrot platforms? parrot platforms is, like, Win32/MSVC: particle, Ron; Win32/Cygwin: Limbic_Region, donaldh (Vista); Win32/MinGW: Limbic_Region; Mac OS X: kid51, tetragon (intel/32-bit/10.4, PPC/32-bit/10.5), DietCoke (intel/10.4); Debian Linux/i386: japhb; AIX: paco OK, so we just need a Win32 confirm pmichaud: Uh, typo + copy paste = consistent oddness. :-) Need to sleep now...talks tomorrow. Nice work on getting mutables stuff in shape. If you didn't fix parent_attributes, feel free to go ahead and merge, and I fix that later. thanks. I'm having trouble getting method calls to work, though. Oh? It keeps thinking "0 arguments to new" Weird Surely we'd be seeing lots more failures? I think 'new' isn't called very often it's only when we have $scalar.new(...args...) Hmm oh when it's called on a varaible rather than a proto? yes. ok I've had too much chatruesse and am too tired to debug that now. I can take a look tomorrow. % contingencyplan has left contingencyplan!~contingen@cpe-76-186-27-146.tx.res.rr.com okay. for some reason callmethodcc is losing the arguments er, callmethodcc on a Perl6Scalar is losing the arguments I'm wondering if it's because Perl6Scalar is a PMC that is reporting itself as an Object Hmmm Not sure. "pmichaud" at 76.183.97.54 pasted "trace of $u .= new( :x(3) )" (23 lines) at http://nopaste.snit.ch/13120 Well, the flags are not imitated on the scalar, if that's what you mean. by the point of offset 52 we can see that P9 has been created and isa Foo. (But it's a "PMC" Foo) (as opposed to an Object(Foo) ) at offset 64 we can see the arguments via set_args then at offset 72 we call 'new' on P9 (still a "Foo") but by the time we reach the method, the arguments have been lost. % bacek has left bacek!~bacek@123-243-38-218.tpgi.com.au gdb shows that "current_args" is indeed NULL when we get back from vtable_find_method That is...odd. so that means current_args was null going into vtable_find_method Now I'm wondering, if some call is happening between this that somehow clobbers the real call? But I can't think where. OK, I need sleep, I have 2 hours 40 minutes of talks to deliver tomorrow okay, no problem. I'll keep looking for it. If you don't figure it out tonight, I'll get a debugger on it tomorrow and do some tracing. I may see if I can figure out why Perl6Scalar wasn't working as a subclass of Any it was *mostly* working... just would segfault on "does 'array'" Ah. Odd yes. everything else seemed to be okay, including "does 'ArrayRef'" I was fighting Parrot segfaults along the way of implemtning this. okay, get some sleep. best wishes on the talks. If you were wondering why typecheck function takes a result PMC as a parameter rather than getting it as a return value - that was working around Parrot bugs I didn't have the energy to track down yet. OK, thanks....night. % teknomunk has joined #parrot say hello to everyone for me -- wish I could be there. will try and remember to do that :-) You've been mentioned here. :-) (typecheck function) I was thinking of just doing a standard method call Good luck! i think good luck is all I can say. Neither the Parrot_call_meth_fromc_args way nor the Parrot_PCCINVOKE way work. :-( any idea why? or is this just a known "don't try it, it does't work"? Parrot_PCCINVOKE - yes, it doesn't handle the case when you have a Sub PMC rather than an NCI. I have a good idea how to fix that, but was more interested in getting the mutables stuff sorted. okay. The other way - no, I don't know why that one is broken and it segfaulted in a nasty place. It wasn't obvious what was wrong at all. Something in inter_call.c, IIRC. okay, that gives me stuff to work with. OK Sleep time, anyway night % Ivatar has left Ivatar!~graham@tu055.demon.co.uk r27950 | pmichaud++ | mutamerge: : [mutamerge]: : * Oops, gotta pass the properties to the Perl6Scalar. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27950 japhb: triangle spins in a c++ build. % cognominal has left cognominal!~cognomina@AToulouse-152-1-91-136.w86-201.abo.wanadoo.fr % cognominal has joined #parrot % cognominal has left cognominal!~cognomina@AToulouse-152-1-91-136.w86-201.abo.wanadoo.fr % AndyA has left AndyA!~andy@82.152.157.85 % NotFound has left NotFound!~julian@50.Red-213-96-228.staticIP.rima-tde.net % Zaba_ has joined #parrot % kid51 has left kid51!~jkeen@pool-70-107-13-195.ny325.east.verizon.net % AndyA has joined #parrot % braceta has left braceta!~Braceta@bl9-222-140.dsl.telepac.pt % gmansi has left gmansi!~gmansi@190.55.35.246 % rdice has left rdice!~richarddi@CPE001ff33cb98b-CM00159a01d44c.cpe.net.cable.rogers.com % Zaba has left Zaba!~zaba@ip102.148.adsl.wplus.ru % cognominal has joined #parrot % mire has left mire!~Frodo@195-169-222-85.adsl.verat.net % jjore is now known as zz_jjore % zz_jjore is now known as jjore % bacek has joined #parrot morning... % rdice has joined #parrot msg NotFound Glad to hear triangle spins in c++ build! What platform/compiler are you using? Message for notfound stored. % AndyA has left AndyA!~andy@82.152.157.85 % root has joined #parrot % AndyA has joined #parrot % Zaba has joined #parrot % Zaba_ has left Zaba_!~zaba@ip102.148.adsl.wplus.ru % Whiteknight has joined #parrot % cognominal has left cognominal!~cognomina@AToulouse-152-1-91-136.w86-201.abo.wanadoo.fr % ank has joined #parrot % cognominal has joined #parrot % Zaba_ has joined #parrot purl message? Perhaps you mean "messages", or "message nickname blah blah", or "messages help", or.. eh, just forget it. message ewilhelm Hey eric, I don't think the psoc aggregator is working: it hasn't updated since the 25th, and I know i've been blogging almost daily since then. Message for ewilhelm stored. % Zaba has left Zaba!~zaba@ip102.148.adsl.wplus.ru % braceta has joined #parrot % root is now known as tiglionabbit % Whiteknight has left Whiteknight!~Whiteknig@c-71-230-33-251.hsd1.pa.comcast.net % kid51 has joined #parrot % Zaba has joined #parrot kid51: Have you seen #55074? It's related to an OS X configuration issue (namely that not everyone uses darwinports). % Zaba_ has left Zaba_!~zaba@ip102.148.adsl.wplus.ru % rdice has left rdice!~richarddi@CPE001ff33cb98b-CM00159a01d44c.cpe.net.cable.rogers.com % pmichaud has left pmichaud!pmichaud@193.200.132.135 % pmichaud has joined #parrot tetragon: Yes, I'm preparing it for application now. r27951 | jkeenan++ | codetests: : Implementing suggestion by pmichaud in : http://rt.perl.org/rt3/Ticket/Display.html?id=54992: --code option to : t/harness to run file metadata and basic coding standards tests, rather than : separate script. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27951 kid51++ r27952 | pmichaud++ | mutamerge: : [mutamerge]: : * Fix up VTABLE_isa and VTABLE_does for Mutable PMCs. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27952 kid51: What OS X variants (CPU/bits/version) do you have? I'm feeding the bot. % davidfetter has joined #parrot % Theory has left Theory!~Theory@c-24-21-175-208.hsd1.mn.comcast.net 10.4 ppc I take it you mean what type of Mac I have myself? ... or do you mean the darwin variants we need to test particular RTs? ... such as http://rt.perl.org/rt3/Ticket/Display.html?id=52214 purl nopaste? well, nopaste is at http://nopaste.snit.ch/ (ask TonyC for new channels) or http://rafb.net/paste or http://paste.husk.org/ or http://poundperl.pastebin.com/ or http://paste.scsys.co.uk/ or don't bother me while I'm eating or App::Nopaste or tools/dev/nopaste.pl "kid51" at 70.107.13.195 pasted "My Mac" (2 lines) at http://nopaste.snit.ch/13121 My i386: http://pgbuildfarm.org/cgi-bin/show_log.pl?nm=jackal&dt=2008-05-30%2012:21:03 tetragon's url is at http://xrl.us/bmauq "tetragon" at 69.196.141.26 pasted "My PPC" (12 lines) at http://nopaste.snit.ch/13122 % kid51 has left kid51!~jkeen@pool-70-107-13-195.ny325.east.verizon.net % kid51 has joined #parrot r27953 | jkeenan++ | trunk: : Applying patch submitted by Seneca Cunningham in : http://rt.perl.org/rt3/Ticket/Display.html?id=55074: directory variable truth : check in handle_darwin_for_macports(). Add tests to : t/steps/auto_readline-01.t to cover this condition. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27953 % Zaba has left Zaba!~zaba@ip102.148.adsl.wplus.ru % Zaba has joined #parrot % Theory has joined #parrot % kid51 has left kid51!~jkeen@68.237.17.148 % davidfetter has left davidfetter!~chatzilla@start.fetter.org pdd09? % cognominal_ has joined #parrot stupid bot... it has been said that stupid bot is http://www.terrybisson.com/meat.html pdd? it has been said that pdd is the Perl Developer's Dictionary, clintp's latest project and at http://www.amazon.com/exec/obidos/ASIN/0672320673 or Parrot Design Document, found in docs/pdds % cognominal has left cognominal!~cognomina@AToulouse-152-1-91-136.w86-201.abo.wanadoo.fr % braceta has left braceta!~Braceta@bl9-222-140.dsl.telepac.pt % tetragon has left tetragon!~seneca@69-196-141-26.dsl.teksavvy.com % Zaba_ has joined #parrot % Zaba has left Zaba!~zaba@ip102.148.adsl.wplus.ru % tetragon has joined #parrot % davidfetter has joined #parrot % Theory has left Theory!~Theory@c-24-21-175-208.hsd1.mn.comcast.net particle, ping nm % Zaba has joined #parrot % Zaba_ has left Zaba_!~zaba@ip102.148.adsl.wplus.ru mke? r27954 | pmichaud++ | mutamerge: : [mutamerge]: : * Keep getprop, setprop, etc. properties with the mutable itself. diff: http://www.parrotvm.org/svn/parrot/revision?rev=27954 r27955 | pmichaud++ | mutamerge: : [mutamerge]: : * Clean up some variable, trait, and type handling in actions.pm . diff: http://www.parrotvm.org/svn/parrot/revision?rev=27955 % bigal has joined #parrot pmichaud, why latest commit in branch? I'm working on merging jonathan++ 's mutables work into trunk. But I'm doing the merge in a branch in case it doesn't work out. ok morning all afternoon, jonathan