Camelia, the Perl 6 bug

IRC log for #parrot, 2008-07-15

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:06 kid51 particle:   Do you have any thoughts re http://rt.perl.org/rt3/Tic​ket/Display.html?id=56928 ?
00:09 AndyA joined #parrot
00:11 jonathan pmichaud: Guess you ain't. :-) But /msg me and let me know what day works best for Rakudo day this week; Wednesday is maybe best for me, but Thu/Fri are do-able too. But on Thursday evening we have Bratislava.pm tech/social meet, so I'd have less hacking time that day...also, note anything you'd like to see my time spent on. kplzthnxbai.
00:15 dalek r29448 | jkeenan++ | parallel:
00:15 dalek : Consolidate multiple test files per configuration step into a single file.
00:15 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29448
00:27 dalek r29449 | Whiteknight++ | gsoc_pdd09:
00:27 dalek : [gsoc_pdd09] remove some cruft, gross over-simplifications on the sweep code and we're still getting the same problem with a prematurely swept pmc
00:27 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29449
00:55 dalek joined #parrot
00:59 teknomunk joined #parrot
01:13 DietCoke joined #parrot
01:24 dalek r29450 | coke++ | trunk:
01:24 dalek : [codingstd] add an RT to track issues related to un-todo'ing this policy
01:24 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29450
01:24 dalek r29451 | jkeenan++ | parallel:
01:24 dalek : Consolidate multiple test files per configuration step into a single file.
01:24 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29451
01:31 dalek r29452 | jkeenan++ | parallel:
01:31 dalek : Consolidate multiple test files per configuration step into a single file.
01:31 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29452
01:33 dalek r29453 | jkeenan++ | noautopack:
01:33 dalek : Creating noautopack in https://svn.perl.org/parrot/branches
01:33 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29453
01:33 dalek r29454 | jkeenan++ | noautopack-29452:
01:33 dalek : Tagging trunk at r29452 so that the noautopack can later be synched to it.
01:33 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29454
01:36 daxelrod joined #parrot
01:39 Zaba joined #parrot
01:40 dalek r29455 | jkeenan++ | noautopack:
01:40 dalek : Remove config step auto::pack and associated test.
01:40 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29455
01:46 TiMBuS joined #parrot
01:54 dalek r29456 | jkeenan++ | parallel:
01:54 dalek : Consolidate multiple test files per configuration step into a single file.
01:54 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29456
02:10 DietCoke (*&#$ is merging slow.
02:11 daxelrod I first parsed that as "is merging slowly" and was trying to figure out what (*&#$ was. :)
02:12 sandra_f joined #parrot
02:14 dalek r29457 | jkeenan++ | parallel:
02:14 dalek : Consolidate multiple test files per configuration step into a single file.
02:14 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29457
02:19 Andy joined #parrot
02:20 DietCoke ANDY: HOW IS YOUR CAPS LOCK?
02:20 Andy ROCKIN'
02:20 DietCoke IZ STILL STUCK?
02:21 DietCoke (sadly, I actually did that by holding the shift key down while typing.)
02:21 daxelrod DietCoke: Why is that sad? Haven't you remapped capslock to something more useful?
02:22 * Whiteknight never deals in the dark arts of key remapping
02:22 Andy I'm going to start my plugin branch for ack again.
02:22 DietCoke I'm too used to using loaner keyboards from work.
02:22 DietCoke on which I rarely have key-remapping abilitah.
02:22 daxelrod What OS?
02:22 DietCoke it's like compiling for C89.
02:23 DietCoke Andy: good luck, we're all counting on you.
02:23 DietCoke daxelrod: I don't wish to remap my keys at this time, but thank you. =-)
02:23 daxelrod :P
02:23 Andy I've got to concentrate concentrate concentrate...
02:23 Andy Hello? Hello? Hello?
02:23 Andy echo echo echo...
02:23 DietCoke Why aren't I notified about these things!?
02:23 Whiteknight if you want to do some work in a branch, i've got a GC in sore shape...\
02:24 DietCoke (switching to the SQL for a moment.)
02:24 Andy Now pitching for Pedro Borbone, Manny Mota Mota Mota
02:24 DietCoke Whiteknight: , we're not doing your homework for you. esp. when you're getting paid for it!
02:24 DietCoke (*#@&$ the svn commit is taking longer than the merge.
02:25 Whiteknight it's not homework, it's for the good of the project! :)
02:26 * DietCoke was actually going to try to hack on tcl-on-pct tonight, but this svn crap is killing his enthusiasm.
02:27 dalek r29458 | jkeenan++ | parallel:
02:27 dalek : Tests needed SKIP block to work on non-Darwin.
02:27 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29458
02:28 dalek r29459 | coke++ | tcl_pct:
02:28 dalek : merge -r28501:29456 from trunk
02:28 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29459
02:29 kid51 DietCoke:  *which* svn crap?
02:29 DietCoke mine.
02:29 dalek r29460 | jkeenan++ | parallel:
02:29 dalek : Tests needed SKIP block to work on non-Darwin.
02:29 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29460
02:29 DietCoke (merging is slow and cumbersome.)
02:29 DietCoke and with generated files, also painful.
02:30 DietCoke kid51: I was having problems with svn.perl.org yesterday. I opened a ticket with perl.org; no response, but it got better a few hours after I did that.
02:31 Whiteknight merging my branch is going to be a nightmare
02:31 kid51 Yes.  If you look at scrollback, you'll see that I complained about getting that for ~ 1 hr yesterday a.m.  Barney too, IIRC.
02:31 Whiteknight i can't keep my grubby hands to myself, I have to monkey around in a bunch of files
02:32 kid51 But it appeared to clear up.  I did many commits later in the day and several this evening.
02:32 DietCoke kid51: I just got an IRC-> email ping about it.
02:32 DietCoke Whiteknight: make sure you run out of time and force chromatic to merge it. I hear he LOVES merging.
02:32 DietCoke <duck>
02:32 kid51 I was getting it in serious proportions back in Dec and Jan.
02:33 DietCoke so, anyone who doesn't read my blog, guess how much weight I've lost since May. =-)
02:33 kid51 avoirdupois or metric?
02:34 Whiteknight no, i'll get it merged one way or another
02:34 Whiteknight i do plan to be a parroteer after the summer is over
02:36 DietCoke stones, if you're going to be choosy. =-)
02:36 cotto_home over 9000?
02:36 kid51 2
02:36 DietCoke 2.9
02:37 kid51 v.g.
02:37 DietCoke <bow>
02:37 kid51 Packy did observe that there was a lot less of you!
02:38 DietCoke Yah, we've known each other since the very early 90s. I've been much bigger than this.
02:39 * DietCoke sighs, as he has to refer to SYN05 again.
02:39 * DietCoke wants a SYN05 that isn't written from a perl5 perspective.
02:40 Zaba_ joined #parrot
02:41 cotto_home anyone know what'd be a good target test coverage for the built-in PMCs?
02:44 kid51 cotto_home:  test coverage ... as in gcov or Devel::Cover ?
02:45 cotto_home gcov (c-level)
02:45 dalek r29461 | jkeenan++ | parallel:
02:45 dalek : Consolidate multiple test files per configuration step into a single file.
02:45 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29461
02:45 kid51 About a year ago, ptc did a run of gcov on my site:
02:46 kid51 http://thenceforward.net/parrot/co​verage/c-components/coverage.html
02:47 kid51 probably long out of date, but may serve as a point of reference
02:47 cotto_home make cover still works fine
02:47 cotto_home it just doesn't cover Perl code, iirc
02:48 kid51 Ah, but for some Perl code we have kid51's site (where coverage analysis is actually running now, so it won't be available for a half hour or so):  http://thenceforward.net/parrot/cov​erage/configure-build/coverage.html
02:49 dalek r29462 | coke++ | tcl_pct:
02:49 dalek : [tcl] puts doesn't take comma-separated args;
02:49 dalek : single quoted strings don't work in tcl.
02:49 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29462
02:49 * kid51 must sleep
02:49 purl $kid51->sleep(8 * 3600);
02:50 cotto_home I have the coverage results from ~300 revisions ago, but it'll be nice not to have to build a more recent version.
02:55 dalek r29463 | rgrjr++ | trunk:
02:55 dalek : [CORE] Keep Closure:invoke from breaking what newclosure hath wrought.
02:55 dalek : This is a band-aid for RT#56398 that will be removed along with "autoclose."
02:55 dalek : * include/parrot/sub.h:
02:55 dalek :    + Add SUB_FLAG_NEWCLOSURE to sub_flags_enum.
02:55 dalek : * src/sub.c:
02:55 dalek :    + (parrot_new_closure):  Tag the closures we create.
02:55 dalek : * src/pmc/closure.pmc:
02:55 dalek :    + (invoke):  Only overwrite sub->outer_ctx if no "newclosure" tag.
02:55 dalek : * MANIFEST, t/op/lexicals-2.t (deleted), t/op/lexicals.t:
02:56 dalek :    + Merge lexicals-2.t into lexicals.t [per chromatic], remove "todo"
02:56 dalek :      from "RT#56398: Bob's recursion bug" case.
02:56 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29463
02:57 * DietCoke wonders if anyone who understands PCT is here.
03:09 dalek r29464 | cotto++ | trunk:
03:09 dalek : [pmc] add clone test to fixedbooleanarray
03:09 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29464
03:10 bgeron joined #parrot
03:10 baest_ joined #parrot
03:12 Zaba joined #parrot
03:13 dalek r29465 | coke++ | tcl_pct:
03:13 dalek : Add a roadmap for this version of tcl.
03:13 dalek : I'm not proud. Feel free to jump in here. =-)
03:13 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29465
03:13 teknomunk_ joined #parrot
03:18 dalek r29466 | coke++ | tcl_pct:
03:18 dalek : [tcl-pct] parse the -nonewline option to puts but ignore it for now.
03:18 dalek : Add a comment about grammar hack closer to the grammar.
03:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29466
03:20 dalek r29467 | coke++ | tcl_pct:
03:20 dalek : [tcl-pct] puts doesn't actually take expressions, it only understands simple values.
03:20 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29467
03:21 baest joined #parrot
03:26 dalek r29468 | coke++ | trunk:
03:26 dalek : [tcl] When testing core tests, use a new version of the 8.5 test suite.
03:26 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29468
03:40 teknomunk__ joined #parrot
04:31 sandra_f joined #parrot
04:50 Zaba joined #parrot
05:17 Psyche^ joined #parrot
06:09 Zaba_ joined #parrot
06:13 uniejo joined #parrot
06:48 dalek r29469 | cotto++ | trunk:
06:48 dalek : [pmc] fix resizablebooleanarray's clone, expand/rewrite associated test
06:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29469
07:01 Zaba joined #parrot
07:13 bacek joined #parrot
07:14 masak joined #parrot
07:17 barney joined #parrot
07:34 Topic for #parrotis now "Parrot 0.6.4" release is underway, please update NEWS and PLATFORMS
07:39 Topic for #parrotis now "Parrot 0.6.4: St. Vincent Amazon" release is underway, please update NEWS and PLATFORMS
07:48 uniejo joined #parrot
07:51 dalek r29470 | bernhard++ | trunk:
07:51 dalek : [build] clean up generated directory lib/Parrot/OpLib
07:51 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29470
07:57 iblechbot joined #parrot
08:10 barney chromatic++  for editing NEWS
08:11 moritz barney++ # taking care of the release
08:11 Debolaz joined #parrot
08:11 barney pmichaud++ see above
08:19 nopaste "moritz" at 89.13.227.19 pasted "failure in t/tools/dump_pbc.t" (8 lines) at http://nopaste.snit.ch/13579
08:19 moritz anyone else seeing that?
08:24 dalek r29471 | fperrad++ | trunk:
08:24 dalek : [Pipp]
08:24 dalek : - add PCRE version
08:24 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29471
08:29 bacek joined #parrot
08:45 bacek joined #parrot
08:47 * barney wonders whether the Bugday is worth announcing
08:47 moritz in case of doubt, it is ;-)
08:56 masak oh, is it Release Day today?
08:56 dalek r29472 | bernhard++ | trunk:
08:56 dalek : [distro] Regenerated MANIFEST.SKIP
08:56 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29472
08:57 moritz masak: yes
08:58 masak \o/
08:58 Zaba_ joined #parrot
08:58 moritz hey, rakudo has +950 passing spectests since last release ;-)
08:59 masak that's really not bad.
08:59 masak [++] @devs
08:59 masak hm, that's not right :)
08:59 masak <<++>> @devs
08:59 moritz @devs >>++;
09:00 masak ah, right :)
09:00 masak Perl 6 is implemented faster than I can learn it these days :)
09:01 moritz that's partly true for me as well
09:02 moritz for example I never used generics in Perl 6, and they are implemented now
09:02 moritz and all this role and class stuff - I know some of it, but not really in depth
09:02 masak ah, yes. generics
09:03 masak is there a convincing use case for generics? I mean, Perl 5 is a very weakly typed language, and suddenly in Perl 6 we have generics. what are they intended for?
09:04 moritz give the type fetishists what they want? ;-)
09:04 masak hehe
09:04 masak are there things like Java's <? extends T> and <? super T> in Perl 6's generics capabilities?
09:05 * masak has to go read up on Sxx
09:05 moritz situations like "return something of the same types as you gave me" and "expect two parameters of same type" aren't all that uncommon
09:06 masak true
09:06 moritz masak: maybe there's also something interesting on http://www.dlugosz.com/Perl6/ , ISTR that he worked a bit on generics
09:06 masak good idea
09:06 purl masak: Good Idea: Stopping to smell the roses. Bad Idea: Stopping to feel the roses.
09:06 masak purl: your wisdom baffles me sometimes
09:06 purl masak: excuse me?
09:06 masak ...and sometimes not.
09:42 bacek joined #parrot
09:43 barney make fulltest    looks fine under Linux
09:44 * barney is about to commit changes for Parrot 0.6.4
09:45 tuxdna joined #parrot
09:55 Zaba joined #parrot
09:55 dalek r29473 | bernhard++ | trunk:
09:55 dalek : Changes for Parrot release ....
09:55 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29473
09:57 tuxdna joined #parrot
09:58 dalek r29474 | bernhard++ | trunk:
09:58 dalek : [docs] Pop up editor for commit message. Pasting with -m option is dangerous.
09:58 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29474
10:06 dalek r29475 | fperrad++ | trunk:
10:06 dalek : [PLATFORMS]
10:06 dalek : - MinGW gcc 3.4.5 updated
10:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29475
10:15 dalek r29476 | bernhard++ | trunk:
10:15 dalek : [docs] don't recommend to use '-s',capture more verbose output from 'make'
10:15 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29476
10:50 dalek r29477 | bernhard++ | RELEASE_0_6_4:
10:50 dalek : tagged release 0.6.4
10:50 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29477
10:58 iblechbot joined #parrot
11:09 kj joined #parrot
11:16 ruoso joined #parrot
11:20 Topic for #parrotis now "Parrot 0.6.4 "St. Vincent Amazon" Released | http://parrotcode.org/ | 15/648/80 new/open/stalled tix | logged in http://irclog.perlgeek.de/parrot/today".
11:22 dalek bernhard.schmalhofer@gmx.de | Parrot:
11:22 dalek link: http://www.perlfoundation.o​rg/parrot/index.cgi?parrot
11:44 barney Parrot 0.6.4 flies, http://en.wikipedia.org/wiki/St._Vincent_Amazon
11:45 moritz barney++
12:03 bacek joined #parrot
12:09 bacek congratulations everyone
12:10 masak cheers!
12:20 dalek r29478 | jkeenan++ | parallel:
12:20 dalek : Correct wrong no. of tests in plan.
12:20 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29478
12:21 uniejo joined #parrot
12:22 dalek r29479 | jkeenan++ | parallel:
12:22 dalek : Consolidate multiple test files per configuration step into a single file.
12:22 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29479
12:26 mj41 joined #parrot
12:27 bacek perl6: say log(-1+0i,)
12:27 polyglotbot OUTPUT[0␤]
12:29 bacek perl6: say sqrt(-1+0i,)
12:29 polyglotbot OUTPUT[6.12303e-17+1i␤]
12:29 moritz that's better ;)
12:34 * barney just bought ticket for YAPC::EU
12:34 moritz so sad that I can't go there :(
12:36 pmichaud barney: ping
12:37 pmichaud jonathan: wednesday I'll be gone all day on a business trip, so thu or fri are better
12:37 pmichaud barney: you now have comaint on the modules in question -- try requesting a reindex
12:37 moritz pmichaud: you accidentially duplicated the "added generic type declarations" lines in NEWS
12:38 moritz but I noticed only after the release
12:38 pmichaud moritz: oops.  chromatic and I ended up editing NEWS at the same time and so I had to go clean up the conflicts
12:38 pmichaud and I guess I missed one.
12:38 pmichaud it's not too bad -- we'll just claim we added generics in two steps.  :-)
12:38 pmichaud "twice as generic as before!"
12:39 moritz should I remove one? or is NEWS a historical document that shouldn't change in retrospect?
12:39 moritz lol
12:39 pmichaud remove one.
12:43 nopaste "bacek" at 58.111.0.124 pasted "Complex.log() implementation for pmichaud/moritz" (30 lines) at http://nopaste.snit.ch/13583
12:43 wknight8111 joined #parrot
12:43 particle message kid51 re #56928: i haven't built parrot in two weeks, and i trust andy dougherty, so if it looks like it works fire away
12:43 purl Sorry, I've never seen kid51 before.
12:45 dalek r29480 | moritz++ | trunk:
12:45 dalek : [NEWS] removed (nearly) duplicate line
12:45 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29480
12:45 moritz bacek: I just wonder if they should really go into src/builtins/any-str.pir
12:45 bacek moritz: actually no.
12:46 bacek And forget this patch for the moment.
12:46 purl bacek, I didn't have anything matching this patch for the moment
12:46 pmichaud complex methods we've been putting into Complex
12:46 bacek It didn't work in 'clean' checkout
12:46 moritz pmichaud: ok, thanks for clarifying
12:47 moritz bacek: applies cleanly nonetheless, testing now
12:48 pmichaud =item sqrt should probably read =item log   :-)
12:48 moritz pmichaud: already fixed that locally
12:48 bacek moritz: test will fail
12:48 pmichaud moritz++
12:48 moritz I noticed, yes ;)
12:51 nopaste "bacek" at 58.111.0.124 pasted "Correct Complex.log() implementation for pmichaud/moritz" (101 lines) at http://nopaste.snit.ch/13584
12:51 bacek much better version :)
12:52 Zaba joined #parrot
12:52 bacek moved log() to any-num
12:52 bacek +exported from Complex.
12:52 pmichaud I've been keeping the functions in alphabetical order inside of any-num.pir
12:53 pmichaud other than that, the patch looks good.
12:53 bacek pmichaud: ouch. Didn't notice it. I'll change patch
12:54 bacek pmichaud: 'int()' in wrong place :)
12:54 pmichaud I left int() next to truncate, though
12:54 pmichaud since they're really the same thing.
12:55 pmichaud but I guess it can be alphabetized also.
12:55 * barney requested reindexing
12:57 nopaste "bacek" at 58.111.0.124 pasted "#3 Correct Complex.log() implementation for pmichaud/moritz" (125 lines) at http://nopaste.snit.ch/13585
12:58 bacek with reordered functions ( int() as well)
12:59 moritz bacek: ok, I'll smoke & apply
13:00 moritz bacek++
13:01 moritz ./rakudo -e 'say log(-1+0i)'
13:01 moritz 0+3.14159i
13:02 bacek log10 is harder... I can just '!EXPORT' it...
13:03 * moritz wonders if we should start implementing the two arg form of log
13:03 moritz and we need to test it
13:04 gryphon__ joined #parrot
13:05 wknight8111 joined #parrot
13:05 Zaba_ joined #parrot
13:06 bacek pmichaud: How I can invoke parent's method from child's override?
13:07 particle SUPER:: ??
13:07 pmichaud there's not a way to do it at present.
13:07 pmichaud at least, not that I'm aware of.
13:08 pmichaud do you mean a parent's vtable method or just a parent method?
13:08 pmichaud (a parent method in PIR)
13:08 bacek just method
13:09 pmichaud given that  class Foo is a parent of Bar
13:09 pmichaud if you have Foo's protoobject
13:09 pmichaud you can do
13:09 pmichaud $P0 = find_method fooproto, 'methodname'
13:09 pmichaud bar.$P0(...)
13:09 pmichaud i.e., look up the parent method specifically and invoke it
13:10 bacek will it work for vtable? like bar.$P0(self,..)?
13:10 pmichaud no, it doesn't work for vtable, since find_method doesn't retrieve vtable methods
13:10 bacek ok, thanks
13:10 pmichaud also, you don't need to pass self, since bar is self
13:10 pmichaud (I meant 'bar' here to be an instance of class Bar)
13:10 bacek ah, ok.
13:10 pmichaud so I probably should've said
13:10 pmichaud self.$P0(...)
13:12 bacek pmichaud: so, I assume, using this technique we can implement authothreading for Junctions?
13:12 bacek override 'find_method' in Junction and construct proper closure on fly.
13:13 bacek Or my thought totally wrong?
13:13 dalek r29481 | moritz++ | trunk:
13:13 dalek : [rakudo] add Complex log() and re-arranged any-num.pir, bacek++
13:13 dalek : Patch Curtesy of Vasily Chekalkin <back at bacek.com>
13:13 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29481
13:14 pmichaud you mean autothreading for methods on junctions?  yes, essentially we'll override find_method, I suspect.  But even then it'll be a bit tricky.
13:14 moritz can we add bacek to CREDITS to shorten the attribution in the commit messages?
13:14 bacek moritz: jonathan did it already
13:14 pmichaud the attributions are supposed to be that way for anyone w/o a commit bit
13:14 pmichaud at least, that's what I was once told
13:15 moritz pmichaud: ok
13:15 bacek moritz: and you've made typo in my email :)
13:15 moritz oh dammit, sorry
13:16 moritz somehow copy&paste doesn't work in the vim instances that "svn ci" spawns
13:16 moritz so I retype it every time, and hope I don't amke a mistake
13:16 moritz moritz--
13:16 particle missppeelled "courtesy" also
13:16 bacek moritz: no worries (It was first phase that I learned to say in all situations in Australia :)
13:16 moritz me-- again
13:17 bacek karma me
13:17 purl bacek has karma of 52
13:17 bacek karma (me)
13:17 purl (me) has neutral karma
13:17 bacek not so bad :)
13:18 bacek pmichaud: I failing to implement 'log10()' for Complex... There is log10 implementation in src/pmc/complex.pmc, but I can't call it from rakudo's Complex.log10
13:21 pmichaud I don't see log10 in complex.pmc
13:21 moritz ok, here begins the fun: log(-1i) -> 0-1.5708i. The test checks for 1i*pi*1.5, which is also correct, but on a different complex plane. What should I do?
13:22 moritz should we standardize on one complex plane? or adapt the tests to deal with any complex plane?
13:23 pmichaud what do most other languages do?  To me, standardizing on one complex plane sounds right, but I'd check with p6l
13:24 moritz Mathematica returns the same result as Rakudo
13:24 moritz but I don't know if it does so consistently
13:25 bacek pmichaud: my bad... sorry
13:27 bacek perl6: say ((1|2) + (3&4)).perl
13:27 polyglotbot OUTPUT[get_string() not implemented in class 'Junction'␤current instr.: 'infix_junction_helper' pc 7790 (src/gen_builtins.pir:5050)␤called from Sub '_block11' pc 67 (EVAL_13:21)␤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 806 (src/PCT/HLLCompiler.pir:481)␤called from Sub
13:27 polyglotbot ..'parrot;PCT::HLLCompiler;evalfiles' pc 1088 (src/PCT/HLLCompiler.pir...
13:28 pmichaud it should be possible to write .perl for Junction
13:28 moritz perl6: say ((1|2) + (3&4)).values
13:28 polyglotbot OUTPUT[get_string() not implemented in class 'Junction'␤current instr.: 'infix_junction_helper' pc 7790 (src/gen_builtins.pir:5050)␤called from Sub '_block11' pc 67 (EVAL_13:21)␤called from Sub 'parrot;PCT::HLLCompiler;eval' pc 806 (src/PCT/HLLCompiler.pir:481)␤called from Sub
13:28 polyglotbot ..'parrot;PCT::HLLCompiler;evalfiles' pc 1088 (src/PCT/HLLCompiler.pir...
13:29 pmichaud note that ((1|2) + (3&4)).values would likely still be a Junction
13:29 pmichaud (a List of junctions, anyway)
13:30 Zaba_ I find the fact that | and & are no more binary or/and kinda confusing
13:30 masak which one takes priority, '|' or '&' ?
13:30 moritz masak: & probably
13:30 masak ok, so a list of two | junctions then
13:31 masak (4|5, 5|6)
13:32 pmichaud yes, that seems right
13:32 masak there oughta be a method to deeply de-junctify a value
13:32 pmichaud masak: so, what would we get in the case of the above?
13:34 masak pmichaud: I don't know exactly. something well-behaved. maybe a List subclass that indicates that it contains and-ed values, and the elements similarly instances of a subclass indicating or-ed values
13:35 masak or if we prefer to not subclass, separate classes for that. or something else.
13:35 masak perhaps something akin to the inner structure of $/
13:36 pmichaud sure, those can work
13:36 wknight8111_ joined #parrot
13:36 masak if the $/ alternative is feasible, I like that one the best
13:36 pmichaud although "a List subclass that indicates that it contains and-ed values"  sounds a lot like and(), with the exception of not being a List subclass :-)
13:36 bacek moritz: autothreading not implemented for Junctions (yet)
13:37 pmichaud we had autothreading for junctions implemented at one point but it slowed things down a fair bit
13:37 pmichaud so I disabled it until we do more work on dispatching in general
13:37 bacek pmichaud: why it slowed things?
13:37 masak pmichaud: the exception being that I can examine a List object, whereas a junction behaves like a value with MPD
13:38 pmichaud well, I can examine a Junction, too, with:    $junc.values[3]
13:39 pmichaud and for "nested junctions", it's then    $junc.values[0].values[1]     which looks a lot like $/  :-)
13:39 britneypire joined #parrot
13:41 pmichaud (autothreading on junctions) -- actually, I'm guessing that methods don't autothread over the invocant
13:41 pmichaud now that I think about it a bit more
13:41 pmichaud so there's no need to overload find_method
13:41 masak pmichaud: I'm pretty happy with that
13:41 masak what's the way to test whether what I'm holding is radioac... er, junctive?
13:42 pmichaud $x ~~ Junction
13:42 pmichaud ?
13:42 masak but of course. thanks.
13:42 masak that means that I can write my deep dejunctifier, should I ever need it
13:42 masak I'm contented.
13:47 bacek pmichaud: last 4 tests in S29-str/index.t...
13:48 Zaba_ does $x ~~ SomeClass return true whether $x is of SomeClass?
13:49 moritz Zaba_: yes
13:49 Zaba_ nice.
13:49 Zaba_ no .isa()?
13:49 moritz I think there's .isa also, but ~~ does more
13:50 Zaba_ I know that ~~ is used for regex matching too
13:50 moritz for example if SomeClass is actually a role, and $x does SomeClass, ~~ will return True and .isa will false
13:50 Zaba_ oh.
13:50 Zaba_ interesting.
13:51 moritz so $obj ~~ Type actually checks if "$x is of type Type", for a useful value of "is of type"
13:54 Zaba_ $obj ~~ Something checks whether $obj is of type Something, or does role Something, and that's all?
13:55 pmichaud depends on what Something is, but yes.
13:55 moritz if Something is a type name, yes
13:57 jhorwitz joined #parrot
14:01 dalek r29482 | pmichaud++ | trunk:
14:01 dalek : [rakudo]: spectest-progress.csv update, 95 files, 1695 passing tests
14:01 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29482
14:02 bacek moritz: around?
14:02 purl nope.
14:03 moritz bacek: partially
14:03 purl partially is already too much w/o proper locking or shared PMCs
14:03 moritz purl, forget partially
14:03 purl moritz: I forgot partially
14:03 moritz purl, forget around?
14:03 purl moritz: I forgot around
14:03 pmichaud barney: let me know if the reindexing fails/succeeds
14:04 jonathan pmichaud: OK, maybe we make it Friday so I get a full day on it.
14:04 pmichaud jonathan: works for me
14:05 japhb Congrats to everyone on the Parrot release!
14:05 jonathan (backtrack) methods called on a junction are methods on the junction object itself
14:05 japhb Anyone happen to know what the news item '+ improved IMCC register allocator' referred to?  Improved how?
14:07 nopaste "bacek" at 58.111.0.124 pasted "2-args log implmentation for moritz" (72 lines) at http://nopaste.snit.ch/13586
14:09 pmichaud note that the "2-arg" implementation is really supposed to be done with an optional arg :-)
14:09 moritz does it make a difference?
14:10 jonathan pmichaud: How's things on the lexicals/closures? I saw the post on p6l...
14:10 pmichaud jonathan: no response on p6l yet.  Until I get a response there, I'm not sure I can progress
14:11 pmichaud moritz: S29 shows log as having a named arg
14:11 bacek pmichaud: logick is quite different. My first version was with optional arg. But this one is much easy to understand (for me at least)
14:12 jonathan pmichaud: OK. Bob seems to have put a patch in that keeps us and him happy for now, though.
14:12 pmichaud jonathan: I agree, so I may just let it simmer a while
14:12 jonathan OK.
14:12 pmichaud however, I think we may quickly run into difficulty with recursion
14:12 pmichaud or closures
14:12 purl Closures make washort's CS teacher happy
14:12 pmichaud or both
14:13 jonathan The recursion example that used closures that I hand-compiled worked... :-)
14:13 jonathan There are other cases though, that I'm not convinced will. Well, I guess we can just find what's broken and add them to tests as fudged.
14:14 Zaba_ hand-compiled?
14:15 jonathan Zaba_: I took the source in Perl and wrote PIR that was close to what I'd expect it to compile down to.
14:15 Zaba_ aha
14:16 pmichaud jonathan: I'm worried about something like      if cond { $a = &foo; }
14:16 jonathan pmichaud: Does that do a newclosure on foo?
14:16 pmichaud by definition, the newclosure generated for &foo won't be in the same scope that defines foo
14:16 jonathan Right.
14:17 NotFound Someone wants to look at the .parrot_current_rev issue before releasing?
14:17 pmichaud NotFound: I think the release already happened.
14:17 NotFound Then not ;)
14:17 pmichaud jonathan: that simple case is why I think that newclosure as presently constituted can't solve our problems
14:18 pmichaud (unless we do lots of really odd manipulations to move the newclosure operation out of the nested block)
14:19 pmichaud anyway, on sat/sun I was feeling fairly comfortable that I could come up with a clean spec, but I really need an indication of what happens for the examples I posted to p6l
14:20 jonathan pmichaud: OK, I think clone is what we actually want to emit.
14:20 jonathan (for reference taking)
14:21 pmichaud I agree.
14:26 jonathan OK
14:26 jonathan Guess we can arrange later on, what I look at on Friday
14:26 pmichaud I'll have time to think about things while on the planes tomorrow
14:26 jonathan If you've no particular goals, I may do anonymous classes, which should be easy-ish.
14:26 jonathan OK.
14:27 pmichaud today is a little hectic preparing for trips and getting ready for extended travels starting next week
14:27 jonathan Sure, I'm pretty busy today too.
14:28 pmichaud originally my trip tomorrow was for one 90 minute meeting.  In the past 24 hours it's increased to be four meetings (ranging from 30 mins to 120 mins)
14:29 cognominal joined #parrot
14:29 iblechbot joined #parrot
14:30 jonathan Ouch!
14:30 pmichaud well, they all pay pretty well.  :-)
14:31 jonathan Getting paid = good. :-)
14:33 pmichaud afk, errands
14:35 kjs_ joined #parrot
14:37 DietCoke joined #parrot
14:38 DietCoke I need some PCT guidance.
14:38 DietCoke ee.
14:39 * Tene prods DietCoke
14:40 DietCoke For tcl, my plan is to fake the non grammar by pretending the builtin functions are originally part of the language syntax.
14:41 Tene Right.
14:42 DietCoke but I don't want to paint myself into a corner when I have to implement [rename], (which lets you rename even the builtins). So I was thinking that I was going to need a sub somewhere that corresponded to the runtime version... but I think if I am going to support changing the grammar anyway (to remove things), I can just make rename support changing the grammar so that [rename puts say] DTRT.
14:42 DietCoke ... so I think I just talked myself down from a ledge there.
14:42 DietCoke so, "we'll be able to update the grammar at runtime at some point, right?"
14:43 DietCoke (I also need to allow user defined proces to re-parse themselves if they're invoked after the grammar changes. and also only run one command at a time.)
14:45 NotFound DietCoke: will not be easier to not trying to fake the non grammar?
14:45 DietCoke also, how do I mark a string literal in a grammar so my action can tell if it was present?
14:45 DietCoke NotFound: ... I can't parse that.
14:46 Tene DietCoke: $<foo>='zomglolwtf'  ?
14:46 NotFound DietCoke: if tcl parsing is oriented to runtime, trying to do it at compile time can be impossible.
14:46 moritz DietCoke: don't parse things at the language level you don't have to parse, and internally have a number of parsing helper functions?
14:47 Zaba joined #parrot
14:48 Tene You could take the approach I'm moving lolcode away from.  ;)
14:49 pmichaud back
14:49 DietCoke NotFound, moritz: at which point, what's the point of using PCT?
14:50 NotFound DietCoke: maybe none.
14:50 DietCoke I will refrain from making a snarky comment about dynamic language support. =-)
14:51 moritz DietCoke: dunno.
14:51 teknomunk joined #parrot
14:52 DietCoke in trunk, partcl does the runtime dispatch just fine. I was trying to use PCT to provide some pre-compiled versions of the standard builtins.
14:52 DietCoke (rather than having to handroll PIR for everything, which I'm doing now.)
14:52 DietCoke Abusing the grammar in this fashion seemed a reasonable compromise. I'm open to suggestions.
14:53 NotFound DietCoke: You can't just call the standard builtins in the same way as user defineds?
14:54 DietCoke yes. I can. see trunk.
14:56 NotFound So what are you trying to do, pre-compile the calls to them?
14:56 DietCoke Trying to unroll them for speed.
14:56 DietCoke puts $a -could- compile down to "say $P1" if we were clever.
14:56 moritz HLL JITting ;)
14:57 DietCoke right now it compiles down to an insane amount of PIR plus the entire tcl runtime.
14:59 NotFound DietCoke: A nigthmare solution can be to make an opcode for each buitin, an have the implementation for that opcode check at runtime if the function has been redefined.
15:01 DietCoke that would involve writing the builtins in C which is even worse than writing them in PIR. =-)
15:02 NotFound You can at the same time build a way to define opcodes implemented in pir ;)
15:02 DietCoke So, anyway, back to my PCT approach. =-)
15:06 donaldh joined #parrot
15:06 DietCoke tene: something like:     'puts' $<nonewline>=[ '-nonewline'?  ] <value> ';'
15:06 DietCoke ?
15:08 DietCoke pmichaud: should we be calling NQP files ".pm" ?
15:08 DietCoke (as opposed to ... .nqpm, I suppose.)
15:08 Tene $<nonewline>=['-nonewline']? is what I was thinking
15:09 Tene or [$<nonewline>='-nonewline']?
15:10 Tene NQP is a subset of Perl 6.  All NQP programs are valid Perl programs with the same meaning, yes?
15:10 Tene .oO(Should NQP's test suite also be running the tests with rakudo?)
15:11 DietCoke Tene: my current annoyance is that all my editors want to treat it as perl5 source.
15:11 NotFound Maybe the answer is "Not Quite" X-)
15:12 moritz DietCoke: # vim: ft=perl6
15:12 moritz modelines++
15:12 moritz of course that only works for vim, though
15:13 Tene I have plans to work on lolcode and cardinal again tonight.
15:13 Tene I plan to have lolcode generating a normal AST by the end of the week and completely removing the ugly runtime lookup stuff.
15:15 Tene I should be able to then take that same approach to improve cardinal quite a bit.
15:21 pmichaud DietCoke: I'm calling them .pm, yes.  In theory anything that NQP compiles Perl 6 should be able to compile.
15:21 pmichaud what does [rename] do, exactly?
15:21 pmichaud if I rename a builtin, does it stay that way permanently?
15:21 DietCoke moritz: that should be added to the language shell.
15:21 DietCoke pmichaud: yes.
15:22 pmichaud so, just replace the existing builtin with the new one
15:22 DietCoke which is fine when everything is runtime dispatch.
15:22 DietCoke Not so fine if the grammar is at all smart about the builtin processing.
15:22 pmichaud where "grammar is smart" means...?
15:23 DietCoke let's say I define [if] in the grammar to take advantage of the if past nodes.
15:23 DietCoke then someone calls rename.
15:23 DietCoke say, [rename if iffy]
15:24 DietCoke so if I've added it to the grammar, I have a lot of things to update when that happens, and there may not be a simple builtin func to call at that point.
15:24 DietCoke (whereas in trunk, everything is a sub. I just change the name of the sub in the  main:: namespace.)
15:25 moritz can you have a symbol table that is updated at parse time?
15:25 pmichaud I'd probably start by not using the if past nodes
15:25 pmichaud i.e., keep [if] as a runtime op for now
15:25 pmichaud yes, this might mean that pct is not very useful for tcl
15:25 moritz then you could parse for an identifer, and check if it's the current name for 'if'
15:26 pmichaud we don't really have the concept of 'thunks' yet in parrot or pct
15:27 DietCoke I guess I'm not seeing the value of pct for me at all, then. =-)
15:28 pmichaud there might not be one.
15:28 pmichaud once we have protoregexes, though, it might be easier to redefine 'if'
15:28 pmichaud and other "keyword"-like tokens
15:28 pmichaud ....actually
15:28 pmichaud come to think of it
15:28 purl well, come to think of it is how the zombie monkies come in the night and pluck the brains from unsuspecting children while they sleep
15:29 * pmichaud smiles evilly
15:29 pmichaud you probably don't want to change the grammar as much as you want to change the action method -- the part that produces the PAST
15:29 pmichaud and *that's* very easy to do.
15:29 DietCoke I do want to change the grammar.
15:30 pmichaud because 'if' parses differently after it's been renamed?
15:30 pmichaud oh, because the keyword itself has changed
15:30 pmichaud so, you want to dynamically look up keywords from a hash or array
15:30 DietCoke if my grammar has 'puts [$<nonewline>=-nonewline] <value>' before, and someone creates a user defined proc called puts that overrides it, I can't have that nonewline stuff in the grammar anymore.
15:31 pmichaud okay
15:31 pmichaud you're definitely after protoregexes then
15:31 DietCoke Was hoping to use PCT to avoid a lot of the manual argument mangling I have to do.
15:31 pmichaud with a protoregex you'd have    term:puts { $<sym> [$<nonewline>=-nonewline] }   in the original grammar
15:32 DietCoke er, I was missing a ? there.
15:32 pmichaud but after someone redefines puts it'd replace that rule with something less specific
15:32 pmichaud i.e., you'd end up with a derived grammar
15:32 pmichaud and then parse using the derived grammar.  Perl 6 will be doing the same thing.
15:32 DietCoke I figured in that case, I'd just have a default "command" dispatch, and by removing puts, it would fall back to the current trunk-like behavior.
15:33 pmichaud that can work also.
15:33 pmichaud is -nonewline part of the grammar normally in Tcl?
15:33 DietCoke grammar? no.
15:33 DietCoke it's an argument to puts.
15:33 pmichaud so why is it parsed specifically in the grammar?
15:34 DietCoke so I don't have to do by hand when redefining puts isn't something that happens all the time.
15:34 pmichaud can't the default puts (function) simply parse -nonewline as part of its arguments?
15:34 DietCoke ... I keep having the same conversation over and over here. =-)
15:34 DietCoke yes. that's what I'm doing in trunk right now.
15:34 pmichaud I'm missing something.
15:35 DietCoke I am trying to generate more efficient bytecode.
15:36 pmichaud I'm questioning why 'puts' appears in the grammar at all, if the builtin sub already does the argument processing
15:36 DietCoke I don't want the builtin sub.
15:36 DietCoke I am forced to have it in trunk.
15:36 pmichaud you want something more efficient
15:36 pmichaud okay, I got back to what I said earlier, then
15:36 DietCoke so puts doesn't appear in trunk's grammar.
15:36 pmichaud you don't want to do the "more efficient" part in the grammar -- you want to do it in the action methods
15:36 DietCoke it only appears in the tcl_pct's branch's grammar.
15:37 pmichaud let the action method decide if it's safe to use the more efficient version or to use the built-in version
15:37 moritz DietCoke: can the rename be traced at compile time?
15:37 DietCoke and where would I define this more efficient version?
15:37 NotFound DietCoke: A fast an efficient tcl will not be counter-natural? X-)
15:38 moritz DietCoke: or can you do stuff like if rand < 0.5 [rename foo bar]?
15:38 DietCoke moritz: sure you cna.
15:38 pmichaud we don't need to trace the rename at compile time
15:38 pmichaud unlike many of the other compilers we're working with, tcl's model would likely be "parse one command, execute it"
15:38 DietCoke (especially if we're running the compiler after every command anyway)
15:39 pmichaud i.e., it's more of an interpreter than a compiler.
15:39 DietCoke pmichaud: by doing this in the actions, though, i'd always need to have a fallback of a runtime version of a command, no?
15:39 cognominal joined #parrot
15:39 pmichaud DietCoke: no.
15:39 pmichaud in the actions you can do:   the equivalent of
15:39 pmichaud if sub puts exists then  generate past to call that sub
15:39 pmichaud else generate past to do XYZ directly
15:40 NotFound pmichaud: Wait for the day I implement a Basic line oriented, able to modify his own code by POKE. That day you'll know what a pure interpreter is X-)
15:42 pmichaud i.e., inside the action methods we can query the state of the current runtime and choose to do different things based on that
15:42 DietCoke pmichaud: I'd need something to keep track of renames and be able to dispatch based on that. the original builtin 'puts' could be renamed to 'say', e.g. That approach might work. So then I could write my "compiled" versions in NQP/past instead of how I do it now.
15:42 pmichaud DietCoke: correct.
15:42 pmichaud and PAST even allows inlined PIR segments
15:43 DietCoke what about user-defined procedures? My original plan was to basically recompile them if someone had called 'rename' anywhere.
15:43 DietCoke (since if they call puts and someone's called rename since the proc was defined, it needs to use the new behavior.)
15:43 pmichaud DietCoke: it might be worthwhile to keep the PAST tree around
15:43 pmichaud in fact
15:44 pmichaud hmmmm
15:44 pmichaud (thinking)
15:45 pmichaud I think I have to go back to my earlier comment, that I'd start by doing the builtins as subs and then figure out ways to optimize after that :-)
15:45 DietCoke "that's trunk"
15:46 pmichaud yes, I got that part.  :-)
15:46 DietCoke except mdiep and I handrolled our own way of optimizing things.
15:47 pmichaud if you already have the builtins in trunk, then doing a first cut of a simple pct-version is easier too, yes?
15:47 DietCoke not for me, no. =-)
15:47 DietCoke my pct-fu is "start with a brand new empty shell"
15:48 DietCoke I would not be averse to someone trying out PCT against tcl as it stands today, but I suspect that'd be non-trivial for me to do.
15:49 pmichaud this is something I would _love_ to sink my teeth into, honestly, and I probably will at some point.  But it'd be late august before I can do it
15:51 DietCoke maybe I can bug tene into doing it. =-)
15:52 dalek r29483 | cotto++ | trunk:
15:52 dalek : [pmc] add resizablebooleanarray test, fix codingstd goof
15:52 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29483
15:53 pmichaud erands -- bbiaw
16:01 AndyA joined #parrot
16:05 Infinoid joined #parrot
16:12 barney pmichaud: reindexing worked for the individual module, but http://search.cpan.org/~bschmal/parrot-0.6.4/ is still said to be unauthorized
16:14 rlb3 joined #parrot
16:17 dalek r29484 | coke++ | trunk:
16:17 dalek : update ticket pointer to new system.
16:17 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29484
16:22 Zaba_ joined #parrot
16:25 particle barney: you need to submit a request to reindex iirc
16:25 particle i forget if that's via pause, or if you need to email brian_d_foy et al
16:27 DietCoke we should write that down if it's not already in the doc.
16:27 particle i think brian wrote a doc about it
16:27 particle docs/project/pause_guide.pod
16:27 barney I reindexed parrot-0.6.4.tar.gz. Right now I requested to reinedex parrot-0.6.4.meta
16:28 sjansen joined #parrot
16:33 julian_ joined #parrot
16:37 cjfields joined #parrot
16:39 dalek r29485 | julianalbo++ | trunk:
16:39 dalek : Update .parrot_current_rev in Configure if possible
16:39 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29485
16:43 paco joined #parrot
16:43 dalek r29486 | julianalbo++ | trunk:
16:43 dalek : Update .parrot_current_rev in Configure if possible-fix
16:43 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29486
16:51 Zaba joined #parrot
16:52 dalek r29487 | bernhard++ | remove_getfd:
16:52 dalek : #48310: [DEPRECATED] getfd opcode
16:52 dalek : Create branch 'remove_getfd' for working on RT #48310
16:52 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29487
16:55 dalek r29488 | julianalbo++ | trunk:
16:55 dalek : Update .parrot_current_rev in Configure if possible-fix 2
16:55 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29488
16:56 Zaba_ joined #parrot
16:58 Tene I don't think I did anything this week for #ps
16:58 * Tene reads svn log
16:58 Tene orite, lolcode switches for jhorwitz
16:58 Tene purl: parrotsketch?
16:58 purl parrotsketch is a status meeting for parrot core committers held every Tuesday at 18:30 UTC in #parrotsketch
16:59 Tene 1.5 hr
16:59 DietCoke tene: if you're bored you could figure out why ../../parrot tcl.pbc library/tcltest/tcltest.tcl is losing track of a command name and replacing it with a $P register.
17:00 chromatic joined #parrot
17:01 DietCoke (or convert tcl in trunk over to using PCT with as little other modifications as possible.)
17:01 barney Tene: or look at RT #56828
17:02 dalek r29489 | julianalbo++ | trunk:
17:02 dalek : Update .parrot_current_rev in Configure if possible-fix 3
17:02 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29489
17:03 barney http://search.cpan.org/~bschmal/parrot-0.6.4/ is now authorized
17:03 moritz YaY
17:04 dalek r29490 | moritz++ | trunk:
17:04 dalek : [rakudo] add and test Str.trans, cjfields++
17:04 dalek : Patch courtesy of Chris Fields <cjfields at uiuc.edu>
17:04 dalek : Adds one file to spectest_regression, +37 passing tests
17:04 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29490
17:04 NotFound That's odd. If I don't make an update after the commit, svn info does not reflect the commited rev number.
17:05 moritz NotFound: that's because your revision number could be out of date
17:05 moritz NotFound: if somebody changed other parts of the repo between your last 'svn up' and 'svn ci'
17:06 NotFound moritz: but svn knows what is the number, it tells it at commit end.
17:07 moritz NotFound: yes, but the rest of your repo is not in that state
17:07 NotFound Ah, yes, I see the point.
17:08 Tene DietCoke: and if I'm not bored?
17:09 DietCoke Then I presume you have other things to work on.
17:10 NotFound Someone can test this last commit and tell if Configure.pl shows the correct revision number?
17:11 cotto_work NotFound, looks ok to me on linux/x86
17:12 cotto_work of course, the arch shouldn't make much difference for something like that
17:13 cjfields_ joined #parrot
17:13 moritz should Configure.pl print the revision number?
17:14 cotto_work it should be part of Configure.pl's output
17:14 dalek r29491 | coke++ | trunk:
17:14 dalek : [tcl] Remove some useless global lookups (these are now done in the TGE
17:14 dalek : step and are, as far as I can tell, not needed here. All tests pass.
17:14 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29491
17:14 NotFound moritz: It already printed it, I don't touch that part.
17:14 moritz ah yes
17:14 moritz grep++ ;-)
17:14 NotFound In any case, it must not print a wrong one.
17:15 DietCoke cotto_work: it might if he's somehow using the svn binary where we don't have one.
17:15 DietCoke (no clue if he is, though.)
17:18 NotFound If svn is not used, the package must include a .parrot_current_rev file.
17:21 Theory joined #parrot
17:21 DietCoke if it's a package, it should  be a release #, not a rev number we're using to track things.
17:21 NotFound A snapshot package, I mean.
17:21 DietCoke (unless someone is constructing packages based on svn revision, which would be... odd.
17:22 DietCoke what is "a snapshot package" ?
17:22 NotFound A daily snapshot of the repo.
17:22 Infinoid http://svn.perl.org/snapshots/parrot/
17:23 DietCoke We can probably have robert include that, sure.
17:27 moritz barney: I've seen no announcement on perlmonks.org - are you going to do that also?
17:28 NotFound tjh++
17:29 dalek r29492 | bernhard++ | remove_getfd:
17:29 dalek : [codingstd] Remove hard tab.
17:29 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29492
17:30 barney moritz: I'm not active there, so I skipped that. Please go ahead and announce it there.     Same for Reddit, Slashdot ...
17:30 moritz barney: ok, I'll post to perlmonks later
17:32 * DietCoke wonders if the .HLL mapping stuff is going to catch anyone's eye.
17:33 DietCoke barney: wrong branch?
17:34 NotFound Comments or ideas about pdb renaming?
17:36 DietCoke NotFound: perhaps pbc_debug to stick with our newfound pbc naming scheme.
17:36 barney DietCoke: trunk wasn't up to date
17:37 NotFound Parrot Byte Code debug? Makes sense.
17:37 dalek r29493 | bernhard++ | trunk:
17:37 dalek : [codingstd] remove hard tab
17:37 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29493
17:37 cotto_work just out of curiosity, how many people here use awk regularly?
17:37 cotto_work (N/y)
17:38 NotFound cotto_work: directly, or by using shell scripts that uses it?
17:38 barney re: pbc_debug    Can't we debug PIR as well?
17:38 cotto_work directly
17:38 NotFound barney: actually not.
17:39 jhorwitz DietCoke: what .HLL mapping stuff?
17:39 NotFound But what I mean is that it debugs at bytecode level, so the name makes sense.
17:40 barney pbc_debug++
17:43 DietCoke jhorwitz: .HLL_map doesn't seem to work anymore.
17:44 jhorwitz ah
17:44 jhorwitz i thought there was progress i didn't hear about...
17:44 jhorwitz but this is anti-progress
17:44 DietCoke nope. used to work, stopped some thousands of revisions ago. =-)
17:44 DietCoke I think I'm failing some of the tcl spec tests as a result.
17:45 DietCoke chromatic: ping
17:45 cjfields_ I think pmichaud is working on that (.HLL mapping)
17:45 cjfields_ maybe on a branch, but I'm not sure
17:45 DietCoke he's working on it for -pct- IIRC, not for the .HLL_map directive.
17:46 DietCoke so PCT can keep track of some of this before things ever get to aprrot.
17:46 * DietCoke stares at the mess that parcl is.
17:46 DietCoke "partcl"
17:49 chromatic on the phone with Anders Heljsberg
17:52 DietCoke Anders Heljsberg is he lead architect of C#
17:52 DietCoke no, Anders Heljsberg is the lead architect of C#
17:52 purl okay, DietCoke.
17:52 particle all we need... c# on parrot.
17:55 Zaba joined #parrot
17:59 NotFound monoparrot X-)
18:00 donaldh joined #parrot
18:02 chromatic I wouldn't worry about that just yet.
18:03 Zaba_ joined #parrot
18:04 DietCoke I would be happy with anything on parrot at this point. ^_-
18:05 chromatic pancakes?
18:05 purl i guess pancakes is "Don't! take pancakes off my plate and ruin my day."
18:06 * DietCoke feels like crap and ponders just going home now.
18:06 moritz I'll not be available for #parrotsketch tonight
18:06 NotFound tools/dev/mk_language_shell.pl anything
18:06 NotFound That makes you happy?
18:06 * DietCoke presumes NotFound is joking.
18:06 particle moritz: feel free to pre-paste your report
18:07 Tene Looks like I might not be here for #ps
18:07 NotFound DietCoke: Trying, at least
18:10 pmichaud I've been working on getting PCT to understand HLL namespaces in preparation for using .HLL and .HLL_map, but I'm not using .HLL_map yet.
18:10 pmichaud (not even in the branch)
18:10 pmichaud but I'm hoping we can start using it soon.
18:11 pmichaud thus it better work :-)
18:12 wknight8111 joined #parrot
18:12 DietCoke pmichaud: pretty sure it's ingored completely these days.
18:12 DietCoke "ignored"
18:12 DietCoke but I'll be happy to find myself proven wrong. =-)
18:13 NotFound Did we have some test for it?
18:14 chromatic I remember unbreaking it at least once.
18:14 DietCoke Well, part of the problem is that there's no defined set of what it's supposed to do. (ticket open for that)
18:14 DietCoke so you may have fixed part of it, but not the part I cared about.
18:14 NotFound t/library/hllmacros.t ?
18:14 DietCoke ... that's something else entirely.
18:15 Zaba joined #parrot
18:15 DietCoke (which I did add tests for, after it lay broken for years. =-)
18:16 chromatic Yeah, it's difficult to unbreak things without tests.
18:17 DietCoke it's hard to write tests without a spec. =-)
18:17 DietCoke (yes, yes, I could just go write the spec. sometimes I like just being the crotchety HLL programmer.)
18:18 DietCoke chromatic: see tcl's runtime/builtin/list.pir for an example of a HLL_map workaround.
18:18 DietCoke (at one point, :slurpy gave me a TclList instead of a ResizablePMCArray)
18:18 NotFound chromatic: did you look at the last messages about RT#39669?
18:20 DietCoke (trying without it now)
18:22 wknight8111 (unbreaking things)++
18:22 DietCoke nope, still borked.
18:23 chromatic NotFound, I think RT #39669 is okay now.
18:23 chromatic Let me review the tests, but I think you're right.
18:23 NotFound (closing old tickets)++
18:24 DietCoke chromatic: I'll see about adding a test for the particular HLL_map feature that's borked there.
18:24 chromatic NotFound, close it.
18:24 chromatic DietCoke, thanks.
18:24 NotFound Good.
18:27 wknight8111 "nope, still borked" is like the catch phrase for my entire project
18:28 chromatic #ps in 3
18:31 Zaba joined #parrot
18:48 chromatic japhb: the register alligator improvements are that it wastes less memory and has a smaller t in its awful O(t * n^8) behavior.
18:49 japhb n^8 ?!?
18:49 japhb Holy cow
18:49 purl Holy cow is here's the play at the plate... holy cow, I think he's gonna make it!
18:50 japhb I honestly don't think I've ever seen an algorithm between n^5 and 2^n before
18:50 japhb I heard about an n^7 once ...
18:51 chromatic 8 could be an estimate.
18:51 chromatic t is at least 8
18:51 chromatic n^4 is more likely though.
18:52 japhb sigh, afk again ... I'll have to ask more about it later, I guess.
18:52 chromatic If you're motivated, you could own it.
18:53 wknight8111_ joined #parrot
18:56 DietCoke left #parrot
19:19 Zaba_ joined #parrot
19:48 dalek r29494 | bernhard++ | trunk:
19:48 dalek : [docs] Add escape sequence \" in double quoted strings.
19:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29494
19:54 Zaba joined #parrot
19:55 dalek r29495 | allison++ | trunk:
19:55 dalek : [pdd] Clarification on literal strings from #parrotsketch meeting.
19:55 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29495
20:23 japhb chromatic_lunchy: motivated, yes.  Have time, not so much (I haven't even had OpenGL hacking time, and that's saying something).  Still ... is there already an RT open for it?
20:24 japhb (er, it == register allocator algorithmic slowness)
20:27 iblechbot joined #parrot
20:33 Theory joined #parrot
21:03 Sartak joined #parrot
21:06 dalek r29496 | julianalbo++ | trunk:
21:06 dalek : Rename pdb to parrot_debugger after Reini Urban suggestions and later discussion
21:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29496
21:07 grim_fandango joined #parrot
21:11 chromatic joined #parrot
21:11 chromatic japhb, no real ticket anywhere.
21:11 chromatic I sent a message to the list three weeks ago about it.
21:11 japhb If you've still got it in your sent mail, just resend it to parrotbug.  :-)
21:12 NotFound I think there is a ticket that mentions that some routines are unable to handle register numbers greater than 255
21:12 NotFound Beacuse they use an unsigned char for the number.
21:16 Tene NotFound: limiting registers to 255 keeps that n^8 in the register allocator low. ;)
21:16 dalek r29497 | Whiteknight++ | gsoc_pdd09:
21:16 dalek : [gsoc_pdd09] update to trunk r29495
21:16 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29497
21:19 Zaba joined #parrot
21:20 chromatic The problem with the n^8 is that IMCC uses SymReg everywhere for any kind of symbolic entity in PIR, not just registers -- constants, Subs, everything.
21:20 NotFound Tene: don't know if the limit in the amount of registers is reasonable, but the in his numbers is not.
21:21 chromatic That means when the alligator wants to look at all registers, it has to loop through all of the SymRegs in the current compilation unit and filter out only register registers.
21:21 chromatic Oh, and if it wants to look at only P-regs or S-regs, it still has to loop.
21:21 chromatic And loop.  And loop.  And loop.
21:23 leo another historic design flaw - greetinx all
21:23 chromatic Anyway, my conclusion in that message was that fixing it meant rewriting a lot of IMCC, which may not be worth it.
21:25 Whiteknight ...and that brings us back to the bigger question: How much work needs to be done to make PIRC take over the job?
21:26 chromatic We need a good way to generate PBC in memory or on disk.
21:26 chromatic POST -> PBC would be most ideal.
21:26 chromatic For various reasons which should be obvious.
21:28 leo register allocation written in PIR???\
21:28 NotFound The pdd about pbc format reflects the current state or the intended changes?
21:28 chromatic Why not write one in PIR?
21:28 leo speed?
21:28 purl speed is, like, too subjective, I think
21:28 leo HA
21:31 leo soryy, but the best efforts in C so far are slow
21:32 Zaba_ joined #parrot
21:33 leo with PIR you take a factor of x200 (average interpreter slowdown for Joe Averages's code)
21:33 chromatic Our best efforts in C are algorithmically awful.
21:33 chromatic Even the naive allocator.
21:34 cjfields joined #parrot
21:36 leo there is only compilers/imcc/reg_alloc.c - where are the others?
21:39 chromatic There are two allocators in there.  The interesting one is #defined out.
21:44 * Whiteknight sees a massive need for function-level documentation in reg_alloc.c
21:47 leo is still the vanilla_reg_alloc in charge?
21:50 chromatic Yes.
21:57 toft joined #parrot
21:59 toft left #parrot
22:00 leo well, if there's a faster C algorithm (which is hard) then you could translate that to PIR ;)
22:02 chromatic It wouldn't surprise me if a better implementation of the same algorithm would be faster.
22:03 leo different algorithm, yes
22:04 leo or moving the inner loops re (I,P,N,S) outside
22:04 Zaba joined #parrot
22:07 Whiteknight is there a standard error-message function I can call that doesn't require an interp parameter?
22:08 Whiteknight i know internal_exception does it, but I thought that function was being phased out
22:09 Zaba_ joined #parrot
22:10 chromatic You don't have an interpreter?
22:11 Whiteknight in config/platforms/win32/env.c:Parrot_setenv
22:11 Whiteknight I'm fixing that function up and want to fill in some of the warnings slots, but no interp argument
22:12 NotFound internal_exception is intended to just die with a more or less nice message, I think.
22:14 Zaba joined #parrot
22:20 Whiteknight yeah, but I heard that internal_exception was being phased out
22:21 Whiteknight maybe i misunderstood that error
22:22 NotFound By the way, GetEnvironmentVariable is macro that can map to the unicode or ansi version. The current Parrot_getenv interface is not able to handle encoding and charset issues.
22:23 NotFound Whiteknight: maybe a change in name, but we always need a way to say "Completely unable to keep working in a sane way"
22:24 Whiteknight I'll use internal_exception now, then. We can ack it later if we want to change it
22:28 NotFound Under the current interface, you can only do that, or just ignore the errors.
22:28 chromatic Whiteknight, it gets renamed in pdd25cx.
22:29 NotFound Not ignoring we can at least know possible problems.
22:29 chromatic At least, if I'm not confusing internal_exception and real_exception.
22:34 teknomunk joined #parrot
22:34 Zaba_ joined #parrot
22:40 Limbic_Region joined #parrot
22:42 Whiteknight anybody want to give a second opinion on rt#56968? I think we can close it pretty quick unless there's a problem
22:44 Whiteknight I'm going to need to check out pdd25cx and play around with it i guess
22:44 Zaba joined #parrot
22:50 chromatic Go ahead and remove it, Whiteknight.
22:51 Whiteknight That's all I needed to hear
22:52 Whiteknight I found this while trying to clean out my rt backlog, so I'm not shirking my GC duties
22:54 chromatic You can clean out my RT backlog too.  I don't mind.
22:54 chromatic I'll probably be useless next week too; Foo Camp + working in the office + OSCON = tired.
22:55 NotFound It hink that if we want a warning function able to be called without an interpreter if mus be declared in extern.h and follows his guidelines.
22:55 NotFound s/if mus/it must
22:55 chromatic How do we know which filehandle to print the warning to without an interpreter?
22:56 NotFound Just ignore, or write something to stderr.
22:56 Whiteknight I agree. last ditch effort -> spam stderr
22:56 Whiteknight at that point, you have bigger problems to solve then proper logging of your output handle
22:57 NotFound But while we don't know if we want, do not write it.
22:58 NotFound The function, not the message ;)
23:01 chromatic Right.
23:05 dalek r29498 | Whiteknight++ | trunk:
23:05 dalek : [core] Remove function Parrot_warn_s, which was unused except in a few tests. Also, remove those tests.
23:05 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29498
23:08 Psyche^ joined #parrot
23:08 cotto_work does taking a ticket mean I *will* fix it, or just that I intend to when I get the tuits?
23:10 Whiteknight I've been interpreting it as the late
23:10 Whiteknight later *
23:10 NotFound cotto_work: I think is just way of saying: if you start to work in this, talk with me first, please.
23:11 Whiteknight or "I'm going to lead the way"
23:12 NotFound At least it is how must be seen, whatever the intention of the owner.
23:13 kid51 joined #parrot
23:13 NotFound The intention, looks like is almost always the second.
23:14 NotFound When I take the pdb rename some hours ago, it was the first ;)
23:21 Zaba_ joined #parrot
23:29 ruoso joined #parrot
23:37 kid51 purl is apparently no longer handling private messages
23:40 Whiteknight purl is lazy
23:41 Whiteknight purl?
23:41 purl yes, Whiteknight?
23:43 kid51 purl, why did you tell me:  "Sorry, I've never seen particle before."?
23:43 purl kid51: bugger all, i dunno
23:46 teknomunk_ joined #parrot
23:48 dalek r29499 | jkeenan++ | trunk:
23:48 dalek : Merge noautopack branch into trunk per http://rt.perl.org/rt3/Tic​ket/Display.html?id=56928.  This deletes configuration step auto::pack and an associated test file.
23:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29499
23:48 dalek r29500 | jkeenan++ | noautopack:
23:48 dalek : Branch has been merged into trunk and is no longer needed at head.
23:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29500
23:49 dalek r29501 | jkeenan++ | noautopack-29452:
23:49 dalek : Branch to which tag corresponded has been merged into trunk, so tag may be
23:49 dalek : deleted.
23:49 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29501
23:52 bacek_ joined #parrot
23:59 dalek r29502 | jkeenan++ | parallel:
23:59 dalek : Correct two errors:  "my" variable ... masks earlier declaration in same scope.
23:59 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=29502

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

Parrot | source cross referenced