|
Parrot 1.6.0 "half-pie" released! | Test CallSignature PMC | pcc_reapply branch still needs your love! trac.parrot.org/parrot/wiki/Callin...nsOverview Set by moderator on 12 October 2009. |
|||
| Tene | all of the thread.t tests that fail fail with a segfault. | 00:02 | |
| Whiteknight | threading is definitely something Parrot needs to work on | 00:04 | |
| there is a lot of cruft floating around, we really need to figure out what all we have | |||
| Tene | the run_clone method that's failing isn't defined as a METHOD, it's set up at runtime with register_nci_method() | 00:07 | |
| looks like it dates back to 'creiss' in 2006 | 00:09 | ||
| I've never seen that name before. | |||
| seems like it needs significant updates. | 00:10 | ||
| dalek | TT #1106 created by Austin_Hastings++: Cannot presently dump Class pmcs | 00:16 | |
| Whiteknight | what are all these "features" things that people keep wanting? | ||
| cotto_work | They're like bugs, except they work. | 00:17 | |
|
00:33
preflex joined
|
|||
| Whiteknight | urg, why are all those threading tests on pcc_reapply failing? | 00:36 | |
| and why are so many of these stupid failing tests in perl5? | 00:37 | ||
| cotto_work | because nobody ever goes there | 00:39 | |
| (not that you didn't already know that) | |||
| Whiteknight | the threading system should really be a higher priority then people have made it out to be | 00:44 | |
| we would be making a big mistake if we shipped 2.0 without good, stable, scalable threading support | |||
| cotto_work | That'll be a challenge. | 00:46 | |
|
00:56
rhr joined
01:08
rhr joined
01:33
rhr joined
|
|||
| dalek | p-rx: 5045605 | pmichaud++ | (6 files): Handle positional (numbered) captures. |
01:34 | |
| shorten | dalek's url is at xrl.us/bfr4j3 | ||
|
01:35
kid51 joined
|
|||
| dalek | p-rx: 032c58a | pmichaud++ | t/p6regex/rx_ (5 files): Add remaining test files from PGE (not active/configured yet). |
01:40 | |
| shorten | dalek's url is at xrl.us/bfr4mi | ||
| Whiteknight | the failure in t/pmc/codestring.t makes no sense to me | 01:42 | |
| I just traced through it in gdb and the result value looked correct | |||
| dalek | rrot: r41836 | jkeenan++ | branches/auto_libjit: Create a branch to test plobsing's patch in |
01:44 | |
| Whiteknight | urg, this codestring failure is turning out to be dfficult to debug | 01:52 | |
| Tene | Whiteknight: I looked at it, and I can confirm that when I changed the return(intval -1) to return(intval 42), it successfully returned 42 | 01:58 | |
| so there's a problem with returning a constant -1 from a method, or something. | |||
| Whiteknight | well that's horrible | 02:00 | |
|
02:01
msmatsko joined
|
|||
| Tene | Quite! | 02:01 | |
| Whiteknight | okay, well I'm out of time for the night. Goodnight | ||
| Tene | Goodnight. | ||
|
02:02
rhr joined
|
|||
| kid51 | Why is dalek so slow? | 02:22 | |
| dalek | rrot: r41837 | jkeenan++ | branches/auto_libjit (19 files): Apply in branch plobsing's patch submitted in 1. Move config step gen::libjit up to 4th last step. 2. Add SVN properties and rebuild MANIFEST. |
02:23 | |
| p-rx: 76c694d | pmichaud++ | src/Regex/P6Regex/Actions.pm: Add aliased assertion captures. |
02:26 | ||
| shorten | dalek's url is at xrl.us/bfr4ue | ||
| dalek | p-rx: 4481429 | pmichaud++ | src/Regex/P6Regex/ (2 files): Handle simple binding aliases. |
||
| shorten | dalek's url is at xrl.us/bfr4ug | ||
|
02:32
mikehh joined
02:35
janus joined,
rhr joined
|
|||
| Tene | dalek isn't slow, it's delayed. | 02:41 | |
| speed and offset are distinct. | |||
|
02:52
rhr joined
02:56
jsut joined
03:28
JimmyZ joined
03:29
rhr joined
04:01
preflex joined
|
|||
| dalek | p-rx: 568cc9b | pmichaud++ | src/ (3 files): Allow PAST::Regex subrule nodes to have arguments to pass to the subrule. |
04:09 | |
| shorten | dalek's url is at xrl.us/bfr5ap | ||
|
04:21
preflex joined
|
|||
| dalek | p-rx: 3de5a4f | pmichaud++ | src/ (2 files): Add alias capturing of non-subrules. |
05:06 | |
| p-rx: f00fd0d | pmichaud++ | src/Regex/P6Regex/Grammar.pm: Allow spaces in character class compositions. |
|||
| shorten | dalek's url is at xrl.us/bfr5f4 | ||
| p-rx: 8743056 | pmichaud++ | src/Regex/P6Regex/Actions.pm: Add character class composition. |
|||
| shorten | dalek's url is at xrl.us/bfr5f6 | ||
| dalek's url is at xrl.us/bfr5f8 | |||
|
05:21
japhb joined
05:33
KatrinaTheLamia joined
06:00
uniejo joined
06:18
KatrinaTheLamia joined
06:39
kyle_l5l joined
|
|||
| dukeleto | 'ello | 06:53 | |
|
07:31
JimmyZ joined
07:32
bacek joined
|
|||
| bacek | o hai | 07:33 | |
| JimmyZ | bacek: hello | 07:35 | |
| purl | salut, JimmyZ. | ||
| bacek | G'Day JimmyZ | ||
| what current status of pcc_reapply? | |||
| dukeleto | how do I import subs from a PBC (Test/More.pbc) to the current namespace in NQP? | 07:38 | |
| nopaste | "moritz" at 87.176.59.93 pasted "Error summary from pcc_reapply for bacek++" (19 lines) at nopaste.snit.ch/18325 | 07:41 | |
| bacek | moritz: thanks | 07:42 | |
| Tene | bacek: the next thing that needs fixed, IMO, is parrot_config | 07:53 | |
| bacek | Tene: it's one line fix. | 07:54 | |
| Tene | dukeleto: for now, you use ~3 lines of embedded PIR, or add it to glue.pir | ||
| dukeleto: 'sec | |||
| bacek | Tene: config_lib_pasm.in, line 14. Replace "null P1" with "P1 = new 'Undef'" | 07:55 | |
| Tene | bacek: why hasn't that already been committed? | ||
| bacek | Tene: I'm not so magical as someone thinks | ||
| Tene | bacek: that is to say, I heard someone saying earlier that you had a workaround for the problem. Is there some problem with that fix, or did I misunderstand? | 07:56 | |
| nopaste | "tene" at 24.10.252.130 pasted "pir import for dukeleto++" (4 lines) at nopaste.snit.ch/18326 | ||
| Tene | dukeleto: if you put that in a sub in glue.pir, fetch the caller namespace and pass it as a second argument to import() | 07:57 | |
| bacek | Tene: it's probably hiding something else. Or just proper fix for previous undefined behaviour. I'm not sure. That's why I didn't commit it | ||
| Tene | dukeleto: erm, not a second argument, a named argument :named('targetns') | ||
|
07:57
baest joined
|
|||
| nopaste | "tene" at 24.10.252.130 pasted "import sub for dukeleto++" (9 lines) at nopaste.snit.ch/18327 | 08:01 | |
| Tene | bacek: with that applied, I can build and pass all of the tests in my scheme compiler. | 08:02 | |
| bacek | Tene: SHIP IT! | 08:03 | |
| dalek | rrot: r41838 | tene++ | branches/pcc_reapply/config/gen/config_pm/config_lib_pasm.in: [pcc] Use undef instead of null in config_lib. bacek++ |
08:06 | |
| Tene | bacek: trying to build rakudo... | 08:10 | |
| rakudo mostly builds... ten fails at the end. | |||
| nopaste | "tene" at 24.10.252.130 pasted "rakudo pcc build failure" (31 lines) at nopaste.snit.ch/18328 | ||
| Tene | although, that's out-of-date rakudo | 08:11 | |
| moritz | Tene: that looks very much like the resig branch, not trunk | ||
| or at least like a Makefile from that branch | |||
| Tene | moritz: Oh! You're right! | ||
| moritz | and that's known not to build on linux right now (except with modifications to the makefile) | 08:12 | |
| Tene | Lemme try again, except not stupid this time. | ||
| dukeleto | Tene: when I import from within a Q:PIR block, it will be visible from NQP? | 08:13 | |
| nopaste | "tene" at 24.10.252.130 pasted "real rakudo build failure" (284 lines) at nopaste.snit.ch/18329 | ||
| Tene | dukeleto: yes. If you run the code in my first paste from Q:PIR, it will work. | 08:14 | |
| dukeleto | Tene: i just saw the nopaste | 08:15 | |
| dalek | rrot-plumage: 341bf8b | leto++ | : [t] Properly test some exit codes using Test::More |
08:16 | |
| shorten | dalek's url is at xrl.us/bfr5re | ||
| Tene | dukeleto: I pasted two times. Once with code for Q:PIR, and again with code to put in an 'import' sub in glue.pir, if you wanted to do it that way. | ||
| Ooo, failure in imcc! | 08:17 | ||
| Tene sleep now. | 08:19 | ||
| dukeleto | Tene++ # thanks for the import help! | 08:20 | |
| dalek | rrot-plumage: 6c37408 | leto++ | : [t] Properly import functions from Test::More and add some tests using l... |
08:21 | |
| shorten | dalek's url is at xrl.us/bfr5ri | ||
| mikehh | pcc_reapply - make smoke #28955 at r41838 - 10,691 ok, 17 failed, 262 todo, 560 skipped and 0 unexpectedly succeeded | 08:25 | |
| dalek | rrot-plumage: 375dbe8 | leto++ | : [t] Add basic tests for usage |
08:26 | |
| shorten | dalek's url is at xrl.us/bfr5rz | ||
|
09:15
payload joined
|
|||
| dalek | tracwiki: v9 | kurahaupo++ | ArrayTasklist | 09:57 | |
| tracwiki: trac.parrot.org/parrot/wiki/ArrayT...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr5yj | ||
|
09:57
donaldh joined,
donaldh left
|
|||
| dalek | p-rx: 348b39f | pmichaud++ | src/Regex/constants.pir: Turn some magic constants into symbols. |
10:03 | |
| p-rx: 45fcb57 | pmichaud++ | (2 files): Convert to use symbols instead of magic numbers. |
|||
| shorten | dalek's url is at xrl.us/bfr5zg | ||
| shorten | dalek's url is at xrl.us/bfr5zi | ||
| dalek | p-rx: bdc43da | pmichaud++ | src/Regex/Cursor.pir: Revise !mark_commit to preserve capture stack. |
||
| shorten | dalek's url is at xrl.us/bfr5zk | ||
| dalek | p-rx: 1987a95 | pmichaud++ | (4 files): Add cut-rule token. |
||
| shorten | dalek's url is at xrl.us/bfr5zn | ||
| dalek | p-rx: 105b3e0 | pmichaud++ | src/PAST/Compiler-Regex.pir: More replacing magic numbers with symbolic constants. |
10:09 | |
| shorten | dalek's url is at xrl.us/bfr5zt | ||
| mikehh | trunk - pre/post-config, smoke (#28589) PASS,fulltest FAIL at r41838 (see TT #1102) - Ubuntu 9.10 (beta) amd64 | 10:16 | |
| fulltest (testf, testg and testS) (same tests FAIL, same results) | |||
| t/compilers/imcc/syn/macro.t - Failed tests: 2-4 | |||
| t/compilers/imcc/syn/regressions.t - Failed test: 7 | |||
|
10:49
payload joined
10:51
payload joined
10:53
payload joined
11:29
tetragon joined,
tetragon_ joined
11:34
tetragon joined
11:36
masak joined
11:46
kid51 joined
|
|||
| dalek | kudo: 609cc25 | moritz++ | src/classes/Object.pir: make the get_integer vtable class .Int; fixes RT #69738 |
11:47 | |
| shorten | dalek's url is at xrl.us/bfr564 | ||
|
12:01
bluescreen joined
12:06
mokurai left
|
|||
| Coke | All these priorities being set are nice. What about my segfaults? =-) | 12:32 | |
| dalek | kudo: 3d1afed | moritz++ | src/setting/Operators.pm: give more awesome error message for infinite ranges |
12:33 | |
| shorten | dalek's url is at xrl.us/bfr6c6 | ||
| Coke | msg pmichaud (and other sixers) I have a lead on someone in the UK who is interested in putting together some multimedia tutorials and thinking about p6 as a "intro language" curriculum. | 12:37 | |
| purl | Message for pmichaud stored. | ||
|
12:37
bluescreen joined
|
|||
| moritz | oh cool | 12:37 | |
|
12:40
tokuhirom________ joined
12:41
whiteknight joined
|
|||
| Coke | moritz: I am going to give some feedback and encourage him to repost to a list. =-) | 12:48 | |
|
12:49
JimmyZ joined
|
|||
| moritz | Coke: +1 | 12:49 | |
| purl | 1 | ||
| moritz | purl: brain the size of an atom, and all used up for joining IRC channels | 12:50 | |
| purl | moritz: sorry... | ||
| Coke | purl, dirac? | ||
| purl | it has been said that dirac is at sourceforge.net/projects/dirac | ||
| Coke | purl, dirac was also paul. | ||
| purl | Coke: huh? | ||
| Coke | ha! look at comment #2 there. | ||
| (purl's url) | 12:51 | ||
| jonathan | lol...review fail | ||
| whiteknight | good morning #parrot | 12:54 | |
| fail? "Fuck you" is a very valid review | 13:00 | ||
| :) | |||
| masak | yeah, but thumbs up + "fuck you"? | 13:01 | |
|
13:01
bluescreen joined
|
|||
| masak | Infinoid: yes, if the commit looks right, please merge. | 13:03 | |
| Coke wonders if it's just him or if feather is getting slow. | 13:04 | ||
| if I'm using the sha1 to identify revs and want something human-friendly, is --short mostly safe? | 13:06 | ||
| (e.g. to replace the numbers in column 2 here:) github.com/partcl/partcl/blob/maste...ogress.csv | |||
| shorten | Coke's url is at xrl.us/bfr6gm | ||
| dalek | rtcl: 329ce26 | coke++ | tools/tcl_test.pl: Just pull from the known repo where the wiki lives. |
13:13 | |
| rtcl: d034e86 | coke++ | (2 files): We are using git for version control now, can't use svn/git-svn to get a rev. |
|||
| shorten | dalek's url is at xrl.us/bfr6hn | ||
| dalek's url is at xrl.us/bfr6hp | |||
| whiteknight | it's so cute when the bots have like a little conversation with each other? | ||
| dalek's url? | |||
| purl dalek's url? | |||
| purl | whiteknight: bugger all, i dunno | ||
|
13:15
whiteknight joined
|
|||
| Coke | shorten didn't need to shorten that. | 13:26 | |
| purl | That URL is at xrl.us/bfr6iq | ||
| Coke | [::facepalm::] | ||
| sadly, xrl.us doesn't reuse short urls. | 13:27 | ||
|
13:31
barney joined
|
|||
| whiteknight | purl msg allison I can't get pcc_reapply to build on win32. src/nci_test.c gives me errors about PMCNULL being undefined. I'm wondering if you've seen that error before. | 13:39 | |
| purl | Message for allison stored. | ||
| Coke | whiteknight: missing an include? | 14:01 | |
| (why do we have a _test file in src?) | 14:02 | ||
| whiteknight | no idea | ||
|
14:12
Psyche^ joined
14:13
shockwave joined
|
|||
| dalek | tracwiki: v10 | coke++ | ArrayTasklist | 14:13 | |
| tracwiki: add some comments. | |||
| tracwiki: trac.parrot.org/parrot/wiki/ArrayT...ction=diff | |||
| tracwiki: v5 | coke++ | AllHackathons | |||
| tracwiki: trac.parrot.org/parrot/wiki/AllHac...ction=diff | |||
| tracwiki: v4 | coke++ | ItsABughunt | |||
| tracwiki: trac.parrot.org/parrot/wiki/ItsABu...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr6qg | ||
| dalek's url is at xrl.us/bfr6qi | |||
| dalek's url is at xrl.us/bfr6qk | |||
|
14:19
schmalbe joined
|
|||
| Coke | shorten, you're an idiot | 14:20 | |
| shorten, owner? | |||
| purl, shorten? | |||
| purl | shorten is a bot interface to metamark.net/ or shortens long urls in the channel or shortens shorter urls in /msgs or made by ask or thefeed.no/marcus/archives/000327.html # osx service or deaf to repetition or metamark.net/bot | ||
| Coke | shorten =~ s/or thefeed.no/marcus/archives/000327.html # osx service// | 14:21 | |
| dalek | rrot: r41839 | mikehh++ | branches/pcc_reapply/src/call/args.c: codetest fix - missing function documentation |
14:23 | |
| mikehh | I just set it up so that it passes codetest ( amke make -j test etc) - I think the documentation in src/call/args.c should be reviewed | 14:25 | |
| Coke: src/nci_test.c - shared library used for testing the Native Call Interface | |||
| s/amke/make/ above | 14:26 | ||
|
14:27
hachi_ joined
|
|||
| mikehh | Coke: it is in trunk | 14:27 | |
| jonathan | (bug where calling things from c that tailcall leads to segfault in Parrot)-- | 14:30 | |
| Coke | mikehh: yes. but why is a testing file in src/ | 14:33 | |
| should be in t/, neh? | |||
| mikehh: argh. | 14:34 | ||
| mikehh: scratch that argh. | |||
|
14:35
fperrad joined
14:39
jrtayloriv joined
14:47
theory joined
|
|||
| Coke | msg dukeleto - if you can figure out why commit messages are not showing up from github on partcl-commits, I'll give you a cookie. | 14:59 | |
| purl | Message for dukeleto stored. | ||
|
15:03
allison joined
15:05
whoppix joined
|
|||
| moritz | wow, the amount of failed tests in the pcc_reapply branch is impressively low | 15:11 | |
| 15 or so | |||
| Coke | what the holy (*&#. partcl-commits just got spammed by someone. no github email, but spam. :| | 15:20 | |
| jonathan | moritz: Really? | ||
| Nice! | |||
| Coke | msg dukeleto it's working no. no cookie for you! =-) | 15:22 | |
| purl | Message for dukeleto stored. | ||
|
15:23
payload joined
|
|||
| Coke | moritz: are you counting failures where N tests were planned but only N-M were run? | 15:30 | |
| I'm seeing hundredes of failures. | 15:31 | ||
| (in pcc_reapply) | |||
| mikehh | Coke: it's been around for at least six years - the first entry in trac svn revision log is r5205 leo | ||
| Coke in fact that was a change to r5204 - (checked in by leo, 6 years ago) | 15:32 | ||
| Coke | mikehh: ... yes. | ||
| that doesn't mean it /belong/s there. | |||
| mikehh | probably not :-} | ||
| Coke | I just figured if he was looking at the file anyway, now might be a good time to put it where it belongs. | ||
|
15:34
bluescreen joined
15:43
Andy joined
|
|||
| moritz | Coke: I ccounted the errors as shown in failure summary | 15:49 | |
| Coke | moritz; look for lines like: | 15:54 | |
|
15:54
nnunley joined
|
|||
| Coke | Parse errors: Bad plan. You planned 76 tests but ran 4. | 15:55 | |
| there's 64 potential failures right there. | |||
| (yes, it could just be one.) | |||
|
16:03
payload joined
16:24
cotto_work joined
16:27
chromatic joined
16:31
HG` joined
16:32
kurahaupo joined,
mikehh joined
|
|||
| dalek | p-rx: 8276d6c | pmichaud++ | src/ (4 files): Add null/fail PAST::Regex nodes (as subtype of 'anchor' pasttype). |
16:34 | |
| shorten | dalek's url is at xrl.us/bfr7gg | ||
| dalek | p-rx: 3cc84fe | pmichaud++ | (4 files): Add :ignorecase/:i modifier for literals. |
||
| shorten | dalek's url is at xrl.us/bfr7gi | ||
|
16:41
msmatsko joined
16:54
einstein joined
16:58
ruoso joined
|
|||
| mikehh | got to reboot - bbiab | 17:04 | |
| Tene | Coke: I don't get any failures like that. | 17:07 | |
| dalek | tracwiki: v11 | kurahaupo++ | ArrayTasklist | 17:08 | |
| tracwiki: notes on thread safety, exponential resizing | |||
| tracwiki: trac.parrot.org/parrot/wiki/ArrayT...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr7pe | ||
| Coke | tene: I get tons. | 17:11 | |
| are you using buildframes=0 ? | |||
| (I was not) | |||
| nopaste | "tene" at 24.10.252.130 pasted "My test results summary for Coke++" (14 lines) at nopaste.snit.ch/18330 | ||
| Tene | So I guess I get that once in t/library/coroutine.t for 4 tests. | 17:12 | |
| nopaste | "Coke" at 72.228.52.192 pasted "my test failures for Tene++" (71 lines) at nopaste.snit.ch/18331 | 17:13 | |
| Tene | The frame builder hasn't ever worked on my platform anyway, coke. | ||
| Coke | k. | ||
| Just saying, it's not as rosy here. | |||
| Tene | Coke: failures with the frame builder aren't related to algorithmic failures of the pcc refactor. | 17:14 | |
| Coke | I have no idea what these failures are from. | ||
| I just mentioned that as I've seen kid51++ mention it. | |||
| Tene | That's the remnants of oldjit. | 17:15 | |
| Coke | if there are failures in the branch that aren't in trunk, I'd say they are at least slightly related. =-) | ||
| Tene | the NCI frame builder, which we expect to remove shortly after the upcoming release, hasn't been updated in the branch to use the new calling conventions API. | 17:16 | |
| dalek | tracwiki: v12 | kurahaupo++ | ArrayTasklist | 17:18 | |
| tracwiki: notes on applicability of uninitialized resizable arrays; more details on "fully general" arrays | |||
| tracwiki: trac.parrot.org/parrot/wiki/ArrayT...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr7re | ||
| Coke | ok. So those failures are real, then. | 17:20 | |
| you just don't happen to be tripping them on your platform. | 17:21 | ||
| yes? | |||
| Tene | Depends on who you ask, and what your tolerance for semantic dickery is. ;) | 17:22 | |
| pmichaud | lunchtime, #ps in 68 | ||
| Tene | (more) | ||
| whiteknight | I made an offer last night that if we ripped the frame builder out directly after the release, that I would guarantee a replacement by 1.8 | 17:25 | |
| nobody took me up on it | |||
| Tene | Yes, they need to be either fixed or the frame builder removed. The people working on PCC haven't addressed it yet because they've been more worried about getting PCC working correctly first, and everyone hates the frame builder, and the most-likely person to work on it, WK, hates it SO VERY MUCH, and now there's politics, which is perfectly legitimate because he can choose what he spends his very-appreciated volunteer time on, but ... | ||
| ... doesn't help the state of the branch or whatever. | |||
| Coke | whiteknight: I don't understand. what's to stop you from working on it in a branch? | 17:26 | |
| where you can rip it out and replace it and then there's no risk to anyone? | |||
| Tene | whiteknight: Your offer was that you would fix the frame builder failures if (what you said) | ||
|
17:26
Austin joined
|
|||
| Tene | as I remember it, yes? | 17:27 | |
| whiteknight | Yes. What I really said was that I would fix it now and make the failures go away, AND provide a replacement by 1.8, IF I was allowed to rip it out directly after the release | ||
| Austin | heh | 17:28 | |
| whiteknight | What I'm looking for is some kind of commitment that people are actually ready to take the next step | ||
| it's a leap of faith to rip it out without having a replacement ready immediately | |||
| Austin | Isn't that what branches are for? | ||
| whiteknight | Austin: it's not a matter of where I work, it's a matter of when | 17:29 | |
| I have tuits available to do X task in Y timeframe. No tuits after Y timeframe | |||
| Austin | Ahh. | ||
| Coke | whiteknight: so why not do it in a branch, no faith required? | 17:30 | |
| then if you happen to miss the mark, it's in a state where a) trunk is unaffected, and b) someone can pick it up. | |||
| Austin | Look, just give the baby up for adoption. A child shouldn't have to compete with JIT compilation for daddy's attention... | ||
| Coke | so do it now, in a branch. You can start even before the release. | ||
| whiteknight | maybe I'm not explaining entirely correctly | ||
| Austin | Then you'll have lots of time available. | 17:31 | |
| Coke | I'm certainly confused. | ||
| Austin | :) | ||
| Coke | I'm willing to believe it's me. =-) | ||
| whiteknight | It's a tit-for-tat deal. I'll fix the frame builder test failure now, in exchange, I get to pull out the frame builder after 1.7 | ||
| This being a FOSS project, and me having no obligations besides my own desires, I'll do something I don't want in exchange for doing something I do want | 17:32 | ||
| pmichaud | what prevents you from pulling out the frame builder after 1.7 anyway? | ||
| i.e., I'm not seeing the obstacle. | |||
| dalek | p-rx: 2cd0942 | pmichaud++ | src/Regex/P6Regex/ (2 files): Add :sigspace support. Fix up comment parsing. |
||
| shorten | dalek's url is at xrl.us/bfr7ud | ||
| whiteknight | pmichaud: people have said we shouldn't pull it out until we have a replacement ready | 17:33 | |
| Tene | pmichaud: chromatic and allison will complain if he removes the frame builder without already having a replacement. That is, they object to having trunk in a no-frame-builder state at all. | ||
| Austin | pmichaud: Do multi-methods hide entire inherited names, or just hide inherited multi signatures? That is, can I have Parent::multi(_, Foo) and derive Child, with Child::multi(_, Bar), and still call Child.multi($foo) okay? | ||
| Tene | and WK doesn't want to make the replacement in a branch. | ||
| Coke | whiteknight: I think you're making this into a fight when it doesn't have to be. | ||
| whiteknight | right, and I'm not going to do what I've been told not to do. Hence, my bargain to change things | ||
| I'm not fighting | |||
| Coke | why not do all this in a branch, then? | ||
| pmichaud | whiteknight: you can certainly remove the frame builder in a branch. | ||
| nobody will object to that. | |||
| whiteknight | that's not the issue | 17:34 | |
| pmichaud | we're not seeing the issue. | ||
| whiteknight | that's fine, it's my issue | ||
| pmichaud | Austin: in Parrot I think that multi-methods hide entire inherited names. | ||
| Coke | ok. I vote against doing it in trunk, fwiw. | ||
| pmichaud | Austin: in Perl 6 they don't. | ||
| Coke | I just don't see why this has to be in trunk. | ||
| whiteknight | Coke: it doesn't matter where development happens. It can happen in a branch | 17:35 | |
| Austin | pmichaud: Okay. Is this a p6object thing? Is there some obvious way to "uplift" the masked methods? | ||
| Coke | ... then I completely fail to see the problem. | ||
| why can you not do this in a branch, then? | |||
| pmichaud | Austin: It's parrot. | ||
| whiteknight | I can do this in a branch. Location is not the problem | ||
| Coke | that is, what's stopping you? | ||
| Austin | Coke: I think the issue is commitment to incorporating the changes. | ||
| Coke | without knowing what the replacement will look like, how can we agree? | 17:36 | |
| whiteknight | exactly | ||
| Coke: because any replacement is better then what we have | |||
| an empty file is better | |||
| Austin | If he rips out the code, and everybody says, "Well, we are going to work on Unicode in this release. Maybe in a few months" that would suck. | ||
| pmichaud | Austin: that particular behavior of methods is entirely Parrot. P6object doesn't try to modify Parrot's metaobject model in that way. | ||
| Tene | Coke: I think it's something like "If I do it in a branch, then people can ignore th elack of a frame builder and potentially keep using the old one; if it's in trunk, then it's everyone's problem." | ||
| Coke | right. i don't want a problem. | ||
| whiteknight | no problems | ||
| Coke | sure, ripping it out without a plan more concrete than 'we'll improve it' seems to be a problem to me. | 17:37 | |
| Austin | pmichaud: Okay. (I sort of conflate p6object w/ parrot, here.) | ||
| whiteknight | there is a general plan about replacing the frame builder. I made a bid to fix some bugs in exchange for changing around the timeline a little. No takers, things go the way they are going | ||
| no harm, no foul | |||
| Tene | Coke: WK sees the existing frame builder as BAD CODE, and removing it completely to be an improvement. Others disagree. | ||
| whiteknight | I'll spend my tuits elsewhere, I have plenty of other projets to work on | ||
| Tene | Coke: for example, every architecture other than non-darwin x86 works "fine" witout it. | ||
| Coke | elsewhere than parrot, or in parrot? | ||
| whiteknight | In Parrot | ||
| GC, IO, IMCC/PIRC, Matrixy, etc. | 17:38 | ||
| PCC is still going to need lots of love too, after this branch lands | |||
| Tene | Coke: and this isn't the first time that oldjit has stalled otherwise-promising development. | ||
|
17:39
joeri joined
|
|||
| Coke | Tene: s/oldjit/old crappy placeholder code/ in general. | 17:39 | |
| pmichaud | whiteknight: in my experience, good code gets adopted into trunk pretty quickly, provided it's not a violation of the deprecation policy | ||
| Tene | Coke: the main objection comes from chromatic, who sees the precompiled NCI thunks as more evil than the frame builder, even though we still have to use the precompiled thunks on every other platform. | 17:40 | |
| pmichaud | so, either you're saying that what you propose to write won't be good code, or that it violates the deprecation policy | ||
| Tene | pmichaud: afaict, removing the frame builder wouldn't violate deprecation policy. | ||
| Austin | pmichaud: If I do a find-method on the multi name, I get the parent's multi, right? So could I then clone it and add the extras, then add-method the cloned multi? | ||
| whiteknight | no. I'm still not being too clear | ||
| Coke | maintaining 2 bits of evil code is worse than 1 bit, and if we're eventually going to be using something else entirely anyway, I fail to see the point of keeping it. | ||
| PerlJam | Tene: got a link to some place where chromatic explains that himself? | ||
| Tene: (precompiled thunks evil) | 17:41 | ||
| pmichaud | Austin: we do things like that in Rakudo, yes (more) | ||
| Tene | PerlJam: irc logs from yesterday. the summary is that *HALF* of our startup time is because of precompiled thunks, and half of the cost of every PMC. | ||
| whiteknight | pmichaud: frame builder is causing failures in pcc_reapply. There are two options: fix it or kill it. People would like to fix it so we have a frame builder in place for the 1.7 release (more) | ||
| PerlJam | Tene: ah, thanks. | ||
| purl | ah, thanks. is it fast enough? | ||
| pmichaud | Austin: another possibility would be to have a fallback method in the subclass that is :multi() (no args) and forwards to the parent method | ||
| chromatic | I consider that a regression at least on x86. | ||
| whiteknight | I want to kill it. So I say that I will fix it for 1.7, in exchange for being able to kill it directly thereafter | ||
| Austin | pmichaud: multi(), or multi(_) on self? | 17:42 | |
| whiteknight | the issue isn't killing it or not, it's when we do it. I'll fix the failures now, in exchange for killing it soon | ||
| pmichaud | Austin: either might work. Depends on the semantics you'd like. | ||
| whiteknight | as opposed to me not fixing it now (maybe somebody else will) and we kill it later | ||
| Coke | whiteknight: ah. you're not saying you'll write a replacement. | ||
| whiteknight | Coke: I will, that's part of my deal sweetener | ||
| Coke | you're saying you'll make the branch work so we can kill it more quickly and then not replace it? | ||
| chromatic | Exactly. | 17:43 | |
| Tene | Coke: he's also committing to writing a replacement, but wants the frame builder removed regardless. | ||
| whiteknight | and I provide a replacement in 1.8 | ||
| Coke | whiteknight: because we are volunteers, I don't see why you have to do it in this order. | ||
| pmichaud | so let me attempt to summarize | ||
| Coke | if we assume we need a frame builder, and we rip it out, and then something happens to your plans between 1.7 and 1.8... what then? | ||
| whiteknight | that way not a single release goes out the door without a frame builder AND we kill code I hate at the earliest possible moment | ||
| pmichaud | actually, I won't attempt it. | 17:44 | |
| whiteknight | Coke: that's where the leap of faith comes in | ||
| I didn't say it was a perfect offer | |||
| and I'll be working on JIT anyway, just on a different timeframe otherwise | 17:45 | ||
| in any case, it's not a big deal | |||
| Coke | ok. so, back to my "I have more tests failing in pcc_reapply than tene". chromatic: removing buildframes is a regression? | 17:46 | |
| whiteknight | in terms of performance it's a regression | 17:47 | |
| chromatic | Every failing test in pcc_reapply right now is a regression. | ||
| Coke | ok. we have no guarantees on performance, and the HLLs are already pretty slow. what's the slowdown factor? | ||
| chromatic | Parrot takes twice as long to start. | ||
| Coke | chromatic: if we switch the default sense on --buildframes, do most of those failures go away? | 17:48 | |
| whiteknight | we know that registering hundreds of NCI thunks is a huge slowdown | ||
| chromatic | the shared library is 30% larger | ||
| Coke | ok. size is not something we guarantee between releases... | ||
| chromatic | I don't know about "most" but "many" do. | ||
| cotto_work | chromatic, is this a case of things getting worse before they can get better? | ||
| chromatic | If we can't fix the frame builder on the branch and it would block merging, then yes cotto_work. | ||
| whiteknight | ...or a case of it getting better before it gets awesome? | 17:49 | |
| dalek | tracwiki: v13 | kurahaupo++ | ArrayTasklist | 17:50 | |
| tracwiki: validity of negative indeces | |||
| tracwiki: trac.parrot.org/parrot/wiki/ArrayT...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr7wu | ||
| allison | I'm okay with disabling buildframes for the merge, if we can't fix by the day after 1.7 | 17:51 | |
| (though fixing it would be nice) | |||
| whiteknight | we're merging after 1.7? | ||
| (not that I expect we could reasonably be in before) | 17:52 | ||
| allison | I can't really test fixing it, since buildframes doesn't do anything on the platforms I have access to | ||
| yes, because a bigger concern is the speed of CallSignature | |||
| whiteknight | ok | ||
| allison | this gives chromatic time to work on it before we merge, or at least before 1.8 | ||
| chromatic | I don't mind trying to fix the frame builder in the branch, but I haven't for two reasons. | 17:53 | |
| allison | so we don't have a release hit by that slowdown | ||
| chromatic | 1) I think CallSignature is a bigger priority | ||
| Tene | allison: I could give you access to an x86 box. | ||
| allison | agreed | ||
| whiteknight | do we have any numbers on the slowdown? | ||
| chromatic | 2) I'm not confident of doing it before the branch passes tests appropriately | ||
| whiteknight | like, how bad it is? | ||
| chromatic | 2.5 times slower, by the fib.pir benchmark. | ||
| allison | 2) also agreed | ||
| whiteknight | chromatic: Agreed, fixing tests is higher priority | ||
| 2.5 times !?!? | |||
| holy crap | |||
| purl | only in the Vatican, my friend | ||
| chromatic | That's for passing only one positional argument. | ||
| It gets worse O(n) per arguments. | 17:54 | ||
| dalek | tracwiki: v14 | coke++ | ArrayTasklist | ||
| tracwiki: trac.parrot.org/parrot/wiki/ArrayT...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr7xr | ||
| whiteknight | Oi vey! | ||
| chromatic | That's almost all GC pressure. | ||
| whiteknight | well, that's something we need to address ASAP | ||
| I didn't realize it was so bad | |||
| allison | whiteknight: see the CallSignature refactor items on the tasklist page | 17:55 | |
| chromatic | I'm working on a CallSignature refactor in a branch. | ||
| I'll poke at that today. | |||
| allison | (added to flesh out what I said in a recent conversation with chromatic) | ||
| kurahaupo | Earlier it was mentioned that a "general purpose array PMC" that could hold any value without needing a PMC would be a win. As I'm looking at refactoring the PMC's that implement arrays in various ways, would you like me to work on that as a starting point? | ||
| whiteknight | I can take a look at the refactor too | ||
| Austin | pmichaud: Is there a way to do "find_method" on a class, without having an instance? Barring that, is there a way to access the MRO from PIR? I know there's a C method, but I can't find any exposure of it. | 17:56 | |
| pmichaud | yes, it's possible to find the MRO | 17:57 | |
| dalek | tracwiki: v14 | whiteknight++ | CallingConventionsTasklist | ||
| tracwiki: Move the CallSignature refactors section up a little bit because it's higher priority then other stuff | |||
| tracwiki: trac.parrot.org/parrot/wiki/Callin...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr7zg | ||
| Austin | (without reimplementing C3?) | ||
| :) | |||
| pmichaud | the question of find_method on class objects came up in design meeting a couple of weeks ago -- let me check | 17:58 | |
| Coke | kurahaupo: who mentioned that? | ||
| I would imagine that in order to handle any of SNIP types... you'd need something like a PMC. | |||
| (so why not just use that if you need multiple types?) | |||
| Austin | Coke: Probably to avoid the cost of creating the pmc. | 17:59 | |
| kurahaupo goes hunting in #parrot logs ... | |||
| Coke | Austin: ok. so now you have... what. a C struct? | ||
| that can contain any of the 4 types? | |||
| whiteknight | chromatic: refactors look good, but we're definitely going to want to make sure that CallSignatures and the arguments therein are accessible from PIR | ||
| Coke | and isn't GC'able? | ||
| whiteknight | otherwise jonathan and pmichaud might murder us | ||
| Austin | I'd guess something like the flyweight pattern, with the array tracking type externally. | 18:00 | |
| allison | whiteknight: the array and hash interfaces are the defined way to access the arguments | ||
| Coke | Austin: if the type is tracked externally, what's the array contain, void *s ? | ||
| allison | whiteknight: as in, the refactor has to support the same interface, but the internals can be anything | ||
| whiteknight | allison: so long as we give them a way, I just want to make sure we don' lose sight of that | 18:01 | |
| gotcha | |||
| Austin | Coke: I have no idea. A union, maybe? | ||
| kurahaupo | coke: discussion between allison and chromatic circa 2009-10-10T07:43Z | ||
| Coke | Austin: ah, that's what I meant when i said struct. | ||
| whoops. | |||
| pmichaud | Austin: (find_method) --- there's a find_method method (note, not opcode) that walks the MRO of a class object | ||
| Austin | Coke: Your guess is as good a mine. :$ | ||
| pmichaud: Aha! You rock. Thanks. | 18:02 | ||
| Coke | I am unconvinced that a constructing such a beast is worth it, unless it means we can kill all the *<type>* variants. | ||
| moritz | kurahaupo: you can make links to individual lines on irclog.perlgeek.de/parrot/2009-10-10 by clicking on the time in the left column | ||
| pmichaud | src/pmc/class.pmc:1960 (or thereabouts, I haven't svn up'd in a while) | ||
| Austin | pmichaud: Based on what you've told me so far, I'm guessing that parrot multi-method resolution stops with the first *name* that it finds in the MRO, rather than searching for other like-named multi's with closer matching arglists. Does this sound reasonable? | 18:03 | |
| pmichaud | there's also a way to find out all of the parent classes (mro order) by using 'all_parents' with the inspect opcode. | 18:04 | |
| Coke | kurahaupo: that conversation appears to be related specifically to CallSignature. | ||
| pmichaud | Austin: that's been my experience, yes. | ||
| kurahaupo | discussion starts roughly at irclog.perlgeek.de/parrot/2009-10-10#i_1588983 | ||
| pmichaud | Austin: it stops resolution at the first name encountered. | ||
| Austin | pmichaud: Really? I looked for all_parents, but didn't find it exported. | ||
| Coke | I could be mistaken, though. | ||
| pmichaud | Austin: $P0 = inspect classobj, 'all_parents' # I think | 18:05 | |
| P6object uses it, so you could look there for an example. | |||
| Austin | Nope, I'm wrong. It's not in the POD, but it is in the code. (What I get for running perldoc instead of less, I suppose.) | ||
|
18:05
hachi joined
|
|||
| pmichaud | oh yes, it's not in the POD. I remember noticing that when I went looking for it a few weeks ago also :) | 18:06 | |
| Austin | :) | ||
|
18:06
mikehh joined
|
|||
| kurahaupo | coke: yes, discussion was about improving performance of CallSignatures | 18:07 | |
| whiteknight | do we have any leads or ideas about fixing the remaining test failures on pcc_reapply? | 18:08 | |
| I had them running in the debugger last night, and didn't even understand the problem | |||
| for the one test, t/pmc/codestring.t, the one method was clearly returning -1, but that was not the resul | 18:12 | ||
| I suspect it's an issue of sign extension, but haven't tried a fix | |||
| dalek | p-rx: f650cd5 | pmichaud++ | STATUS: Update STATUS. |
||
| shorten | dalek's url is at xrl.us/bfr74y | ||
| allison | whiteknight: my guess on the threads failures is that there's some code in the threads implementation that's still handling args/returns in the old way | 18:13 | |
| whiteknight | so I guess we need to march into the belly of that beast somewhere then | 18:14 | |
| allison | whiteknight: indeed | 18:15 | |
| t/op/lexicals_28.pir seems to be a failure in the argument or return handling logic | 18:16 | ||
| that is, it's not correctly detecting the end of the positional arguments or results array | |||
| whiteknight | yeah, I stared at that file for a while and couldn't figure out what was going wrong | ||
| allison | t/library/coroutine.t has a different error now | 18:17 | |
| more specific | |||
| "flattened return on a non-array" | |||
| whiteknight | urg | ||
| allison | it may simply be a case of something accessing the flags for the wrong element | 18:18 | |
| whiteknight | or the new system accessing things in a different order from the old system | ||
| dalek | rtcl: c27357b | coke++ | tools/spec_info.pl: git revisions aren't numeric. |
||
| allison | (which seems to happen whenever the index is updated without re-looking up the flags | ||
| shorten | dalek's url is at xrl.us/bfr75r | ||
| dalek | rtcl: 9bade3a | coke++ | docs/spectest- (2 files): Record another spec test run. |
||
| shorten | dalek's url is at xrl.us/bfr75t | ||
| whiteknight | which, for named returns filling unfilled positionals, is a very real possibility | ||
|
18:19
bacek joined
|
|||
| allison | whiteknight: I've been going around restricting the scope of the flags variables, so they're only created when needed, and not lingering around to trap some unwary line of code | 18:19 | |
| whiteknight: ordering conflicts is another possibility, aye | 18:20 | ||
| whiteknight | especially if old PIR code is expecting certain orders of things | ||
| allison | t/op/calling.t is three very different erros | 18:21 | |
| errors | |||
| whiteknight | It creates a bit of an issue because named arguments are stored in an order-less hash, but are used to fill positional arguments | ||
| pmichaud | btw, within the next few days I expect I'll be at a point where benchmarking nqp-rx would be very useful | ||
| s/benchmarking/profiling/ | |||
| allison | #59 is caused by calling get_results directly inside the label of a continuation | ||
| whiteknight | that should be .get_results(), right? | ||
| allison | I have some code that almost fixes that, | ||
| pmichaud | so if someone can do some profiling, or let me know how to do it, that might be very interesting/helpful. | ||
| whiteknight | pmichaud: I probably can help | 18:22 | |
| cotto_work | pmichaud, add -Rprofiling to the parrot cli | ||
| whiteknight | although I shouldn't be the only one, I'm a profiling n00b | ||
| pmichaud tries it on existing pge test. | |||
| allison | whiteknight: yes, but I suspect get_results or .get_results would have the same effect in this case. It's an order of operations problem | ||
| pmichaud | (svn up, rebuild, sigh) | ||
| cotto_work | the final bit of output will tell you the next step | 18:23 | |
| allison | t/op/calling_61.pir looks like a return handling bug | ||
| pmichaud | cotto_work: thanks | ||
| will report soon (after building) | |||
| cotto_work | pmichaud, I hope you find code useful. | ||
| pmichaud | if not, you'll hear about it :) | 18:24 | |
| cotto_work | great | ||
| whiteknight | mikehh: when did the 9.10 beta come out? | 18:25 | |
| allison | whiteknight: t/op/calling_47.pir looks like it's not returning values from tailcall properly | 18:27 | |
| whiteknight | was that the failure in tailcall from an NCI method? | 18:28 | |
| whiteknight doesn't have his dev machine here so he cant look at all these | |||
| mikehh | I got it Friday 2nd but didn't install until this week | ||
| whiteknight | and it doesn't build on win32 right now | ||
| dalek | TT #1107 created by Austin_Hastings++: Opcode get_class has failed assertion with garbage input | ||
| Austin | What do you think, Lewis - is this snake poisonous? Well, Clark, go ahead and step on it and then we'll know. | 18:29 | |
| whiteknight | "garbage input"? Well, there's your problem | ||
| allison | whiteknight: it's a PIR Sub, don't think it's NCI related | ||
| whiteknight | allison: okay, I must be thinking of the wrong one then | 18:30 | |
| chromatic | #ps in 1 | ||
| dalek | tracwiki: v1 | chromatic++ | StructPruning | ||
| tracwiki: Created page with suggestions for parrot_interp_t and PackFile | |||
| tracwiki: trac.parrot.org/parrot/wiki/Struct...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr78u | ||
| whiteknight | #ps in 0 | 18:31 | |
| pmichaud | does pprof2cg.pl generally take a long time? | ||
|
18:31
schmalbe left
|
|||
| pmichaud | cotto_work: profiler seems to work just fine, thanks! | 18:36 | |
| chromatic | It takes a long time, yes. | ||
| cotto_work | good to hear | 18:37 | |
|
19:04
payload joined
19:13
joeri joined
|
|||
| Tene | Testing cardinal against pcc branch... | 19:24 | |
| cardinal compiles fine with pcc branch. | 19:26 | ||
| allison | Tene: sweet! | ||
| Tene | running tests now | ||
| allison: if you can come up with any ideas about the rakudo build failures, I'll look at them tonight. | |||
| allison | Tene: do you have a nopaste of the failures? | 19:27 | |
| Tene | Yes... | ||
| nopaste.snit.ch/18329 | |||
| dalek | p-rx: fee0b48 | pmichaud++ | build/Makefile.in: Add test_loud Makefile target. |
||
| shorten | dalek's url is at xrl.us/bfr8hz | ||
| dalek | p-rx: 302f7f2 | pmichaud++ | src/ (2 files): Add ability to use ? and ! with enumerated character lists <?[abc]> and <![def]> |
||
| shorten | dalek's url is at xrl.us/bfr8h3 | ||
| Tene | Really busy with $work right now, so can't actually look at anything. | 19:28 | |
| chromatic | Any thoughts on whether CallSignature should use a single array for INSP types or one array for each? | ||
| Tene | I'd personally attempt the former first. | ||
| allison | Tene: okay, will leave you a message for later if I turn anything up | ||
| bacek | good morning | ||
| allison | chromatic: we have to preserve the order of all elements, not just the relative order of each type | 19:29 | |
| chromatic: so I'd lean toward a single data structure | |||
| bacek | chromatic: single array is better. Just because get_foo_keyed_int will be simpler | ||
| chromatic | We have to preserve the order of all elements? | 19:30 | |
| bacek | for "manual" handling with HLL | ||
| allison | as in, we need to know that a subroutine was called with a PNSINS order if it was | ||
| Coke | I remember back when parrot /didn't/ keep track of that! | 19:31 | |
| fun times. | |||
| allison | recovering that from a P, NN, I, SS order is a pain | ||
| chromatic | I don't remember when Parrot ever kept track of that. | ||
| Coke | ... order of arguments? | ||
| chromatic | Right. | ||
| Unless you mean for PCCINVOKE char * signatures. | |||
| Coke | huh. I think you and I might be talking about different things, then. | ||
| allison | yes, as we learned from experience back when arguments were stored directlyin registers | ||
| dukeleto | Coke: what is up with the partcl test suite ? | 19:32 | |
| allison | chromatic: it does currently track that order in the call state struct | ||
| Coke | dukeleto: github.com/partcl/partcl/commit/9ba...09eb355e72 | ||
| shorten | Coke's url is at xrl.us/bfr75t | ||
| Coke | I'm trying to track down if that's me or parrot. | ||
| chromatic | Okay, I'll test for a single array now then. | ||
| Coke | (running against the last known good run of parrot at r41575 | ||
| chromatic | What happens when the first element in the array is an INTVAL and someone wants it as a Float, String, or PMC? | 19:33 | |
| allison | chromatic: to put it really simply, if it's one array, we can just iterate over that array for argument processing, if it's multiple arrays, we'll have to do clever bookeeping and swapping between the two | ||
| s/two/four/ | |||
| chromatic | I don't understand what you mean by bookkeeping. | ||
| allison | chromatic: automatically boxed as a PMC | 19:34 | |
| converted as a Float or String | |||
| Coke | mannnn is svn slow. | ||
| chromatic | Conversion on access then. | ||
| allison | chromatic: keeping track of how far along we are in all 4 arrays while iterating | ||
| chromatic | Oh, you iterate over it with an Iterator instead of keeping an external index? | 19:35 | |
| Tene | chromatic: I think she's thinking that you would use compact arrays instead of sparse. | ||
| Coke does an svn up -r<foo> and gets a checksum mismatch on a file. that's a new one. | |||
| Tene | cardinal passes its test suite as expected with pcc branch. yay. | ||
| Coke | and it's repeatable. nice. | 19:36 | |
| chromatic | I was going to use arrays, but then I decided that linked lists would be much, much simpler and almost never a performance issue. | ||
| Whereas reallocating and copying to make arrays work well is more complex than we need right now. | |||
| I can write a correct and performant array system, but... meh. | |||
| allison | Tene: yes, I was | ||
| chromatic | Mostly my question was "Does PNSINS mean 0:P 1:N 2:S 3:I 4:N 5:S?" and it sounds like yes. | 19:37 | |
| allison | yes | ||
| whiteknight | problem comes from named arguments though | 19:38 | |
| I suggest that they be stored in the array directly, too. No need for a hash | |||
| allison | whiteknight: not necesarily, the could be stored in the same place, but have another layer of index added | ||
| whiteknight | that's what I was thinking | ||
| allison | as in, string index | 19:39 | |
| and, flagged in such a way that they don't get pulled into an iteration over positional args | |||
| whiteknight | that way, using named args for a missing positional would happen in a consistent order AND be relatively quick | ||
| chromatic | Or the hash value could be the struct in the array. | ||
| whiteknight | if named values don't fill in for positional values in a consistent way, that behavior is worthless | 19:40 | |
| bacek | allison: is interp->current_args (and other stuff) not used anymore? | ||
|
19:40
szabgab joined
|
|||
| allison | bacek: yes, there are quite a few c structs that can be pruned in the branch | 19:40 | |
| mainly interp and context | 19:41 | ||
| bacek | allison: good. It still accessed in Parrot_mmd_arg_tuple_func | ||
| looks like it's leftover which should be removed. | 19:42 | ||
| allison | bacek: aye, it's not set in set_args anymore, so it will be null | ||
| whiteknight | I suspect Parrot_mmd_arg_tuple_func should use CallSignature instead | 19:43 | |
| bacek | allison: can I just rip out this function? | ||
| allison | bacek: what calls it? | ||
| whiteknight | but, if it's been using the wrong thing all this time and hasn't caused failures, maybe it needs to die | ||
| bacek | whiteknight: there is _from_sigobj variant | ||
|
19:43
iblechbot joined
|
|||
| bacek | allison: looks like no one | 19:43 | |
| allison | bacek: then rip away | ||
| bacek | allison: multisub... | 19:44 | |
|
19:45
payload left
|
|||
| allison | bacek: it's called from Parrot_mmd_sort_manhattan | 19:46 | |
| bacek | allison: sort_manhattan called only from MultiSub afaik | ||
| but it should call _by_sig_pmc anyway | 19:47 | ||
| allison | bacek: yes, those other calls should be updated to be the same as 'invoke' | ||
| bacek | allison: yes, ripping now. | ||
| whiteknight | KILL! | ||
| allison | bacek: I'm guessing that the other vtable functions aren't tested | 19:48 | |
| bacek: because if they were, they'd be getting failures now | |||
| bacek | allison: indeed... | ||
| purl | indubitably | ||
| whiteknight | maybe we need more tests for MultiSub then | ||
| bacek | MultiSub is good candidate for weekly test target. | ||
| chromatic | It was a target a couple of weeks ago. | 19:49 | |
| treed | Tene: Minus the three tests that have been failing for a while? | ||
| whiteknight | hello treed | ||
| treed | 'lo | ||
| treed just got back from lunch. | |||
| or are those passing with the PCC branch too? | 19:50 | ||
| treed has a meeting in 9 minutes. | 19:51 | ||
| Tene | treed: three tests tat failed to compile. | 19:53 | |
| treed | yeah, same as before | 19:54 | |
| dalek | rrot: r41840 | bacek++ | branches/pcc_reapply/src/call/args.c: [cage] Don't use const pointers in from_continuation functions. They are not const |
||
| treed | at some point, I'd like some help in tracking that down | ||
| treed | it really seems like a parrot problem | ||
| allison | Tene: the Rakudo error is really odd, it's a mismatch in the number of arguments passed to an op | ||
| Tene: but likely related to the warning "warning: excess elements in array initializer" | 19:55 | ||
| bacek | time to go. See you soon. | ||
| dalek | rrot: r41841 | bacek++ | branches/pcc_reapply (7 files): Prune parrot_interp_t struct. Also remove old version of mmd_sort_manhattan function which doesn't work anymore |
19:57 | |
| chromatic | INCOMIGN | 19:58 | |
| INCOMING | |||
| purl | somebody said INCOMING was pause.perl.org/incoming/ | ||
| dalek | rrot: r41842 | chromatic++ | branches/pcc_optimize_sig/t/pmc/callsignature.t: [t] Added tests for push/pop and indexed access of INSP types in CallSignature. |
20:01 | |
| Coke | msg dukeleto looks like it's not a parrot problem. (old parrot that worked before fails with current partcl) | ||
| purl | Message for dukeleto stored. | ||
| rrot: r41843 | chromatic++ | branches/pcc_optimize_sig/t/pmc/callsignature.t: [t] Added CallSignature tests for storing all indexed values in a single array |
|||
| rrot: r41844 | chromatic++ | branches/pcc_optimize_sig/t/pmc/callsignature.t: [t] Added boxing/unboxing tests for positionals stored in CallSignature PMC. |
|||
| dukeleto | Coke: yay | 20:03 | |
| Coke | not for me! =--) | 20:05 | |
| Austin | pmichaud: I have a sub called Class::find_method. This invokes 7 $class.find_method($name) after chasing around for a bit setting up $class and $name. Apparently, this is recursive, despite Class:: being a module rather than a class in NQP. Is this a bug, or am I missing something? | 20:06 | |
| Austin sings "When you're chewing on life's gristle, don't grumble: give a whistle! And this'll help things turn out for the best." | 20:09 | ||
|
20:09
joeri left
|
|||
| moritz | always look on the bright side of life *whistle* *whistle* | 20:10 | |
| pmichaud | in NQP, "Class" isn't usually a Parrot class object. | ||
| but, more to the point, I'm not sure exactly what you're trying to do or expect. | 20:11 | ||
| Austin | (incidentally, this record's available in the foyer...) | ||
|
20:11
mokurai joined
|
|||
| whiteknight has to leave. Later | 20:11 | ||
| chromatic | That's too bad. The Holy Grail was under his seat. | ||
| pmichaud re-reads Austin's description, looking for understanding. | 20:12 | ||
| Austin | Pmichaud: What I'm trying to do is resolve the class object, then call find_method on it. And that all works, so I refactored it out of another sub into a "find_method" sub that I could call. | ||
| pmichaud | and by "class object" you mean "Parrot class object", as opposed to P6object/NQP protoobjects? | 20:13 | |
| Austin | I mean whatever comes back from get_class. I'm stealing heavily from P6object.pir | 20:14 | |
| So when $class isa 'String', I call get_class, then that doesn't work, so I split('::') on it, then call get_namespace, then call get_class on that. | 20:15 | ||
| Coke | dukeleto - bug introduced here (2d301e4f8217ec0c7dd76e6445aa23c391ce32f8 is first bad commit | ||
| Austin | And *that* is in $class. So then I call $class.get_class() and I wind up back in my sub, rather than off in C someplace like I expected. | ||
| Coke | (which is, of course, a relatively invasive change.) | ||
| pmichaud | okay, if you're using get_class, that's a Parrot object | ||
| Austin | Sorry. $class.find_method -- not get_class | 20:16 | |
| pmichaud | if you put a sub into the Class namespace, either imcc or the method objects might be confusing it | ||
| Austin | That's what I was thinking - this might be a bug. | ||
| Because the generated PIR does not declare this sub as :method, so why dispatch to it? | 20:17 | ||
| pmichaud | because Parrot still thinks it's a good idea to have methods listed in the namespace | ||
| Tene | Austin: my first suspicion is that it's due to :methods going into the namespace | ||
| pmichaud | and for built-in PMC types (such as Class), they might look in the namespaces for methods no matter what. | 20:18 | |
| Tene | so when you put yours into the namespace, maybe it ends up clobbering th eold method | ||
| Austin | Hunh. | ||
| Tene | that's just a guess | 20:19 | |
| Austin | So the method call on builtin::Class is doing a namespace lookup? | ||
| pmichaud | found the bug | ||
| Tene | but, probably related to the :methods in namespaces thing. | ||
| pmichaud | seems to be unrelated | ||
| nopaste coming | 20:20 | ||
| dukeleto starting writing small parrot blog post which is now becoming epic | |||
| nopaste | "pmichaud" at 72.181.176.220 pasted "subs in namespaces automatically treated like methods #1" (16 lines) at nopaste.snit.ch/18332 | 20:21 | |
| pmichaud | note that foo isn't declared :method | ||
| moritz | this is quite like perl 5 :/ | 20:22 | |
| Austin | This is a bug, right? | 20:23 | |
| pmichaud | I'd say yes. | ||
| And i suspect it happens only for the builtin PMC types | |||
| testing | |||
| Austin | You want to fill out the ticket, or shall I? | ||
| pmichaud | you can. my tickets tend to get warnocked. | 20:24 | |
| Austin | :) | ||
| nopaste | "pmichaud" at 72.181.176.220 pasted "works for non-PMC types" (18 lines) at nopaste.snit.ch/18333 | ||
| dukeleto | whoa, I wish I would have found this guide to NQP sooner: en.wikibooks.org/wiki/Parrot_Virtua...Quite_Perl | 20:28 | |
| shorten | dukeleto's url is at xrl.us/bfr8th | ||
| Austin | Thanks, pmichaud++ for the quick examples. TT#1108 | 20:30 | |
| dalek | TT #1108 created by Austin_Hastings++: Subs in "built-in PMC" namespaces are treated as PMC methods | 20:33 | |
| Austin sings "Time has passed, I'd forgotten; Mother Nature does wonderful things. I thought nothing could stop me from lovin' you, but time changes everything." | 20:35 | ||
| Hmm.. new issue - MultiSub does not support get_namespace. :( | 20:38 | ||
| W00t! Trampolines work. | 20:42 | ||
| dukeleto likes jumping on trampolines | 20:44 | ||
| Austin likes automatically generating them. | 20:45 | ||
| dukeleto | parrot hacktivity blog post: leto.net/dukeleto.pl/2009/10/parrot...eport.html | 20:52 | |
| shorten | dukeleto's url is at xrl.us/bfr8yp | ||
| dalek | TT #1109 created by Austin_Hastings++: MultiSub PMC does not support get_namespace method | ||
|
20:58
Whiteknight joined
21:02
bluescreen joined
21:04
TonyC joined
|
|||
| chromatic | Helpful tip: don't include the parameter name when writing the return type in a C function signature. | 21:04 | |
|
21:17
hudnix joined
21:18
AndyA joined
|
|||
| dalek | kudo: 54cfe42 | pmichaud++ | docs/spectest-progress.csv: spectest-progress.csv update: 452 files, 27836 (72.8% of 38211) pass, 0 fail |
21:21 | |
| shorten | dalek's url is at xrl.us/bfr85s | ||
|
21:27
KatrinaTheLamia joined,
AndyA joined
|
|||
| dalek | rrot-plumage: e2f0d58 | leto++ | : [t] Add basic tests for plumage info |
21:40 | |
| shorten | dalek's url is at xrl.us/bfr88p | ||
| chromatic | Oh right, pointer tagging only works if you tag the pointers. | 21:53 | |
|
21:53
Whiteknight joined
|
|||
| dalek | rrot-plumage: 87306d9 | leto++ | : [t] Add some tests for default behavior and when input args are not valid |
21:56 | |
| shorten | dalek's url is at xrl.us/bfr9an | ||
| dukeleto | how does one properly mock tests which fetch/configure/install software (such as plumage)? sounds like I need to include dummy svn/git repos in my test suite | 22:04 | |
|
22:08
darbelo joined
|
|||
| dalek | rrot-plumage: 20d64f5 | leto++ | : [t] More tests for invalid projects |
22:12 | |
| shorten | dalek's url is at xrl.us/bfr9dd | ||
|
22:15
patspam joined
|
|||
| dalek | tracwiki: v27 | dukeleto++ | CallingConventionsOverview | 22:24 | |
| tracwiki: trac.parrot.org/parrot/wiki/Callin...ction=diff | |||
| shorten | dalek's url is at xrl.us/bfr9er | ||
| dalek | rrot-plumage: 7a0c81a | leto++ | : [tasks] Remove 'teach dalek about gitorious' from tasklist, darbelo++, i... |
22:50 | |
| shorten | dalek's url is at xrl.us/bfr9hw | ||
| japhb | dukeleto++ # Constant plumage commits | 22:51 | |
| Coke | hurm. should git revert -n <sha1> leave me in a state where there's nothing to commit? | 22:53 | |
| Tene | Coke: no. | 22:54 | |
| Whiteknight | dukeleto: ping | ||
| Tene | Coke: 'revert' is for making an 'undo' commit. | ||
| commit the reverse of some different commit. | |||
| you want reset | |||
| git reset --hard HEAD | |||
| will do | 22:55 | ||
| Coke | Yes. I want to revert a commit. | ||
| but I don't want to commit it immediately. I just want to undo <sha1> | |||
| Tene | Coke: -n will apply the change to your working directory *and* the index. | 22:56 | |
| so it's like you then did git add ... | |||
| Coke: if you want to un-add everything, then do your git- revert and then run git reset --mixed HEAD | 22:58 | ||
| Coke | I think I got it. I just did a reset and then did a revert sans -n. I can always remove that commit before git push if it doesn't work out. | 22:59 | |
| ... but it does. shame. no test failures in 'make test', but it killed spectest. | 23:00 | ||
| is there an easy way to see what commits I have locally that aren't in the repo I cloned from? | 23:01 | ||
| diff master? | 23:02 | ||
| darbelo | Did partcl's svn branches get pulled into github? | 23:03 | |
| Coke | darbelo: looks like, yes. | ||
| darbelo | Guess I'll have to get back to work then :) | ||
| chromatic | Testing CallSignature is difficult because if there are bugs, tests won't work. | 23:05 | |
| Tene | Coke: git log master.. | ||
| Coke | that shows my local master, yes? | 23:06 | |
| Tene | Coke: that's the abbreviated form of master..HEAD | ||
| Coke | <blank stare> | ||
| Tene | Coke: try origin/master.. instead then | 23:07 | |
| Coke | ah. 'git cherry origin' looks promising. | 23:08 | |
| Tene++ | 23:09 | ||
| dalek | rtcl: b455eb2 | coke++ | runtime/ (5 files): Revert "PIR cleanup and some refactoring of call_chain manipulation" |
23:14 | |
| shorten | dalek's url is at xrl.us/bfr9kn | ||
| Coke | yay, git, saving me from myself. | 23:15 | |
| Whiteknight | I have a local git repo. How do I put it on github? | 23:22 | |
| their documentation seems to describe every other operation under the sun | |||
| dalek | p-rx: 982f190 | pmichaud++ | src/Regex/P6Regex/Actions.pm: Clean up handling of initial negated character class subrule. |
23:26 | |
| shorten | dalek's url is at xrl.us/bfr9na | ||
| pmichaud | Whiteknight: just a sec | 23:28 | |
| it's github.com/guides/import-an-existing-git-repo | 23:29 | ||
| Whiteknight | that's exactly what I was looking for! Thanks pmichaud++ | 23:30 | |
| Yay! I have a repo on github! | 23:35 | ||
| darbelo | Whiteknight: Where? Where? | ||
| chromatic | Ha, CallSignature is starting to pass its tests. | 23:36 | |
| Whiteknight | github.com/Whiteknight/matrixy | ||
| darbelo | Matrixy? I haden't heard of it before. How awesome is it? | 23:37 | |
| darbelo barely remembers his MATLAB | 23:40 | ||
| Whiteknight | It needs a lot of work, I haven't really touched it in months | 23:45 | |
| I need to come up with a clever name for a linear algebra library bundle for Parrot | 23:47 | ||
| because that's the next repo I'm creating | |||
| darbelo | I've been wanting to do some numerical work on parrot for a while, throw that url at me when it's created. | ||
| Whiteknight | darbelo: help me come up with a good name | ||
| and by "help me", I mean "do it for me" :) | 23:48 | ||
| darbelo | "plap" | ||
| Whiteknight | sexy | ||
| Austin | Convect | ||
| darbelo | Parrot's Linear Algebra Package | ||
| Austin | conure , vectors, convex | ||
| Whiteknight searches wikipedia for some kind of bird that has something to do with matrix multiplication... | |||
| github.com/Whiteknight/parrot-linear-algebra | 23:49 | ||
| Whiteknight got tired of trying to be clever | 23:50 | ||
| Austin | l-a-p-d ? | 23:53 | |
| Whiteknight | yeah, and I could get a bunch of T-Shirts that say LAPD on them | 23:54 | |
| darbelo wants to get parrot 'native' big numbers. | 23:59 | ||