Parrot 2.8.0 released | parrot.org Log: irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | close 25 tickets; remove deprecated items (especially CodeString);
Set by moderator on 24 September 2010.
00:04 bacek joined, patspam joined 00:11 dngor_ joined 00:12 dngor left 00:45 patspam left 01:20 whiteknight joined 01:23 dngor_ is now known as dngor
whiteknight good evening, #parrot 01:28
GeJ Good afternoon, whiteknight. 01:37
whiteknight hello GeJ 01:53
01:57 kid51 joined 01:58 patspam joined, patspam left
whiteknight GeJ: I was looking through the records that I have, and I don't see any CLA from you 01:59
particle may have more recent papers thta didn't make it into my electronic record, but I don't see it
02:11 kid51_ joined
dalek rrot: r49326 | jimmy++ | trunk/compilers/pct/src/PAST/Compiler.pir:
reverted retrogression introduced by r49325
02:13
02:14 kid51 left
bacek aloha, humans 02:15
kid51_ aloha bacek
02:15 kid51_ is now known as kid51
bacek kid51, hi 02:15
02:16 preflex left 02:19 preflex joined
GeJ whiteknight: if my getting a commit bit is still on topic, I could send a new CLA. However, I can't promise I can be productive. I can do a few codingstd fixes but anything more than that, I'll need some time to get myself up-to-date with the latest parrot needs. 02:25
whiteknight GeJ: okay, that's up to you. I just wanted to make sure you're informed about what's going on with regards to your paperwork
GeJ whiteknight: not that I'm not willing to, it's just that "free time" is not something I have in big quantity these days. 02:26
dalek rrot: r49327 | bacek++ | branches/generational_gc/src/gc/gc_ms2.c:
Fix comment
02:30
rrot: r49328 | bacek++ | branches/generational_gc/include/parrot/pobj.h:
Prune PObj flags
GeJ you just tell me. If a "commit bit for GeJ" topic gets general approval at a future #ps, I'll send a CLA. And who knows, that might motivate me to shake my ass and get back to parrot coding :)
whiteknight ok, will do 02:34
kid51 GeJ: I can suggest several roles for you to play in the project for which a commit bit would be essential.
GeJ: If you want, send me email about your specific interests, skills, etc.
GeJ: We will try to match those with our needs. 02:35
02:35 janus left
kid51 But get that CLA in ASAP. 02:35
NYC Rakudo Star group met today. We're going over the Using Perl6 PDF with a jagged comb ;-) 02:36
github.com/perl6/book/issues
plobsing is there a snappy name for R* user groups? constellations? 02:40
kid51 plobsing: Hmm, that one might have legs. 02:42
kid51 must sleep 02:43
GeJ Good night kid51 02:45
02:45 kid51 left 02:54 janus joined 03:03 AzureStone left 03:04 AzureStone joined 03:18 whiteknight left 03:50 petdance joined
dalek rrot: r49329 | bacek++ | branches/generational_gc/src/gc/gc_ms2.c:
Rename gc2's new_objects into root_objects to better explain semantics
03:55
rrot: r49330 | bacek++ | branches/generational_gc/include/parrot/pobj.h:
Add PObj flags to be used with GenGC
rrot: r49331 | bacek++ | branches/generational_gc (2 files):
Remove useless PObj_custom_GC_FLAG
rrot: r49332 | bacek++ | branches/generational_gc/include/parrot/pobj.h:
Add one more Gen GC flag
rrot: r49333 | bacek++ | branches/generational_gc/src/gc/gc_ms2.c:
Add draft spec for GenGC.
rrot: r49334 | bacek++ | branches/generational_gc/src/gc/gc_ms2.c:
Split C<objects> into 3 lists
rrot: r49335 | bacek++ | branches/generational_gc/src/gc/gc_ms2.c:
Split strings into 3 lists
bacek ok, last bit - actually implement Generations. Everything is prepared for it. 04:05
afk # shopping 04:06
dalek rrot: r49336 | bacek++ | branches/generational_gc/src/gc/gc_ms2.c:
Implement write barrier in GC MS2
04:12
05:01 plobsing left 05:04 contingencyplan joined 05:07 dduncan joined 05:08 dduncan left
dalek rrot: r49337 | petdance++ | trunk/src (2 files):
deleting unused variables
05:53
06:00 esskar left 06:01 esskar joined
dalek rrot: r49338 | petdance++ | trunk/src/hash.c:
removed unused var i
06:10
06:29 petdance left 06:43 fperrad joined 07:49 theory left
dalek kudo: 704698f | moritz++ | src/Perl6/BacktracePrinter.pm:
use backtrace_line for warnings

that way we get the file name and current sub name appear in warnings
08:55
rrot: r49339 | fperrad++ | trunk/tools/install/smoke_languages.pl:
[languages] clean environment for Lua
08:59
09:35 tadzik joined 10:31 cogno joined 10:38 bacek left 10:46 cogno left 10:52 whiteknight joined 10:53 cogno joined
whiteknight good morning, #parrot 11:09
11:27 cogno left 11:32 contingencyplan left 11:41 contingencyplan joined 11:42 cogno joined 11:52 cogno left
dalek kudo: d7ebff5 | moritz++ | src/core/Attribute.pm:
make Attribute stringify to the attribute name
11:57
12:00 contingencyplan left 12:22 bacek joined
whiteknight starts a test run on OpenSolaris 12:53
I haven't tested there in a long damn time
I think I only have gcc, g++, and suncc on there though 12:56
13:03 lucian joined 13:19 Patterner left 13:29 Psyche^ joined, Psyche^ is now known as Patterner
whiteknight blah. Testing failed. Hung on one of the GC tests 13:31
13:35 ash_ left 13:37 kid51 joined 13:42 plobsing joined 13:44 tadzik left
dalek rrot: r49340 | jkeenan++ | trunk/config/gen/makefiles/root.in:
Add to inline comment re purpose of PBC_TEST_FILES.
13:45
whiteknight t/op/gc-non-recursive.t seems to hang on my OpenSolaris box no matter which compiler I use 13:54
13:56 tadzik joined
mikehh whiteknight: had it hang on me , but couldn't reproduce it 13:57
not on OpenSolaris - aint got it here 13:58
whiteknight it looks like there's a typo in the test 14:02
dalek rrot: r49341 | jkeenan++ | trunk/t/op/gc-non-recursive.t:
Correct typo in test output.
kid51 I just fixed it
whiteknight kid51++
14:03 jan left
kid51 But gc-non-recursive.t didn't hang for me on either Darwin/PPC (with modified GC threshold setting) or Linux/i386. 14:03
14:08 patspam joined, patspam left, ruoso left 14:17 JimmyZ joined
JimmyZ gc-non-recursive.t hangs on windows :) 14:18
14:27 ruoso joined
whiteknight I added a printf statement there. It froze at iteration 796306 14:33
14:37 lucian left
dalek TT #1805 created by jkeenan++: GC threshold and other values need to be set during configuration 14:43
TT #1805: trac.parrot.org/parrot/ticket/1805
mikehh tests should not freeze, they should pass or fail, and if fail exit gracefully
whiteknight agreed 14:53
and this stupid OpenSolaris box doesn't have gdb on it 14:54
15:16 jan joined 15:21 petdance joined 15:27 kid51 left 15:30 lucian_ joined 15:33 JimmyZ left
dalek ast: 48f7ecf | moritz++ | S03-operators/range.t:
[range.t] fudge a test that my next rakudo commit will break
15:36
15:36 petdance left 15:46 whiteknight left
dalek kudo: 08dc36c | moritz++ | src/Perl6/BacktracePrinter.pm:
walk up to the first non-setting line when printing warnings
15:55
kudo: 8584a4f | moritz++ | src/core/Any.pm:
make "Use of uninitialized value in numeric context" a proper warning

This regresses one test that produces such a warning in a lives_ok block, because currently try { } catches warnings too, although it shouldn't.
15:58 lucian_ left 16:18 theory joined 16:34 lucian joined 16:52 ash_ joined 17:04 esskar left 17:05 esskar joined
dalek rrot: r49342 | jonathan++ | trunk/compilers/pct/src/PAST/Compiler.pir:
[pct] Add support for using the keyed version of get_attribute/set_attribute by supporting an optional second child in PAST::Var nodes of type attribute.
17:07
rrot: r49343 | nwellnhof++ | branches/gc_ms2_tuning:
Some work on GC MS2
rrot: r49344 | nwellnhof++ | branches/gc_ms2_tuning (11 files):
[gc] Add dynamic threshold to GC MS2

and ignores constant objects. The old code could lead to a lot more memory being used than accounted for, so rather low thresholds could still work very well. To address this, the default dynamic GC threshold has been increased to 75%. Note that these changes have not been applied to the old GC. It still uses the old accounting. Also cleanup string compacting code.
17:24
17:25 davidfetter left
rrot: r49345 | nwellnhof++ | branches/gc_ms2_tuning/src/gc (3 files):
[gc] Mark stack

as GC mark stack and iterate sequentially over the memory pools like in GC MS1. This is faster and saves a ton of memory.
rrot: r49346 | nwellnhof++ | branches/gc_ms2_tuning/src/gc (3 files):
[gc] Only use a single pass over string headers
17:43 theory left 17:46 Paul_the_Greek joined
Paul_the_Greek Howdy ho, kids. 17:47
17:56 theory joined 17:57 fperrad left 17:59 petdance joined 18:01 theory left 18:29 whiteknight joined 18:31 Paul_the_Greek left
whiteknight good afternoon, #parrot 18:37
nwellnhoff++ 18:47
dalek kudo: 0421d3e | moritz++ | src/Perl6/BacktracePrinter.pm:
fix potential offby1 error noticed by jnthn++
18:52
19:26 petdance left 19:28 ash_ left
cotto ~~ 19:30
19:33 jhelwig left, wagle left, wagle joined 19:34 jhelwig joined 19:46 lucian_ joined 19:49 lucian left
dukeleto it looks like t/pmc/threads.t fails when using -j : smolder.parrot.org/app/projects/rep...etails/260 19:54
19:55 jjore left
whiteknight blarg 19:59
mikehh dukeleto: a lot of the tests do not run in parallel - I have always had problems with t/pmc/threads.t in that respect 20:03
whiteknight dukeleto: what platform?
dukeleto whiteknight: linux 20:04
whiteknight x86?
mikehh dukeleto: you have to be careful for example trying to run make fulltest at the same time as make smoke - t/pmc/threads.t is one that can fail there
dukeleto whiteknight: yeah
mikehh: i ran "make -j3 smoke" 20:05
i am also using ccache, perhaps that could be part of it
that only effects the compile, so probably not
mikehh I don't think that the tests can be run with -j options - use TEST_JOBS=5 or something instead
try running make fulltest with -j and it will blow up 20:07
dukeleto mikehh: i have TEST_JOBS set, but I used -j as well for some reason. 20:08
mikehh dukeleto: it don't work AFAIK
dukeleto mikehh: it doesn't look like "make smoke" cares about TEST_JOBS 20:10
mikehh running test/harness in parallel just does not seem to work t/pmc/threads.t and t/pmc/timer.t are ones that blow up if run in parallel - probably others
dukeleto mikehh: does TEST_JOBS actually work for you if you do a "make smoke" ? 20:11
whiteknight it shouldn't
mikehh dukeleto: dunno, I run make corevm with -j, make coretest with no -j and TEST_JOBS, I think make world blows up with just -j I usually use -j2 there after make corevm/make coretest) and then make test with TEST_JOBS 20:14
20:14 ash_ joined
dukeleto mikehh: -j with no number is usually a recipe for disaster. i just want to run tests in parallel, but "make smoke" seems to ignore TEST_JOBS 20:16
mikehh dukeleto: I ran some tests a while back and found on my system TEST_JOBS=40, ran in least elapsed time (on make coretest) but did slow anything else completely
dukeleto: let me look at that 20:17
dukeleto mikehh: i've tried doing "make TEST_JOBS=3 smoke" or having TEST_JOBS defined in my .bashrc, but I only see one test file running at a time 20:30
20:31 lucian_ left
dukeleto mikehh: make test works either way, but make smoke doesn't seem to respect TEST_JOBS 20:31
20:36 lucian joined
dalek TT #1806 created by dukeleto++: "make smoke" does not respect TEST_JOBS 20:40
TT #1806: trac.parrot.org/parrot/ticket/1806
mikehh dukeleto: if archive is set t/harness has a different invocation 20:47
dukeleto: if archive is set t/harness does not use TEST_JOBS 20:48
20:50 tadzik left
mikehh dukeleto: see t/harness line 63 - if ($longopts->{archive}) { - vs line 100 - else 20:51
dukeleto: don't know if the --archive option can handle multiple test jobs 20:53
whiteknight I doubt that it can 20:54
21:09 jjore joined
dukeleto mikehh: interesting 21:10
21:27 tadzik joined 21:30 petdance joined
mikehh dukeleto: TAP:Harness::Archive seems to collect all the test files and then deals with them individually, so TEST_JOBS wont do anything 21:37
dukeleto mikehh: what do you mean? 21:41
mikehh dukeleto: I commented on the ticket, but make smoke calls TAP::Harness::Archive rather than TAP::Harness and it collects the test files and then passes them individually to TAP::Harness 21:47
dukeleto: at least that's what I think it does 21:48
dukeleto: so it seems to get each result before passing onto the next one 21:49
dukeleto mikehh: thanks for the detective work. i think it is worthwhile to see if we can make TAP::H::A resepect TEST_JOBS
mikehh dukeleto: that might be a problem unless it keeps the output from the jobs separate 21:50
dukeleto: if you run coretest/test/fulltest with TEST_JOBS the output is often mixed up 21:51
dukeleto: you would need to get the output for each test in a separate file and then merge into the archive 21:52
dukeleto: it could be done, but would need care 21:54
22:02 petdance_ joined, petdance left
jnthn The Parrot implementation of 6model (my new Perl 6 meta-model implementation) today reached an interestingish stage (though still a long way to go): working pure prototype objects with methods and attributes. Now I've probably got enough in place to go and implement classes. :-) 22:15
tadzik jnthn++ :) 22:16
22:17 contingencyplan joined 22:31 nwellnhof joined, jhelwig left
whiteknight jnthn++ 22:35
jnthn: do you have any kind of prior art or research that you are basing your work on? 22:43
I'd be very interested to read any kind of resources that you have used 22:44
jnthn I've drawn on quite a lot. Some papers (some of which are linked from my blog, but I need to add more), smop, Moose, pmichaud's p6object which we currently use, CLOS, 2 and a half years of Rakudo development experience, looking at how JVM/CLR represent objects... 22:46
If you count Moose as a resource, reading it's source is interesting. Same for smop. 22:48
22:48 petdance_ left
jnthn I think I've got a different formulation of things than any individual one of those has, but there's elements of all of them. 22:49
I gotta sleep now, early start at $consulting-gig tomorrow. Catch me another time for more. :-)
whiteknight: Everything revolves around 3 types of data structure though. If any file gives an overview of that well, it's github.com/perl6/nqp-rx/blob/nom/sr...doobject.h 22:51
*gone* 22:52
whiteknight jnthn++
22:54 bacek left
mikehh whiteknight: found your blog post on design docs v interesting 22:56
whiteknight thanks!
I've been unhappy with the state of our PDDs for some time now, and I've never been certain what role they were supposed to play
mikehh whiteknight: I agree a serious review is required here
23:05 bacek joined
whiteknight especially with all these GC things going on now, I think it would be fantastic to have a guiding document that people with questions could refer to 23:06
in the past year the GC has changed pretty organically, for better or worse
23:09 kid51 joined 23:13 lucian left 23:15 tadzik left 23:31 petdance joined 23:44 nwellnhof left