|
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 | |
| <pre>m build/PARROT_REVISION | |||
| </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. | |||