Camelia, the Perl 6 bug

IRC log for #parrot, 2010-03-28

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:01 hercynium joined #parrot
00:04 mikehh forgot to report: All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32872), fulltest) at r45215 - Ubuntu 9.10 amd64 (g++ with --optimize)
00:12 dalek parrot: r45217 | cotto++ | branches/profiling_testing/runtime/p​arrot/library/ProfTest/Matcher.nqp:
00:12 dalek parrot: [profiling] code cleanup
00:12 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45217/
00:12 dalek parrot: r45218 | cotto++ | branches/profiling_testing (2 files):
00:12 dalek parrot: [profiling] use pbc_merge to build ProfTest.pbc
00:12 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45218/
00:46 Andy joined #parrot
01:07 Andy My parrot brothers and sisters, there is goodness a-comin'!
01:11 sjn yay! \o/
01:13 kid51 joined #parrot
01:16 Andy Headerizer now runs on PMC
01:18 dalek parrot: r45219 | petdance++ | trunk (85 files):
01:18 dalek parrot: headerizer now runs on PMC files
01:18 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45219/
01:19 ttbot Parrot trunk/ r45219 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/241673.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
01:44 Austin cotto:   sub foo(*@pos, *%named) { bar(|@pos, |%named); }
01:44 slavorgn joined #parrot
01:45 ttbot Parrot trunk/ r45220 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/241737.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
01:51 dalek parrot: r45220 | petdance++ | trunk/src/pmc (2 files):
01:51 dalek parrot: protecting args with ARG* macros
01:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45220/
01:52 Infinoid Andy: Looks like win32 is barfing on the BIGINT typedef.  Can those prototypes go into an "#ifdef PARROT_BIGNUM_CAN_BIGINT" clause?
01:52 Andy I'm working on it, Infinoid
01:52 Infinoid Andy++
01:56 Mokurai1 joined #parrot
01:59 nopaste "kid51" at 70.85.31.226 pasted "[codingstd] C args assert failure" (11 lines) at http://nopaste.snit.ch/20120
01:59 kid51 Andy:  Are those failures a side effect of what you're doing with headerizer for PMCs?
02:08 dngor joined #parrot
02:09 Andy yes
02:10 arnsholt purl: msg whiteknight Bare (very bare) bones of my Prolog project at http://github.com/arnsholt/parrotlog. Basing it on the draft ISO spec (d8.tar) at http://www.cs.cmu.edu/afs/cs/project/ai-rep​ository/ai/lang/prolog/doc/standard/0.html
02:10 purl Message for whiteknight stored.
02:19 Austin arnsholt: That's pretty minimal. How much does it work?
02:21 arnsholt Not at all =)
02:21 arnsholt But it's four thirty in the morning, and I don't have any of my reference books with me
02:21 Austin Heh
02:21 arnsholt So I'm calling it a night and saving my work
02:21 Austin wfm
02:22 Austin Enjoy the rest of your weekend.
02:22 arnsholt And whiteknight said he was interested in Prolog on Parrot, so I figured I'd tell him that I'd made what little I've done public
02:22 arnsholt Thanks. You too =)
02:36 dngor joined #parrot
02:37 ttbot Parrot trunk/ r45221 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/241807.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
02:40 dalek parrot: r45221 | petdance++ | trunk/src/pmc (2 files):
02:40 dalek parrot: protecting arguments, and I hope the reorganizing of the typedefs fixes the Win32 failures
02:40 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45221/
02:47 Andy are any of you on Windows?
02:48 janus joined #parrot
02:55 sorear Andy: So I can use headerizer in my extensions now?
02:55 Andy I don't know.
02:55 Andy what are your extensions?
02:56 ttbot Parrot trunk/ r45222 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/241859.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
02:56 sorear Andy: P5Scalar, P5Interpreter, etc
02:57 Andy I don't know what they are
02:57 dalek parrot: r45222 | petdance++ | trunk/src/pmc (2 files):
02:57 dalek parrot: protecting arguments in statics
02:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45222/
02:57 Andy headerizer isn't a general-purpose tool really
03:09 tetragon joined #parrot
03:19 Mokurai1 joined #parrot
03:36 Mokurai1 joined #parrot
03:38 Mokurai1 joined #parrot
03:46 dalek parrot: r45223 | petdance++ | trunk/src/pmc (2 files):
03:46 dalek parrot: Add more ARG* protectors, and removed a commented-out block that was choking the Pmc2c program
03:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45223/
03:47 ttbot Parrot trunk/ r45223 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/241940.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
04:03 dalek parrot: r45224 | petdance++ | trunk/src/pmc/unmanagedstruct.pmc:
04:03 dalek parrot: protecting args in static
04:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45224/
04:07 Andy ping Infinoid
04:07 ttbot Parrot trunk/ r45224 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/242006.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
04:09 Andy Infinoid: No, the headerizer can't carry over #ifs like that.
04:23 dngor joined #parrot
04:43 ttbot Parrot trunk/ r45225 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/242089.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
04:51 eternaleye joined #parrot
04:51 dalek parrot: r45225 | petdance++ | trunk/src/pmc/bignum.pmc:
04:51 dalek parrot: No headerizing the functions that rely on BIGINT
04:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45225/
05:17 cotto joined #parrot
05:24 dalek parrot: r45226 | petdance++ | trunk/src/pmc (3 files):
05:24 dalek parrot: adding ARG* macros
05:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45226/
05:30 ttbot Parrot trunk/ r45226 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/242186.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
05:40 dalek parrot: r45227 | petdance++ | trunk/src/pmc/bignum.pmc:
05:40 dalek parrot: hide away the BIGNUM functions so Win32 will not barf
05:40 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45227/
05:48 cotto austin++
05:48 cotto clearwire--
05:49 ttbot Parrot trunk/ r45227 darwin-thread-multi-2level make error http://tt.taptinder.org/file/cmdout/242256.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
06:00 Andy I do believe that r45229 will take care of it all
06:09 ttbot Parrot trunk/ r45228 darwin-thread-multi-2level make error http://tt.taptinder.org/file/cmdout/242330.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
06:13 dalek parrot: r45228 | petdance++ | trunk/src/pmc (2 files):
06:13 dalek parrot: protect args with ARG*() macros
06:13 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45228/
06:13 dalek parrot: r45229 | petdance++ | trunk/src/pmc/bignum.pmc:
06:13 dalek parrot: sync up definition of dummy function
06:13 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45229/
06:29 dalek parrot: r45230 | petdance++ | trunk/src/pmc (2 files):
06:29 dalek parrot: protecting more function args with ARG*() macros
06:29 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45230/
06:34 dngor joined #parrot
06:46 dalek parrot: r45231 | petdance++ | trunk/src/pmc (2 files):
06:46 dalek parrot: Protecting static funcs with ARG*() macros.  Only two more PMC files left to whack.
06:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45231/
06:46 dalek parrot: r45232 | cotto++ | branches/profiling_testing (3 files):
06:46 dalek parrot: [profiling] various profiling testing fixes
06:46 dalek parrot: fix Matcher init bugs, fix Want init bugs, add get_str to Want subclasses
06:46 dalek parrot: use flattening in syntatic sugar subs
06:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45232/
07:25 fperrad joined #parrot
07:35 cotto joined #parrot
07:54 eternaleye joined #parrot
08:26 chromatic joined #parrot
09:06 bacek joined #parrot
09:34 snarkyboojum joined #parrot
10:02 dalek parrot: r45233 | chromatic++ | trunk/src/hll.c:
10:02 dalek parrot: [src] Removed an unnecessary exists-before-fetch from Parrot_get_HLL_id(); this
10:02 dalek parrot: speeds up the benchmark of Rakudo startup by 0.573%, which isn't that
10:02 dalek parrot: impressive, except for the next commit....
10:02 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45233/
10:02 dalek parrot: r45234 | chromatic++ | trunk/src/pmc/orderedhash.pmc:
10:02 dalek parrot: [PMC] Removed an unnecessary temporary PMC and the comcomitant delegation from
10:02 dalek parrot: OrderedHash PMC's get_pmc_keyed_str(); the resulting optimization speeds up
10:02 dalek parrot: Rakudo startup by 2.631%.
10:02 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45234/
10:02 dalek parrot: r45235 | bacek++ | trunk/src/pmc/callcontext.pmc:
10:02 dalek parrot: Headerize CallContext PMC
10:02 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45235/
10:02 dalek parrot: r45236 | bacek++ | trunk/src/pmc/class.pmc:
10:02 dalek parrot: Headerize Class PMC
10:02 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45236/
10:15 bacek A lot of karma for mikehh coming :)
10:18 dalek parrot: r45237 | mikehh++ | trunk/src/pmc/bignum.pmc:
10:18 dalek parrot: fix codetest failure - parentheses should not have space immediately after the opening parenthesis
10:18 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45237/
10:18 bacek Here we go! :)))
10:20 sorear What's the best way to hold references from outside Parrot?
10:21 sorear Parrot_pmc_register doesn't nest, so it will break if somebody tells me to hold two references to the same object
10:22 mikehh bacek: also got a lot of assert_args failures in .pmc's
10:23 mikehh kid51 pointed it out earlier but only got to look at it now
10:24 sorear AddrRegistry seems relevant, BUT, I don't see an easy way to associate an AddrRegistry with a Parrot_Interp
10:26 bacek sorear, probably easiest way to create singleton PMC which will hold pointers to all "externally" handled PMCs. E.g. ResizeblePMCArray registered with Parrot_pmc_register
10:51 dalek parrot: r45238 | mikehh++ | trunk/src/pmc/sub.pmc:
10:51 dalek parrot: fix codetest failure - unused assert macros
10:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45238/
12:17 Whiteknight joined #parrot
12:18 Whiteknight good morning #parrot
12:18 arnsholt Morning
12:22 bacek Morning? What you are talking about?
12:26 Whiteknight bacek: it is morning. Your clock must be broken
12:26 bacek Whiteknight, it's almost Sunday's midnight. Welcome to the future!
12:26 Whiteknight "Welcome to the world of tomorrow!"
12:28 dalek parrot: r45239 | bacek++ | trunk/src/pmc/unmanagedstruct.pmc:
12:28 dalek parrot: Use ASSERT_ARGS in UnManagedStruct helper functions.
12:28 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45239/
12:31 arnsholt Whiteknight: I sent a message to you with a lower case w via purl. Hopefully your upper cased alter ego gets it too =)
12:31 Whiteknight arnsholt: yes, I got it and have been looking at the project
12:32 arnsholt Ah, great. As you can see it's not much
12:32 arnsholt And the grammar is probably all kinds of weird, being written at three in the morning, but it's a start at least
12:34 Whiteknight it's okay, I've written worse
12:34 khairul joined #parrot
12:36 arnsholt One nice thing is that the spec grammar is operator precedence based. Should fit nicely with nqp-rx
12:38 dngor_ joined #parrot
12:45 dalek parrot: r45240 | bacek++ | trunk/src/pmc/stringhandle.pmc:
12:45 dalek parrot: Use ASSERT_ARG in StringHandle helper functions.
12:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45240/
12:45 dalek parrot: r45241 | bacek++ | trunk/src/pmc/role.pmc:
12:45 dalek parrot: Use ASSERT_ARG in Role helper functions.
12:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45241/
12:45 dalek parrot: r45242 | bacek++ | trunk/src/pmc/parrotthread.pmc:
12:45 dalek parrot: Use ASSERT_ARGS in ParrotThread.
12:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45242/
12:45 dalek parrot: r45243 | bacek++ | trunk/src/pmc/parrotinterpreter.pmc:
12:45 dalek parrot: Use ASSERT_ARGS in ParrotInterpreter
12:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45243/
12:58 lucian joined #parrot
13:06 dngor joined #parrot
13:06 cotto joined #parrot
13:12 dalek rakudo: 0577068 | moritz++ | Test.pm:
13:12 dalek rakudo: [Test.pm] give better diagnostic output in isa_ok()
13:12 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​5770683ef9b7d0e9790886622c6f5895cc19123
13:12 dalek rakudo: 8f7d293 | moritz++ | t/spectest.data:
13:12 dalek rakudo: run S04-statement-parsing/hash.t
13:12 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​f7d293a6ba3a9ce4efea3278c58a5edf0210edc
13:14 cotto joined #parrot
13:29 Whiteknight purl msg Austin in TT #1497, do you prefer option #1, or option #2? I suggest #1 would be easier to implement, but would be more expensive because we have to walk the MRO looking for an override before checking the cache
13:29 purl Message for austin stored.
13:36 arnsholt Popquiz: Does any one know (without looking =) how ISO Prolog does octal and hex escape sequences in strings? (They're weird) =)
13:36 * moritz has no idea
13:40 arnsholt \$octaldigits\ and \x$hexdigits\ for some reason =)
13:41 * Coke stares at ovid's last post.
13:50 dalek joined #parrot
13:51 dalek parrot: r45244 | mikehh++ | trunk/src/pmc/null.pmc:
13:51 dalek parrot: fix codetest failure - unused assert macros
13:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45244/
13:51 dalek parrot: r45245 | mikehh++ | trunk/src/pmc/object.pmc:
13:51 dalek parrot: fix codetest failure - unused assert macros
13:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45245/
14:08 dalek parrot: r45246 | mikehh++ | trunk/src/pmc/namespace.pmc:
14:08 dalek parrot: fix codetest failure - unused assert macros
14:08 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45246/
14:09 TiMBuS joined #parrot
14:17 Whiteknight wtf, I had TT #1473 fixed, couldn't commit without updating. Updated, everything broke
14:19 Whiteknight Okay, I get test failures in trunk with no modifications
14:19 Whiteknight ugly, ASSERT_ARGS failures
14:24 dalek parrot: r45247 | mikehh++ | trunk/src/pmc/integer.pmc:
14:24 dalek parrot: fix codetest failure - unused assert macros - src/pmc/integer.pmc
14:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45247/
14:24 dalek parrot: r45248 | mikehh++ | trunk/src/pmc/imageio.pmc:
14:24 dalek parrot: fix codetest failure - unused assert macros - src/pmc/imageio.pmc
14:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45248/
14:24 dalek parrot: r45249 | mikehh++ | trunk/src/pmc/fixedbooleanarray.pmc:
14:24 dalek parrot: fix codetest failure - unused assert macros - src/pmc/fixedbooleanarray.pmc
14:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45249/
14:24 dalek parrot: r45250 | mikehh++ | trunk/src/pmc/eval.pmc:
14:24 dalek parrot: fix codetest failure - unused assert macros - src/pmc/eval.pmc
14:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45250/
14:39 ttbot Parrot trunk/ r45251 i386-linux-thread-multi make error http://tt.taptinder.org/file/cmdout/243656.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
14:40 dalek parrot: r45251 | mikehh++ | trunk/src/pmc/default.pmc:
14:40 dalek parrot: fix codetest failure - unused assert macros - src/pmc/default.pmc
14:40 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45251/
14:45 ttbot Parrot trunk/ r45252 i386-linux-thread-multi make error http://tt.taptinder.org/file/cmdout/243697.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
14:47 Whiteknight mikehh: build failure in src/pmc/default.pmc
14:51 tetragon joined #parrot
14:52 Austin msg purl messages
14:52 purl Message for purl stored.
14:52 Austin huh
14:54 Austin Whiteknight: I think the search requirement depends on whether you cache the overrides on the class. In general, I'd like to see the cache stay, since it probably does a lot for performance. But that means an interface for managing it.
14:57 dalek parrot: r45252 | mikehh++ | trunk/src/pmc/complex.pmc:
14:57 dalek parrot: fix codetest failure - unused assert macros - src/pmc/complex.pmc
14:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45252/
15:02 Mokurai1 joined #parrot
15:05 payload joined #parrot
15:17 ttbot Parrot trunk/ r45253 i386-linux-thread-multi make error http://tt.taptinder.org/file/cmdout/243812.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
15:21 mikehh just src/pmc/bigint.pmc to go - let's test for breakage first
15:21 ttbot Parrot trunk/ r45254 i386-linux-thread-multi make error http://tt.taptinder.org/file/cmdout/243845.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
15:29 dalek parrot: r45253 | mikehh++ | trunk/src/pmc/bignum.pmc:
15:29 dalek parrot: fix codetest failure - unused assert macros - src/pmc/bignum.pmc
15:29 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45253/
15:29 dalek parrot: r45254 | mikehh++ | trunk/src/pmc/complex.pmc:
15:29 dalek parrot: fix codetest failure - assert macro must be at top of function
15:29 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45254/
15:31 theory joined #parrot
15:40 jan joined #parrot
16:00 hercynium joined #parrot
16:02 dalek parrot: r45255 | mikehh++ | trunk/src/pmc/default.pmc:
16:02 dalek parrot: remove some extra characters that somehow got committed by mistake
16:02 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45255/
16:07 theory_ joined #parrot
16:10 lucian joined #parrot
16:34 dalek parrot: r45256 | mikehh++ | trunk/src/pmc/bigint.pmc:
16:34 dalek parrot: fix codetest failure - unused assert macros - src/pmc/bigint.pmc
16:34 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45256/
16:39 payload joined #parrot
16:48 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32880), fulltest) at r45256 - Ubuntu 9.10 amd64 (gcc with --optimize)
17:53 Austin msg coke I haven't seen any progress on that mscgen plugin issue. Have you?
17:53 purl Message for coke stored.
17:55 Coke Austin: I have not
17:55 Austin :(
18:03 contingencyplan joined #parrot
18:12 dukeleto joined #parrot
18:13 dukeleto 'ello
18:15 dalek tracwiki: v4 | Austin_Hastings++ | TreeUnit
18:15 dalek tracwiki: http://trac.parrot.org/parrot/wiki/​TreeUnit?version=4&action=diff
18:17 dukeleto plobsing: psql:plparrot.sql:3: ERROR:  could not load library "/home/leto/lib/postgresql/plparrot.so": /home/leto/lib/postgresql/plparrot.so: undefined symbol: Parrot_ResizablePMCArray_push_string
18:18 dukeleto plobsing: ah, looks like i should be using  Parrot_PMC_push_string
19:01 hercynium joined #parrot
19:16 mj41 mikehh: you probably know about r45246  http://tt.taptinder.org/report/pr-Parrot/do?tru​n-27959=on&trun-27908=on&trun-27910=on
19:25 iblechbot joined #parrot
19:42 allison joined #parrot
19:47 Coke allison: ALLISON!
19:47 purl allison is, like, Allison Randal <mailto:allison@parrot.org>
19:47 moritz fun in garbage-collection land: http://www.andymoore.ca/2010/03/mot​herfucking-as3-garbage-collection/
19:47 allison coke!
19:47 sorear bacek_at_work: Supposing I do that, how will I get a reference to the object?  I don't want to use a global here...
19:48 allison 61 failing tests?
19:49 allison I'm about to commit a small but deeply core refactor
19:50 allison the 61 failing tests predate the commit (i.e. revert, realclean, rebuild has identical failures)
19:53 Coke are these codingtest failures/
19:55 allison Coke: a few are, but also pge, oo, and pmc tests
19:56 Coke ->
20:08 dalek parrot: r45257 | allison++ | trunk/src/gc/alloc_resources.c:
20:08 dalek parrot: [cage] Break the compact_pool function into a collection of smaller static
20:08 dalek parrot: functions. No behavior changes, just code cleanups.
20:08 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45257/
20:17 Whiteknight joined #parrot
20:19 eternaleye joined #parrot
20:22 bacek joined #parrot
20:25 ash_ joined #parrot
20:36 dalek rakudo: 534afd8 | moritz++ | t/spectest.data:
20:36 dalek rakudo: we pass S10-packages/basic.t, now with quite different fudging than before
20:36 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​34afd83e364da0c17c5ea7f806845a0e2d1d7ce
20:46 chromatic joined #parrot
20:51 bacek Good morning
20:55 bacek Does anyone "prioritised Rakudo needs"?
21:00 chromatic TT #389, memory use, TT #1040, line numbers in annotations
21:01 bacek chromatic, I have no idea how MMD works...
21:02 bacek Hollei schitt. make test failures? What happened?
21:05 chromatic Okay, TT #389 for you then!
21:08 bacek In tt389_fix branch only MMD failures left afaik.
21:11 bacek (make test passed at r45259)
21:11 chromatic I thought they were inheritance failures, but I haven't looked since working on memory usage and performance.
21:11 sorear bacek: Supposing I do [Parrot_pmc_register a ResizablePMCArray], how will I get a reference to the object?  I don't want to use a global here...
21:12 chromatic If you're looking for something to do, we can replace the constant STRING storage Hash with a binary tree; that should give us some nice improvements.
21:12 bacek sorear, you'll keep it somehow on P5 side.
21:12 bacek chromatic, how that?
21:13 dalek parrot: r45258 | bacek++ | trunk/src/pmc/namespace.pmc:
21:13 dalek parrot: Fix Namespace.add_to_class arg guard.
21:13 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45258/
21:13 dalek parrot: r45259 | bacek++ | trunk/src/pmc/namespace.pmc:
21:13 dalek parrot: Rerun headerizer
21:13 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45259/
21:14 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32882), fulltest) at r45257 - Ubuntu 9.10 amd64 (g++ with --optimize)
21:15 bacek sorear, (yes, as "global" probably)
21:15 chromatic We can get rid of the nastiness of trying to hash C strings (which is somewhat expensive), and we can index on string length and encoding.
21:16 sorear bacek: Ick.
21:16 allison joined #parrot
21:16 bacek chromatic, we can just use constant STRINGs. It will be easier.
21:17 sorear the trouble is, "the P5 side" doesn't offer any good way to hold onto PMCs itself...
21:18 chromatic bacek, this is for the cache of constant STRINGs.
21:20 chromatic Didn't you want to remove cstring hashes a while ago?
21:20 bacek chromatic, yes I did.
21:21 bacek But implementing RB-tree will be worse from maintenance perspective.
21:22 chromatic Why?
21:22 bacek we already have hash.
21:22 bacek cstring hash is just add 2 more functions.
21:22 bacek RB-tree will add a lot of them.
21:23 chromatic Yeah, but the cost of making hash values of C strings is significant.
21:23 bacek If we are not going to rewrite Parrot into C++ and use std::map
21:23 bacek chromatic, any benchmarks?
21:23 chromatic I'm tempted to rewrite our hashes in C++.
21:24 chromatic I don't have a good benchmark here, but I expected a 5 or 6% improvement with the PBC constant STRING merging patch, and it was only about 2%, mostly due to hash overhead.
21:26 bacek "PBC constant string merging" uses STIRNGs, not cstrings.
21:27 chromatic We look them up with cstrings; the constant STRING cache uses cstrings for keys.
21:32 ash_ if your keys are always strings, I know the llvm has a specialized string map that has better performance than std::map for strings http://llvm.org/viewvc/llvm-project/llvm/tru​nk/include/llvm/ADT/StringMap.h?view=markup
21:33 ash_ well, strings as keys
21:42 pmichaud joined #parrot
21:44 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32883), fulltest) at r45259 - Ubuntu 9.10 amd64 (gcc with --optimize)
21:47 mikehh looking at http://smolder.plusthree.com/​app/projects/smoke_reports/8 we seem to getting some failures (not mine) probable without --optime - let me try that
22:02 bacek mikehh, jfyi, ASSERT_ARGS (and other assertions) ignored in --optimized builds.
22:08 Whiteknight bacek: so that's the problem. Somebody added an assertion that is too strict, and non-optimized builds fail
22:09 bacek Whiteknight, yes.
22:13 Whiteknight allison: ping
22:21 Whiteknight Yay! I'm happy with allison's comment on TT #1468
22:21 Whiteknight I think there are some big performance savings there if we do both things correctly
22:23 mikehh bacek: I just ran without --optimize on gcc and g++ and didn't get any coretest/test errors - Ubuntu 9.10 amd64
22:24 mikehh oh he's gone
22:26 Whiteknight mikehh: let me start the tests again
22:34 tcurtis joined #parrot
22:47 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32884), fulltest) at r45259 - Ubuntu 9.10 amd64 (gcc)
22:48 ruoso joined #parrot
22:49 mikehh the last tests I ran on r45259 were gcc with and without --optimize and g++ with) see smoke #32883. #32884 and #32882
22:50 mikehh I ran make corevm/make coretest make world/make test g++ without --optimize and all PASSed
23:05 chromatic sorear, read the documentation of the AddrRegistry PMC.
23:10 sorear chromatic: In order to do anything with an AddrRegistry PMC I need to know its address
23:11 sorear Since I don't understand the Parrot thread model, I don't want to use globals
23:24 chromatic Parrot_pmc_register() uses the AddrRegistry internally.
23:25 chromatic That should be all you need to do to ensure that a PMC or STRING you use survives Parrot GC.
23:44 Whiteknight chromatic: you have a minute?
23:47 chromatic Sure.
23:47 Whiteknight I am trying to get a second opinion on TT #1497.
23:47 sorear chromatic: Oh?  Thanks, that makes things much easier
23:47 Whiteknight I'm thinking a method on the Class PMC to clear the cache would be best, but there are a few other option
23:48 sorear I saw VTABLE_set_pmc_keyed and thought it was an ordinary hash
23:48 chromatic We need to detangle the guts of the cache from caching operations.
23:48 chromatic sorear, it manages the reference counts (so to speak) for you.
23:48 kid51 joined #parrot
23:49 Whiteknight chromatic: that is true, the whole thing does need a little bit of a refactor. But, that doesn't really inform what the final PIR-visible itnerface to it will be
23:53 snarkyboojum joined #parrot

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

Parrot | source cross referenced