Parrot 2.6.0 | parrot.org Log: irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | merge html_cleanup (talk to Coke), merge gc_* branches, fix/replace/optimize hashing
Set by moderator on 10 August 2010.
00:00 Psyche^ joined
Paul_the_Greek Do we have our own POD compilers, or do we use standard ones? 00:02
00:05 dngor joined
mikehh Paul_the_Greek: we generally follow the perl5 rules, and make html generates html from our pod, but html_cleanup branch is an attempt (not completed yet) to fix some deficiencies there 00:06
nqp-rx uses perl6 rules which are different 00:07
Paul_the_Greek So we have our own POD compilers? I just discovered "simple POD" in the code tree.
mikehh in terms of generation yes, as regards .c and ,pmc files 00:09
we include pod in c comments
Paul_the_Greek But then standard compilers to generate HTML from POD? 00:10
mikehh and tey need to follow the rules - t/codingstd/c_function_doc.t aand pmc_doc.t test for this and other pod tests 00:11
Paul_the_Greek Yes, I noticed those tests.
mikehh html_cleanup branch is trying to simplify make html, which is quite complicated and is basically set up, but we need to work on indexing 00:15
00:17 allison_ joined
mikehh I was going to try and get it ready for the release, but *real life^ intruded and I did not have time for it, will probably work on it for the next release 00:17
Paul_the_Greek Is there a list of the tasks? 00:18
mikehh not really up to date, again will try and sort it out real soon now :-} 00:19
or get coke to do it :-}
Paul_the_Greek Perhaps I can help later on if there is still work to do.
cotto_work trac.parrot.org/parrot/wiki/CleanupMakeHtml
mikehh All tests PASS (pre/post-config, make corevm/make coretest, test, fulltest) at r48536 - Ubuntu 10.04 amd64 (g++) 00:23
Paul_the_Greek There's a book that seems to be new. 00:30
00:31 dngor_ joined, lucian_ joined
kid51_at_dinner make fulltest: PASS: Darwin/PPC: r48536 00:34
dalek rrot: r48537 | mikehh++ | trunk/t/codingstd/pmc_docs.t:
remove src/pmc/null.pmc from TODO list of pmc_docs.t
00:41
kid51 Ah, the miracle that is 'gzip'! 00:46
When I run 'make test', then gzip the log file, it comes to 11550 bytes.
When I run 'make fulltest', then gzip the much larger log file, it comes to 11689 bytes: only 139 bytes more! 00:47
dalek rrot-linear-algebra: 9e126c6 | Whiteknight++ | :
<pre>m src/pmc/complexmatrix2d.pmc

m t/pmc/complexmatrix2d.t m t/run_test
  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>add item_at methods to PMC- and ComplexMatrix2D types. Fix the last lingering test failure with complex matrices. All important tests pass</pre>
00:50
01:01 kurahaupo joined 01:08 pgollucci joined
cotto ~~ 01:13
01:14 bacek_in_sing joined
dalek rrot: r48538 | jkeenan++ | trunk/src/pmc/object.pmc:
[codingstd] Insert POD 'item' so that documentor will know where to add
01:14
rrot: r48539 | jkeenan++ | trunk/src/pmc/namespace.pmc:
[codingstd] Insert POD 'item' so that documentor will know where to add
rrot: r48540 | jkeenan++ | trunk/src/pmc/nci.pmc:
[codingstd] Insert POD 'item' so that documentor will know where to add
rrot: r48541 | jkeenan++ | trunk/src/pmc/nci.pmc:
[codingstd] Make POD item meet linelength standard.
01:23 gbacon joined
mikehh I am going to switch to i386 version of Ubuntu to do some tests there - bbiab 01:39
01:45 petdance joined 01:54 mikehh joined
dalek rrot-linear-algebra: 2857f6d | Whiteknight++ | :
<pre>m src/pmc/complexmatrix2d.pmc

   <pre style='white-space:pre-wrap;width:81ex'>Implement Gemm for ComplexMatrix2D. Needs tests</pre>
01:55
01:59 whiteknight joined 02:04 ruoso joined
dalek rrot: r48542 | petdance++ | trunk/t/codingstd/pir_code_coda.t:
Improve the diagnostics
02:07
petdance tell me that frame_builder is still used 02:16
'cause I'm spiffing it up 02:17
cotto if so, it's been a while 02:18
petdance I'm not seeing how it IS used 02:20
cotto nm. I thought you were referring to a branch for some reason. 02:24
petdance no 02:25
02:31 ruoso joined
dalek rrot: r48543 | petdance++ | trunk/src/pmc (3 files):
reran headerizer
02:40
02:41 janus joined
mikehh Andy: perlcritic does not seem to like the extra tabstop=4 at line 65 in r48542 02:43
petdance perlcritic?
purl perlcritic is *very* unhappy about parrot. =-)
petdance specifically?
Or do you mean some .t file in Parrot?
mikehh # Failed test 'Test::Perl::Critic for "/home/mhv/parrot/t/codingstd/pir_code_coda.t"' 02:44
# at t/codingstd/perlcritic.t line 96.
#
# Perl::Critic found these violations in "/home/mhv/parrot/t/codingstd/pir_code_coda.t":
# Missing properly located perl coda for parrot source at /home/mhv/parrot/t/codingstd/pir_code_coda.t line 85
petdance OK, so that's not actually Perl::Critic
looking
mikehh sorry me above comment should have been line 85 not 65 02:46
my
02:49 bacek_in_sing joined
atrodo cotto> ping 02:51
mikehh bacek_in_sing: what you doin' there, you cannot be a proper codin' robot if you aint home? 02:53
bacek_in_sing I'm just quite busy with work project...
atrodo bacek_in_sing> i thought parrot was your work
03:04 ruoso joined
cotto atrodo, pong 03:06
atrodo cotto> github.com/atrodo/lorito/blob/master/t/90_fib.t # I have calls working 03:07
and i correctly calculate the 20 fib number. But if I try 30 or 40, my little box runs out of memory
mikehh atrodo: you need to try caching it :-} 03:09
atrodo mikehh> Real men use recursion! That, and it was far more interesting this way. 03:10
cotto Is that using CPS?
atrodo especially since I have no GC
cotto> mostly yes, sort of no
cotto has yet to wrap his head around a CPS fibonacci implementation 03:12
atrodo it has a result context that you can set, but you don't have to use it
dalek rrot: r48544 | petdance++ | trunk/t/codingstd/pir_code_coda.t:
reverted a coda that made perlcritic.t cranky
03:13
atrodo well basically, if I wanted to switch to purely CPS, i would remove the implied context return at the end of each block 03:14
cotto so it *can* work with pure CPS? That's a big plus.
atrodo and in order to return, you have to pass a context into the block, and the block has to call that context 03:15
afaict, it can work with pure CPS
that is, assume I understand pure CPS well enough
cotto any reason for ALL THE CAPS? 03:16
atrodo no, i'm just inconsistent 03:17
mikehh petdance: I just love that one - the perl coda in pir_code_coda.t was failing :-}
tcurtis (define (fib n k) (cps- n 1 (lambda (n1) (cps- n 2 (lambda (n2) (cps+ n1 n2 k)))))) is CPS fib in Scheme, I think. 03:18
cotto surprisingly, that might help 03:19
tcurtis Which is probably a great deal easier than CPS fib in M0.
cotto quite
plobsing tcurtis: where does it handle the base case? 03:20
tcurtis oops..
forgot about that bit.
cotto and the recursion?
purl i think the recursion is see recursion unless $mtfnpy;
tcurtis messed that up terribly.
cotto takes it as a warning 03:21
atrodo a warning against cps or scheme?
tcurtis will write a probably working version in a moment. This time with multiple lines and everything.
Chandon I find CPS easier to think about with the return continuation as a "separate" argument.
cotto actually, this reminds me of trying to wrap my head around recursion back in college, except turned inside-out 03:22
plobsing rakudo instantiates 14 PCT::HLLCompiler objects. Anyone have any ideas about why or how to find out? (parrot_debugger doesn't seem to work at all) 03:25
s/rakudo/rakudo startup/ 03:27
Chandon Point gdb at it? 03:28
cotto that wouldn't help.' 03:29
you'd need a pir-level backtrace
plobsing cotto: that would be ideal. any idea how to get one of those easily without throwing/dying 03:30
s/dying/dieing/
cotto use gdb and call PDB_backtrace 03:31
tcurtis gist.github.com/528320 # hopefully less broken CPS fib in scheme. 03:32
cotto It just takes an interp
atrodo tcurtis> (never learned scheme) k is the continuation? 03:34
tcurtis Right.
I'm writing up a version that uses non-CPS versions of =/+/- since that seems much more likely in Lorito. 03:35
cotto they'll just be ops in Lorito 03:36
tcurtis updated the gist with a version that uses non-cps =/+/-. 03:38
cotto much less confusing 03:40
still confusing, but substantially less than before
does it run?
tcurtis hasn't tried it. 03:41
I don't seem to have a Scheme installed.
mikehh All tests PASS (pre/post-config, make corevm/make coretest, test, fulltest) at r48544 - Ubuntu 10.04 i386 (g++) 03:51
mikehh needs a break - bbl 03:52
pmichaud mikehh: eta to release? 03:56
plobsing: 14 seems slightly high, but wouldn't surprise me too much 03:57
I have a patch for nqp-rx that gives about a 9% improvement in Rakudo's parsing speed.... should I commit it to Parrot or wait until after the release? 04:07
s/parsing speed/compile speed/
plobsing pmichaud: my curiosity was piqued by someone on #perl6 complaining that rakudo startup slurps the same file 14 times 04:09
(config.fpmc)
petdance THAT IS WHY PERL 6 SUCKS SO MUCH LOL YOU LOSERS 04:10
pmichaud plobsing: hmmm, checking
petdance I would just like to toot my own horn right now and point out how much traction my mention of vim + Perl 6 is getting out there.
Every time we mention Perl 6 outside of the strictly-Perl community, we build mindshare. 04:11
pmichaud plobsing: how was the 14 count determined, ooc?
plobsing strace, followed up by tracing statements.
s/tracing statements/debug printing/
petdance pmichaud: And even more, is there some way we could automate that? The tracking of what's opened when?
pmichaud petdance: I suspec that "we" would have to include someone other than "me" 04:12
*suspect 04:13
plobsing: how is config.fpmc tied to PCT::HLLCompiler, ooc?
plobsing I cached the reading of config.fpmc in config.pir, but the GC cost of a large, long-lived object overshaddows any benefit we may gain. It eliminated ~100/1400 syscalls to no gain in wallclock speed (or callgrind metrics).
pmichaud: _config() 04:14
purl _config() is the function in library/config.imc
plobsing that seems very old.
purl, forget _config()
purl plobsing: I forgot _config()
pmichaud okay, so it's the load_bytecode 'config.pir' that seems to be causing the issue?
or is it _config ?
plobsing pmichaud: the call itself. load_bytecode only ever executes once for a particular bytecode. 04:15
pmichaud plobsing: yes, that's what I thought
petdance pmichaud: Sure, I'm asking for a pointer somewhere. 04:16
pmichaud petdance: I'm guessing it'd have to be in the FileHandle PMC somewhere
but I don't know.
petdance If there's any sort of framework that could support this.
nopaste "plobsing" at 192.168.1.3 pasted "PCT::HLLCompiler::init backtraces" (125 lines) at nopaste.snit.ch/22846 04:17
pmichaud plobsing: I'm thinking that the _config function should cache its results. 04:18
plobsing looking at some of the backtraces, it looks like objects are being instantiated while registering P6object classes.
pmichaud plobsing: sure, that's normal. 04:19
it's creating the type objects.
(what used to be known as "protoobjects")
plobsing I have a patch that does cache the results of _config. I cannot observe any significant advantage or disadvantage. 04:20
pmichaud well, if _config is a large object that stays around, then HLLCompiler could instead cache only those values it's interested in, instead of keeping the entire config hash around. 04:21
and HLLCompiler could re-use those values instead of always calling _config to do it
I didn't realize that _config caused config.fpmc to be loaded/parsed on each invocation... that's a little surprising 04:22
#perl6 consensus is that I should go ahead and commit my nqp-rx patch 04:23
dalek p-rx: 6e87137 | pmichaud++ | :
<pre>m src/Regex/Cursor-protoregex-peek.pir

   <pre style='white-space:pre-wrap;width:81ex'>Allow protoregexes to avoid calling !cursor_debug when debugging is turned off.</pre>
04:27
p-rx: 4dc9c4b | pmichaud++ | :
<pre>m src/PAST/Compiler-Regex.pir

   <pre style='white-space:pre-wrap;width:81ex'>Avoid calls to '!cursor_debug' method when debugging is disabled.
This (combined with previous commit) appears to improve Rakudo compilation speed about about 9% on the core.pm benchmark.</pre>
p-rx: c95f68a | pmichaud++ | :
<pre>m src/stage0/HLL-s0.pir

m src/stage0/P6Regex-s0.pir m src/stage0/Regex-s0.pir
  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>Update bootstrap with improved debug calling.</pre>
dukeleto oh boy, dalek needs some updating
pmichaud afk for a short while 04:29
dalek rrot: r48545 | pmichaud++ | trunk/ext/nqp-rx/src/stage0 (4 files):
[nqp-rx]: Avoid calls to !cursor_debug when debugging isn't enabled.
04:37
rtcl-nqp: 43bb387 | Coke++ | :
<pre>m src/TclString.pm

   <pre style='white-space:pre-wrap;width:81ex'>Add a rudimentary .split()</pre>
04:47
rtcl-nqp: 07d7ad5 | Coke++ | :
<pre>m src/TclList.pm

   <pre style='white-space:pre-wrap;width:81ex'>Add helper "join" method to our list obj.</pre>
rtcl-nqp: 3ade1a0 | Coke++ | :
<pre>m src/Partcl/commands/namespace.pm

  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>implement [namespace current]
  (cribbed from splitNamespace in partcl, xlated to nqp)</pre>
nopaste "plobsing" at 192.168.1.3 pasted "PCT:HLLCompiler using core config hash" (26 lines) at nopaste.snit.ch/22847 04:50
plobsing pmichaud: PCT::HLLCompiler doesn't even need to load config.pir - Parrot has a slimmed-down core config hash baked right in.
dalek rrot: r48546 | petdance++ | trunk (2 files):
more function annotations. Thanks, GCC!
04:53
rtcl-nqp: 306b1e1 | Coke++ | :
<pre>m src/Partcl/commands/namespace.pm

  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>implement [namespace tail]</pre>
05:05
05:07 jsut_ joined
pmichaud plobsing: any reason you can think of that your wonderful patch shouldn't be applied? 05:17
plobsing I'm not sure of the purpose of the split between config.pir and the built-in config hash. That and it really isn't earth-shattering. Rakudo isn't really blocking on syscalls these days. 05:18
pmichaud I'd much prefer to use the built-in one, I think. 05:19
plobsing I'll put it to the list. If noone objects, it'll go in after the release. 05:30
It really shows how slow we are ATM though. Eliminating 9.8% of syscalls gives no measurable wallclock improvement. 05:31
pmichaud I went ahead and applied the patch. 05:37
(Didn't see your comments until after I tested it on rakudo :-) 05:38
plobsing remind me never to give you patches on release day
pmichaud well, it shouldn't be that significant a patch 05:40
(famous last words :-)
dalek rrot: r48547 | pmichaud++ | trunk/compilers/pct/src/PCT/HLLCompiler.pir:
[pct]: Update PCT::HLLCompiler to not need config.pbc. Patch courtesy plobsing++ .
05:43
06:13 Infinoid joined
sorear Infinoid! 06:26
purl infinoid is Mark Glines <mailto:mark@glines.org> or likes shiny things or the master of the universe
06:29 uniejo joined 06:54 fperrad joined
dalek parrot: aa265eb | (Jonathan "Duke" Leto)++ | :
<pre>m t/sql/plperl6.sql

   <pre style='white-space:pre-wrap;width:81ex'>Fix some tests where the signature of the PG procedure did not match the signature of the Perl 6 code</pre>
06:59
sorear Infinoid: ping 07:00
07:28 gunnar joined
dukeleto just tickled a GC bug from PL/Parrot 07:30
the backtrace is over >25k frames. I think it went into an infinite loop. 07:31
sorear You sure you didn't just feed the GC a large data structure? 07:32
Like, say, a 5,000 element Perl 6 list?
the current implementation of lazy lists uses linked lists for the lazy part in some cases involving gather 07:33
or, if you recurse 5,000 deep, you'll get a huge linked structure of CallContexts
each recursive CallContext adds about 5 frames to the GC stack during mark 07:34
dukeleto hmmm. i was using [+] on a 100 element list 07:35
sorear: from perl 6, then creating a RPA from that
sorear that shouldn't be enough
to result in 25k frames 07:36
dukeleto sorear: is there a way to tell gdb "show me the first X frames" ? 07:37
sorear: there are a huge # of frames, i gave up pressing enter after 25k
sorear Yes
dukeleto bt 10 shows the top 10 frames
bt -10 is what I want
so it ended up generating 270k frames 07:38
sorear: gist.github.com/528817 <-- first 200 frames 07:40
sorear: i committed the code that makes that happen to the parrot_gc_branch at github.com/leto/plparrot/tree/parrot_gc_bug 07:43
sorear: it blows up attempting to run test_fibonacci_plperl6 07:45
07:59 barney joined 08:11 silug joined
arnsholt The only documentation I can find on what continuations are supposed to do is that they restore "the context to the state it was in" when the continuation was created 08:19
Does anyone have any good ideas what in particular "the context" is, or where I can find out?
sorear There isn't one 08:21
Context is deliberately vague; everybody who does continuations does it slightly differently
for Parrot, context is the state of the callstack (but not registers or any other mutable data) 08:22
arnsholt Thanks (it was in the context of Parrot's implementation I was curious)
And damn. Now I have to do something clever to make sure my data isn't clobbered 08:23
sorear remember that every single function call in Parrot involves two continuation calls 08:24
arnsholt Oh?
sorear they have to be *very* lightweight to work at all
arnsholt Yeah, I can see how that'd be an advantage if there're two for each call =)
sorear Sub.pmc vtable_invoke constructs a continuation to represent the new sub, then calls it 08:25
arnsholt Ah, right. And another one for the return?
sorear yep
continuations in Parrot = CallContext = stack frame
arnsholt I see. Thanks for the help! 08:26
I think I see a solution to my woes of data behaving badly =)
08:37 luben left
dalek parrot: 1304847 | (Jonathan "Duke" Leto)++ | :
<pre>m plperl6.pir

  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>This commit makes Parrot's GC a sad puppy
This commit generates a stack trace of ~270k frames. The first 200 frames can be found at gist.github.com/528817</pre>
08:43
parrot: 061ed2a | (Jonathan "Duke" Leto)++ | :
<pre>m plperl6.pir

  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>Change PL/Perl6 so that the end user can specify the function signature directly</pre>
parrot: 7532acb | (Jonathan "Duke" Leto)++ | :
<pre>m plperl6.pir

  </pre>
   <pre style='white-space:pre-wrap;width:81ex'>Add a test for placeholder variables in PL/Perl6 and make them work</pre>
parrot: ba187db | (Jonathan "Duke" Leto)++ | :
<pre>m t/sql/plperl6.sql

   <pre style='white-space:pre-wrap;width:81ex'>Add a Fibonacci test using placeholder variables in PL/Perl6</pre>
08:45
parrot: b153ff2 | (Jonathan "Duke" Leto)++ | :
<pre>m html/plperl6.html

   <pre style='white-space:pre-wrap;width:81ex'>Remove description of using pointy blocks, since signatures and placeholder variables work now</pre>
parrot: 9065117 | (Jonathan "Duke" Leto)++ | :
<pre>m t/sql/plperl6.sql

   <pre style='white-space:pre-wrap;width:81ex'>Add a test for 3 input arguments in PL/Perl6</pre>
parrot: 82a1a1f | (Jonathan "Duke" Leto)++ | :
<pre>m html/plperl6.html

   <pre style='white-space:pre-wrap;width:81ex'>Add a blurb about how to write procedures with named variables in PL/Perl6</pre>
08:49 mikehh joined
dukeleto mikehh: are you seeing t/library/pg.t fail ? 08:50
mikehh: i have it failing at r48547 on 64bit linux, Ubuntu 10.04, gcc 4.4.3-4ubuntu5 08:58
mikehh: it is test 13 that fails for me.
bacek dukeleto, trac.parrot.org/parrot/ticket/1611 09:00
dukeleto wonders why t/library/pg.t uses Test::Builder directly instead of Test::More
bacek: i forgot i added a TT for that a while ago, I will update with my info. This is with a different version of PG and Ubuntu 09:01
bacek So, problem is just hiding somewhere... 09:02
dukeleto mikehh: good luck with the release today 09:04
dukeleto goes and finds a pillow 09:05
09:06 tadzik joined 09:07 kurahaupo joined
mikehh dukeleto: no - I have not got pg set up, so the tests are skipped for me 09:13
09:14 lucian joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, test, fulltest) at r48547 - Ubuntu 10.04 i386 (gcc with --optimize) 09:42
mikehh ok going to switch to 64 bit Ubuntu - bbiab 09:43
Infinoid ... wow, seriously? 09:46
09:46 kurahaupo joined
Infinoid Data straight from the "content" tag in the github feed: 09:47
&lt;pre>m build/PARROT_REVISION
&lt;/pre>
strange that they would escape one of the brackets but not the other.
sorear support.github.com/discussions/repo...roken-html 09:48
it doesn't matter though, I'm migrating all my #perl6 projects to CIA
nih--
Infinoid moritz++ beats me to it as usual :) 09:49
moritz Infinoid: wget github.com/api/v2/json/commits/list...udo/master
Infinoid sorear: pong 09:50
moritz Infinoid: parse that instead... much easier, very robust, contains all the necessary information
sorear Infinoid: that was what I pinged you about.
Infinoid does a s/json/yaml/ and suddenly he can read it 09:51
moritz yes, that's easier for humans, but for the computer JSON is easier
cotto cia? 10:00
purl cia is, like, probably at www.odci.gov/cia/ or Cow Implant Authority or Capitalism's Invisible Army or Culinary institute of america or cia.vc/ or more specifically at cia.vc/stats/project/parrot for parrot or cia.vc/stats/project/POE
Infinoid moritz: Those feeds don't contain the list of changed files. 10:14
So the longest-file-prefix feature will regress until I reimplement that 10:15
moritz Infinoid: oh, I forgot that. But regressing on it is certainly better than spamming the channel with HTML
Infinoid Well, I'll see if I can get everything else working in the next 15 minutes before I have to leave :) 10:17
10:37 dalek joined
Infinoid Please commit something? 10:38
10:40 dip joined
arnsholt sorear: Thanks again for your clarification on the continuations. It helped my progress along nicely 10:41
11:08 kurahaupo joined 11:27 dalek joined
moritz Infinoid: commit to what repo? 11:32
Infinoid moritz: Any github repo that dalek tracks. 11:33
I did fix one bug, and I think it should probably emit things now
Or, at least, give me an error message about why it didn't.
moritz prepares a commit
pushed to rakudo. 11:34
sorear pushed to niecza. 11:35
Infinoid dalek: *tap* *tap*
dalek kudo: 85602a2 | moritz++ | /:
remove some trailing whitespaces (dummy commit to test an IRC bot)
11:39
Infinoid Ok, more debug required it seems. Sorry about the trouble, this thing's test suite doesn't mock the bot environment very well
Infinoid Oh. nevermind
moritz Infinoid++ 11:40
sorear Infinoid++ 11:44
11:55 kid51 joined 11:56 whiteknight joined 12:10 GodFather joined
Infinoid moritz: I'll redo the longest-common-prefix stuff this evening 12:11
12:12 mikehh joined
moritz Infinoid: it seems you can get modified files in a second request, develop.github.com/p/commits.html search for filename 12:15
dalek rrot: r48548 | petdance++ | trunk (3 files):
Removing src/frame_builder.*, no longer used
12:21
12:21 Paul_the_Greek joined
Paul_the_Greek Good morning, folks. 12:21
whiteknight good morning Paul_the_Greek 12:24
Paul_the_Greek Another tough day at the beach.
whiteknight you're such a trooper 12:26
Paul_the_Greek Someone has to be here. 12:27
whiteknight Andy: ping
purl msg Andy r48548 breaks Configure.pl for me: cannot find src/frame_builder.c (which appears in Manifest) 12:30
purl Message for andy stored.
Infinoid moritz: Oh, one more thing. I chose to emit karma++ lines using the "login" field, rather than the "name" field, because it should map better to IRC nicks. If that turns out to be a scandal, please let me know and I'll change it. 12:34
moritz Infinoid: sure 12:37
12:44 tadzik joined
Paul_the_Greek karma++ lines? 12:51
whiteknight Paul_the_Greek++
karma Paul_the_Greek
purl paul_the_greek has karma of 17
Paul_the_Greek What the hell? Is it counting ++ items in the IRC chat logs? And/or in the tickets? 12:52
whiteknight in the irc channel
Paul_the_Greek I guess I better not toss around ++ items willy-nilly. 12:53
What a riot.
purl a riot is the unbeatable high
whiteknight we ++ people when they do something good, or bad but funny
szbalint karma svn
purl svn has karma of -62
whiteknight svn--
szbalint svn--
whiteknight karma C
purl c has karma of 8777
Infinoid karma karma
purl karma has karma of 61
Paul_the_Greek Metakarma!
szbalint all the c++ references :)
whiteknight they cheated and put ++ in the name of the damn language
szbalint (c++)-- # I win. 12:54
Paul_the_Greek And they postdecremented rather than predecremented. The usable language shoudn't have changed.
dalek rrot: r48549 | mikehh++ | trunk/MANIFEST:
re-generate MANIFEST
moritz c++--
karma c 12:55
purl c has karma of 8779
moritz c++--
karma c
purl c has karma of 8780
Paul_the_Greek Postincremented.
moritz karma c++
purl c++ has karma of -101
moritz :-)
Paul_the_Greek karma perl
purl perl has karma of 620
szbalint hehe
whiteknight karma purl
purl purl has karma of 9034
Paul_the_Greek karma python
purl python has karma of -118
szbalint (c++)++
Paul_the_Greek karma ruby 12:56
purl ruby has karma of 67
Paul_the_Greek karma lisp
purl lisp has karma of 42
Paul_the_Greek lisp++ 12:57
karma DCL 12:58
purl dcl has neutral karma
mikehh All tests PASS (pre/post-config, make corevm/make coretest, test, fulltest) at r48549 - Ubuntu 10.04 amd64 (g++ with --optimize) 13:16
13:21 he joined 13:27 khairul joined 13:28 tadzik joined
mikehh rakudo (85602a2) builds on parrot r48549 - make test PASS, make stresstest (pugs r32024) FAIL - Ubuntu 10.04 amd64 (gcc with --optimize) 13:48
t/spec/S02-builtin_data_types/nil.t - Failed tests: 7, 10
bah - that was g++ with --optimize not gcc 13:49
13:54 plobsing joined
mikehh partcl-nqp (306b1e1) builds on parrot r48459, make test FAIL - t/cmd_incr.t - Failed test: 12 - Ubuntu 10.04 amd64 (g++ with --optimize) 13:59
partcl-nqp - Files=63, Tests=1300, 58 wallclock secs ( 0.96 usr 0.20 sys + 52.84 cusr 2.50 csys = 56.50 CPU)
14:03 bubaflub joined 14:10 bubaflub joined
pmichaud mikehh: the nil.t failures are known failures (and okay... they'll be fixed for the rakudo release) 14:14
mikehh pmichaud: just checking if everything works at the moment 14:16
Andy sorry, y'all 14:40
dalek kudo: e3f9c5e | pmichaud++ | /:
Bump PARROT_REVISION.
15:00
kudo: ae18b90 | pmichaud++ | /:
Merge branch 'master' of github.com:rakudo/rakudo
kudo: e26cb01 | pmichaud++ | /:
Add draft of 2010.08 release announcement.
kudo: 5a33278 | pmichaud++ | /:
Update 2010.08 release information in release_guide.pod .
kudo: e0850ed | moritz++ | /:
[release] fix copy&pasto, add a new feature to feature list
15:05
Andy haha, gcc has just found another bug 15:19
src/string/primitives.c:332:50: warning: logical ‘or’ of collectively exhaustive tests is always true [-Wlogical-op] 15:20
Please read and enjoy.
moritz should that be an && ? 15:21
15:25 darbelo joined 15:31 Coke joined
Coke I'm getting an error 'make corevm coretest' with trunk in t/pmc/pmc.t 15:31
... not at head, though. whoops. 15:32
(upping and re-checking...)
Andy moritz: yes. The || condition is always true 15:34
moritz Andy: will you fix it? or should I do?
Andy I'll take care of it.
moritz ++Andy 15:35
15:35 theory joined
whiteknight does NQP support multiple inheritance now? 15:53
moritz nqp: class A { }; class B { }; class C is A is B { }; say("alive") 15:57
p6eval nqp: OUTPUT«PackFile_unpack: This Parrot cannot read bytecode files with version 8.1.␤␤PackFile header failed during unpack␤»
moritz sighs
15:58 darbelo joined
dalek rrot: r48550 | petdance++ | trunk/src/string/primitives.c:
fixed a test that was always true
16:00
rrot: r48551 | petdance++ | trunk (4 files):
added PARROT_PURE_FUNCTION annotations
Coke (nevermind, coretest is fine now) 16:02
16:03 zostay joined
moritz nqp: class A { }; class B { }; class C is A is B { }; say("alive") 16:04
purl i already had it that way, moritz.
p6eval nqp: OUTPUT«Malformed package declaration at line 1, near "is B { }; "␤current instr.: 'parrot;HLL;Grammar;panic' pc 552 (src/cheats/hll-compiler.pir:205)␤»
moritz whiteknight: seems like "no"
16:08 pyrimidine joined
Coke mikehh: partcl-nqp seems to work fine with trunk. 16:13
16:15 hercynium joined 16:16 chromatic joined 16:23 brianwisti joined
dukeleto 'ello 16:28
16:28 allison joined
brianwisti good `localtime` 16:28
dukeleto allison: salutations
16:33 darbelo joined
allison dukeleto: good morning 16:38
purl For you maybe.
cotto finished his gsoc final eval 16:43
16:46 ruoso joined
cotto notes that it is difficult to observe the karma for svn without changing it 16:49
chromatic karma svn
purl svn has karma of -64
dalek rrot: r48552 | ash++ | branches/gsoc_nci:
Create branch gsoc_nci
16:50
16:52 darbelo joined
cotto dukeleto, how long does the "pencils-down" state of the gsoc code and documentation need to stay in place? 16:55
dukeleto cotto: as long as you make a snapshot (or git tag or whatever) of the code in the state that it was in at "pencils-down", feel free to keep working on it with your student
cotto: you should just have an easy way to say "this is what we had at pencils down". In past years google wanted a zip/tarball of that state uploaded to them for legal purposes. Not sure if they want that this year 16:56
cotto I'll make a tarball then. 16:57
17:02 darbelo joined
cotto msg khairul You can move your code and docs to github whenever you have the tuits. I have a tarball of your pencils down code and docs in case Google asks for it. 17:03
purl Message for khairul stored.
17:06 jsut joined
khairul cotto: planning on moving it this weekend. 17:08
cotto great 17:09
clock? 17:10
purl cotto: LAX: Tue 10:10am PDT / CHI: Tue 12:10pm CDT / NYC: Tue 1:10pm EDT / LON: Tue 6:10pm BST / BER: Tue 7:10pm CEST / IND: Tue 10:40pm IST / TOK: Wed 2:10am JST / SYD: Wed 3:10am EST /
cotto You're up late.
khairul yep, going off soon.
cotto good idea
purl, good idea 17:11
purl cotto: i'm not following you...
dalek rrot-linear-algebra: 88d5f3c | Whiteknight++ | /:
rename generated file from pla.pbc to pla_nqp.pbc, since it's intended for NQP use only (due to loading nqp and P6metaclass bytecodes). Ensure that the generated file is installed properly
17:17
rrot-linear-algebra: f1eae20 | Whiteknight++ | /:
fix a bug in complexmatrix2d where the matrix is being converted incorrectly to a string
rrot-linear-algebra: 0fc9e91 | Whiteknight++ | /:
Major refactor to the test suite. Break up the single matrixtest.nqp file into several smaller files for manageability. During the build we compile these files and merge them together into t/testlib/pla_test.pbc, which can be loaded for a modest startup time improvement. Break out a subclass NumericMatrixTest which I can use to test the Num and Complex matrices for common math operations
17:22 darbelo joined
mikehh I just updated the NEWS file, (I managed to overwrite the one I was keeping up-to-date) and have recreated it, but I am probably missing stuff - please check and add to it 17:29
cotto have you committed it? 17:35
(btw, trolling #ps reports is how I find stuff for NEWS) 17:36
17:36 pyrimidine joined
dukeleto Why doesn't the pbc for NQP get installed somewhere? Or am I missing it? 17:37
moritz in $prefix/lib/$version/library/nqp-rx.pbc 17:39
dalek rrot: r48553 | mikehh++ | trunk/NEWS:
update News fore release
17:40
17:42 darbelo joined
dukeleto moritz: ah, i was looking in $version/languages, since nqp-rx seems like a language, not a library 17:44
17:45 pgollucci joined
Coke blargh. So, if I'm using PCT::HLLCompiler.compiler() ... how do I indicate I want the code compiled into a specific (not the current) namespace? 17:47
when I was handrolling PIR, i could just slap in a '.namespace ...' as a prefix... 17:51
jnthn Coke: Set .namespace('Foo') on the outermost block. 17:55
Coke jnthn: what format is Foo in? 17:56
(is it really a string? :( )
cotto_work ~~
jnthn Coke: If you want a multi-part name, stick an array in there.
Coke +1.
purl 1
jnthn :namespace('Foo','Bar','Baz') is probably fine 17:57
Foo::Bar::Baz for Foo;Bar;Baz woudln't cut it, afaik.
17:58 pyrimidine joined 18:04 pgollucc2 joined
Coke the sub I get back is really an eval. Should I do the [0] trick to get at the sub? 18:05
or am I trying to .namespace() the wrong thing?
when you say block, what exactly do you mean? =-) 18:07
jnthn I meant PAST::Block
Oh wait...what are you passing to HLL::Compiler?
Coke Ugh. so I can't just use compile(), then, I guess. 18:08
jnthn: I'm passing in tcl code and getting back an Eval. (via Partcl::Compiler.compile() )
jnthn Oh
hang on a moment... 18:09
Rakudo's eval must do the "put int he right namespace" trick...
dalek kudo: 037f685 | tadzik++ | /:
Optimize Range.pick for integers and non-replacing pick

Includes an off-by-one fix from moritz_
Signed-off-by: Moritz Lenz <moritz@faui2k3.org>
18:10
jnthn pbc = $P0.'compile'(code, 'outer_ctx'=>caller) 18:11
Heh. I wonder if it works it out from that.
Coke i'm not using contexts at all explicitly atm. 18:12
I give up. =-) 18:13
(no usable mentions of namespace in the squawk tutorial). 18:17
dalek rrot-linear-algebra: dc5246c | Whiteknight++ | /:
move tests around to maximize inheritance of tests among related types. This breaks many things, and apparently uncovers some segfaults here and there which need to be addressed
18:18
rrot-linear-algebra: ff04755 | Whiteknight++ | /:
don't need a dimensions() method, so take away the TODO
cotto_work #ps in 130 18:21
Coke jnthn: Sent an email to parrot-users. 18:24
jnthn++ # thanks for trying to help. 18:25
18:25 pgollucci joined 18:29 tadzik joined 18:33 pgollucci joined 18:40 darbelo_ joined
dalek rrot: r48554 | ash++ | branches/gsoc_nci (12 files):
GSoC: The majority of my NCI changes in 1 commit.
18:48
rrot: r48555 | ash++ | branches/gsoc_nci/config/gen/libffi/nci-ffi.pmc.in:
A fix to a test case that was failing.
18:55 ash_ joined, hercynium joined 18:56 pgollucc2 joined 19:01 pgollucci joined
mikehh has anyone had a look at the NEWS file to see if anything needs adding? 19:07
chromatic I skimmed it for my stuff and it's all mentioned. 19:09
cotto_work finally figured out how to get the github trac plugin working 19:15
19:15 tcurtis joined
tcurtis Good afternoon. 19:16
19:21 pgollucci joined
whiteknight hello tcurtis 19:23
19:29 AndyA joined, jan joined
cotto_work msg cotto pypi.python.org/pypi/GitPython/0.1.7 19:31
purl Message for cotto stored.
whiteknight I'm surprised we don't have git bindings for Parrot yet, considering some of our contributors 19:32
whiteknight would love to be able to "parrot-git parrot@parrot.org:parrot/parrot.git" 19:33
parrot 19:34
dukeleto whiteknight++
cotto_work if you could only get that "org" out of there...
dukeleto cotto_work: what about the org?
whiteknight well, with proper bashing, it could be "parrot-git parrot@parrot$parrot:parrot/parrot.git" 19:35
cotto_work I thought there wasn't an official git library. 19:36
whiteknight but that would be silly
cotto_work (as in libgit.so)
with the proper alias, you could do parrot-git parrot parrot@parrot.org:parrot/parrot.git 19:37
dukeleto mikehh: i just tweaked the NEWS file a bit to describe the work on hashes a bit more 19:39
dalek rrot: r48556 | dukeleto++ | trunk/NEWS:
[docs] Make the NEWS item about hashes a bit more informative
19:44 plobsing_work joined
mikehh dukeleto: excellent! 19:44
purl zwooshes
mikehh anyone else? 19:45
purl i guess anyone else is welcome to answer also :P
moritz botsnack? 19:46
purl :)
cotto_work ship it!
purl Ship this piece of garbage? Better idea is to go back and write a lot more tests
atrodo I love products shipped too early. Makes me feel like i'm living to the extreme without being in any mortal danger 19:48
moritz atrodo: do you also love bungee jumping? :-)
cotto_work That must be why you're doing so much Lorito hacking. 19:49
atrodo moritz> No, you missed the "mortal danger" part
cotto_work> correct. I ship it early so someone else can actually rewrite it
Tene Coke: Sent mail. Make a PAST::Block with :namespace(['foo','bar']) 19:56
mikehh moritz: can you check the NQP-rx entry in NEWS and maybe add to it? 19:58
moritz mikehh: afaict only minor bugfixes went into NQP-rx in parrot, not sure any of them are worth mentioning 20:00
mikehh moritz: ok
chromatic Patrick committed a couple of minor optimizations too.
mikehh darbelo: I know you did some stuff, can you check NEWS and if necessary make sure it is there 20:01
chromatic: yeah - he commited something today, speedups, I'll chase him down 20:02
pmichaud: ping
chromatic "Optimizations to NQP-rx" seems like an appropriate level of detail. 20:03
Did anyone else see perlmonks.org/?node_id=855407 ? Am I crazy? 20:05
Tene chromatic: I do not think you're crazy. 20:06
Coke Tene: yah, that doesn't really help in my current context.
email replied.
chromatic I find it incredibly frustrating that we add features to Parrot that Perl 6 wanted, and Rakudo goes off and invents its own saying "That's not usable." 20:07
jnthn chromatic: Example? 20:08
chromatic Method dispatch, signature binding, metamodel.
Multiple dispatch.
purl multiple dispatch is probably always through the proto routine, which is internal to p6
jnthn chromatic: And Parrot providing an implementation of all of those has been a significant help to getting somewhere with a Perl 6 implementation on Parrot. 20:09
Coke in their defense, for a long time it was hard to get the parrot team to understand the requests.
jnthn chromatic: However, that doesn't mean that Parrot should expect Perl 6 to use what it provides where it doesn't fit, nor should Perl 6 folks expect Parrot to just adopt the exact semantics that are asked for. 20:10
chromatic I am very happy to review feature requests and bug reports.
Coke Tene: basically, I am starting out here: 20:11
github.com/partcl/partcl-nqp/blob/m...ds/eval.pm
mikehh plobsing_work: can you add an entry in NEWS about dynop_mapping, not sure where it should go
20:11 perlite joined 20:12 smash joined
smash hello everyone 20:12
Tene Coke: my $*EVALNAMESPACE = ... is my first pass.
Coke Tene: ... EW
it would work, though. Guess I'll do that and add it to docs/cheats or something. 20:13
plobsing_work mikehh: that's why I haven't already put it in. I suppose it falls under misc packfile improvements. 20:14
chromatic I'm very happy to help implement a hypothetical future Parrot which supports what Rakudo needs.
Tene Coke: Or add an attribute to your Compiler class and instantiate it.
chromatic I guess you pay your money and you take your chances that a hypothetical future other VM will do the same.
Coke Tene: does the Action sub have access to the compiler object?
Tene erm, your actions class, I mean.
chromatic might miss the first part of #ps 20:15
Coke Tene: errrr. don't know where to do that - when I'm calling .compile() I don't see Actions at all.
Tene Ah, you're right. 20:16
Coke the global variable hack will get me an implementation, anyway. Danke.
Tene Coke: you could *also* compile to PAST, set the namespace of the PAST, and then compile the rest of the way.
Coke: It's a dynamic variable, not a global. 20:17
Coke Tene: My apologies. the "perl six twigil that isn't a meme yet" variable.
Tene Coke: It's not that I'm offended, it's that it really is important whether or not it affects other invocations of the compiler.
Coke clock? 20:19
purl Coke: LAX: Tue 1:19pm PDT / CHI: Tue 3:19pm CDT / NYC: Tue 4:19pm EDT / LON: Tue 9:19pm BST / BER: Tue 10:19pm CEST / IND: Wed 1:49am IST / TOK: Wed 5:19am JST / SYD: Wed 6:19am EST /
Util purl, msg Paul_the_Greek If I say "GMP will compile with MinGW, if you just add MSYS to the process", is that enough detail for you to proceed? (given your MinGW knowledge) If not, I will write up a detailed wiki entry on HOWTO build GMP on Win32. 20:20
purl Message for paul_the_greek stored.
20:24 Paul_the_Greek joined
Paul_the_Greek Good afternoon. 20:25
cotto_work #ps in 4 20:26
Coke since c will be late, do we have a volunteer to lead? 20:27
I'm supposed to leave work halfway through the meeting. 20:28
20:29 gunnar left
cotto_work too 20:31
well, leave for a meeting
tcurtis hopes his internet won't die during #ps. 20:32
plobsing_work NotFound: does using "use static" in the winxed compiler improve performance? (I wasn't expecting it to do that) 20:34
NotFound plobsing_work: informal benchmark showed a bit of improvement
dalek nxed: r593 | NotFound++ | trunk/winxedst1.winxed:
scheleton support for namespace modifiers in stage 1
20:35
NotFound Not sure why, pir should do it.
Maybe is just a little speedup in pir compiling. 20:36
plobsing_work PIR simultaneously does too much to understand fully and too little to be user-friendly 20:37
NotFound Anyway, using it on the compiler grant it's tested 20:38
Paul_the_Greek Are we delaying until people show up? 20:49
cotto_work It's going on now 20:51
#parrotsketch
purl it has been said that #parrotsketch is the channel where the core parrot committers report weekly status, moderated by our project manager, coke, every Tuesday at 18:30 UTC
Paul_the_Greek Oops! 20:52
cotto_work you can catch up on the irclogs 20:54
20:54 allison joined
Coke no, #parrotsketch is the channel where parrot devs meet weekly, every tuesday at 18:30 UTC. 20:56
purl okay, Coke.
Paul_the_Greek Just a test. 21:04
dalek TT #1673 closed by coke++: need better "create a language docs" 21:06
TT #1673: trac.parrot.org/parrot/ticket/1673
21:08 jsut_ joined
chromatic Thoughts on PCC performance improvements: trac.parrot.org/parrot/wiki/PCCPerf...provements 21:12
21:15 whiteknight joined 21:18 tcurtis joined 21:22 lucian joined
dalek TT #1730 closed by coke++: Languages page on Website needs updating 21:22
TT #1730: trac.parrot.org/parrot/ticket/1730
TT #1319 closed by coke++: Convert Squaak to nqp-rx
TT #1319: trac.parrot.org/parrot/ticket/1319
rrot: r48557 | coke++ | trunk/examples/languages/squaak/src/squaak.pir:
fix comment leftover from legacy versions.
21:23
Coke Does anyone here know Jeff Goff? 21:30
pmichaud mikehh: pong 21:31
good afternoon, #parrot
21:31 lucian joined, kurahaupo1 joined
chromatic I know Jeff Goff; what's the question? 21:32
mikehh pmichaud: I was wondering if you could look at the NEWS file and see if there was anything you wanted to add before I do the release?
Coke chromatic: I'm assigning you a ticket. ;) 21:33
chromatic DrForr, ping.
Coke trac.parrot.org/parrot/ticket/515
-> 21:35
moderator Parrot 2.6.0 | parrot.org Log: irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | close 13 tickets, merge outstanding branches, help NotFound clean up PBC tests 21:37
pmichaud mikehh: looking 21:45
NotFound The tests cleaning is probably easy, I just can't evaluate the time required because it may need some Makefile trickery 21:46
pmichaud mikehh: I don't have anything significant to add to NEWS. 21:49
mikehh pmichaud: ok thanks
anyone else got anything to add to NEWS?
or for that matter CREDITS or DEPRECATED 21:51
chromatic RAKUDO RUNS AT LEAST 10% FASTER
But I don't know the exact number, so we can leave it out.
tadzik It runs _significantly_ faster, one can see it without a timer 21:52
pmichaud it's a bit hard to know how much speed improvement is due to parrot, and how much is due to rakudo, though. :-)
21:52 Paul_the_Greek joined
pmichaud (or nqp-rx :-) 21:53
mikehh any PLATFORM additions?
pmichaud I'm fine with crediting Parrot for the bulk of the speedup :)
chromatic I know it's at least 10% faster thanks to things I've done, because I didn't update Rakudo in between my timing runs.
pmichaud wfm 21:54
chromatic Looked like NQP-rx added an additional 10% last night.
pmichaud for compilation speed, yes, for runtime performance... not so much. 21:55
plobsing_work just another 80% to go! </math-fail>
chromatic Does parsing still dominate runtime performance? 21:56
mikehh there has been a bit of a speedup in the tests 21:57
pmichaud chromatic: I think it's about 50-50
of course, it should be about 10-90. but at least parsing isn't the majority of the time for most things anymore. 21:58
(whether that's because parsing has improved or because we now do more complex things at runtime... hard to say :)
chromatic I'd really, really like to be able to profile parsing but I don't know how to do that without writing parsing benchmarks.
22:00 kurahaupo1 joined
pmichaud I don't know how to do it within what Parrot currently provides. 22:00
right now the best parsing benchmarks would be core.pm from Rakudo, and the various .pm files within NQP 22:01
chromatic Exercising various NQP parsing features in stupid, isolated little loops?
pmichaud no, I mean compiling nqp itself 22:02
chromatic Right, but I'm saying I think we need to be able to profile and optimize and figure out what's slow in various features of NQP in isolation. 22:03
Sort of like the experience figuring out that one type of increment in Rakudo is abnormally slow.
pmichaud so, is there any way we could get some sort of pir-sub-level profiling yet?
i.e., "parsing is taking XYZ amount of time in this subrule"? 22:04
otherwise we're just guessing for the most part
darbelo Can't the profiling runcore handle that?
pmichaud I've found the profiling runcore to have real problems with things like tailcalls
darbelo Ouch. 22:05
pmichaud but I haven't tried in over a year, so perhaps things have improved w/o my knowledge
note that it wouldn't be at all difficult for me to instrument the parsing methods with information about entry/exit. in fact, that's already there 22:06
I just need to know what sort of information is worth collecting
chromatic Mostly what gets called from where and how often.
pmichaud I can probably add that to nqp's tracing. 22:07
chromatic My intuition keeps telling me that NQP does something strange in a couple of places that we'll all slap our foreheads over and say "Wow, it runs faster now that we've re-thought that." 22:09
cotto_work If I get\\ a test case that doesn't profile well, I can work on that. 22:20
s/test case/chunk of pir/ 22:21
chromatic s/chunk of pir/very small chunk of pir/
cotto_work ideally, but I also whittled partcl down to a minimal test case 22:22
There's no (parrot-related) thing I'd like more than to make nqp parsing faster. 22:23
Paul_the_Greek When does the bulk of NQP parsing occur? 22:26
chromatic I'm not sure how to answer that question. Can you be more specific?
Paul_the_Greek Sorry, I haven't looked at NQP yet. Is this an issue for build time? 22:27
cotto_work The time nqp spends parsing dwarfs the other stages by a couple orders of magnitude.
Paul_the_Greek The other stages of the build? 22:28
cotto_work other compilation stages
nopaste coming...
plobsing_work Paul_the_Greek: the other stages of any nqp-based compiler and often their runtimes
Paul_the_Greek Ah, the parsing stage of compilers implemented in NQP? 22:30
cotto_work yes 22:31
Paul_the_Greek Is it the parsing itself or the rule actions? 22:32
cotto_work Gah. Too many yaks to shave to get PIRATE working atm. 22:39
and PIRATE needs an update for the new OpLib interface 22:45
22:46 pyrimidine left
nopaste "cotto_work" at 192.168.1.3 pasted "relative speed of nqp compilation stages" (9 lines) at nopaste.snit.ch/22860 22:48
cotto_work There you go. 22:49
plobsing_work cotto_work: does the past stage do anything?
cotto_work parsing gets relatively more expensive as files get longer
sorear plobsing_work: past stage does a single getattribute_p_p_s 22:50
since NQP builds the past tree during the parse and attaches it to the root parse node 22:51
22:57 kid51 joined 22:58 lucian joined
nopaste "mikehh" at 192.168.1.3 pasted "getting test failure in pre_release 2.7.0 (t/pmc/threads.t - Failed test: 14)" (34 lines) at nopaste.snit.ch/22861 23:04
mikehh help
this is weird - it passes in some tests but not others 23:05
it looks ok except # Inconsistency detected by ld.so: dl-close.c: 731: _dl_close: Assertion `map->l_init_called' failed! 23:06
chromatic That's strange.
mikehh it passes ok in trunk, but after I did the 2.7.0 updates (before cpommiting of course) I get those failures 23:08
committing
Coke regarding the pod discussion for static docs, I am +5 on having pod in .c files only for those items that we want to document as part of the API. if someone is reading the source... they can read the non-POD comments at the same time. 23:23
Conversely, exposing the internal functions to users who just want to use the API: -5. 23:24
chromatic My thoughts too.
particle smolder has been installed on parrot.org, configuration in progress. 23:35
Coke \\o/ 23:39
cotto_work happy
Coke \\©/ 23:44
mikehh ok - I think I found the problem 23:45
cotto_work clock?
purl cotto_work: LAX: Tue 4:45pm PDT / CHI: Tue 6:45pm CDT / NYC: Tue 7:45pm EDT / LON: Wed 12:45am BST / BER: Wed 1:45am CEST / IND: Wed 5:15am IST / TOK: Wed 8:45am JST / SYD: Wed 9:45am EST /
Paul_the_Greek When a PMC is destroyed, the vtable slot is set to 0xdeadbeef. Now that's amusing. 23:49
cotto_work That's to make it easy to identify attempts to use a destroyed PMC.
Paul_the_Greek I'm setting up my system to allocate a vtable at 0xdeadbeef ... 23:54
cotto_work good luck with that 23:55
purl SOL loser!
GeJ at r48557 make fulltest PASS on FreeBSD 7.2 amd64 23:56
Paul_the_Greek I'm thinking alignment may prevent me from doing that.
chromatic Likely.
mikehh I've got my normal editor (Kate) set up to remove trailing spaces and replace tabs and editing srcd/ops/core_ops.c did that, so I re-edited with vim and it now passes the tests 23:57
cotto_work There's a good reason it's not an aligned value.
Paul_the_Greek I was so amused by the word that I didn't think about the alignment. 23:59
Which is a sorry thing, since I've been thinking about alignment a lot.