|
Parrot 3.5.0 "Menelaus" released | parrot.org | Log: irclog.perlgeek.de/parrot/today Set by moderator on 27 June 2011. |
|||
| pmichaud | see also the definition of Scalar in src/Perl6/Metamodel/BOOTSTRAP.pm | 00:00 | |
| anyway, the key for us is to have an explicit and well-defined container type | 00:01 | ||
|
00:15
Kulag joined
00:19
Drossel left
|
|||
| whiteknight | we had talked about that idea too, of a proxy PMC that would act like a ptr/container | 00:20 | |
| is that a direction parrot should take? | |||
| I may want to start playing with 6model sooner rather than later. I'm turning out to be a little bit useless when it comes to profiling | 00:26 | ||
| dukeleto | whiteknight: i think we need better tutorials to teach parrot hackers to profile | ||
| whiteknight | that's very possible | ||
| dukeleto | whiteknight: we are in a bad spot now. We have very few tuits and hackers doing that, but we all recognize it is important | 00:27 | |
| cotto | whiteknight, ok. I'll consider it my responsibility to move that forward. Jump in when the water warms up. | ||
| whiteknight | I'm happy to grind out code, but I still can't really figure out what we have and what we are missing | 00:28 | |
| also, it turns out there are humorous pictures of cats on the internet, and that's eating up a lot of my time recently | 00:34 | ||
| who would believe there are so many cat pictures with witty captions? It's like pokemon, I gotta catch em all | |||
| benabik | The Itty Bitty Whiteknight Distracting Committee? | ||
| whiteknight | :) | 00:35 | |
| dukeleto | Ceiling Cat Disapproves | ||
| atrodo | You've never seen lolcats? I don't think I can make a witty comment scathing enough | ||
| whiteknight | I'm kidding. I've been addicted to the cute devil for years | ||
| atrodo | whiteknight++ then | 00:36 | |
|
00:37
theory left
|
|||
| benabik | ... Lexical Int, Str, and Num?!? Awesome! jnthn++ | 00:39 | |
|
00:44
dmalcolm left
|
|||
| colomon | As long as I'm in here... what is the status of GMP and Parrot? BigIntegers are looking very very appealing for Rakudo at the moment (besides being p6 spec, of course). | 00:48 | |
| whiteknight | blah, C# is ruining me. 4 times since yesterday I've spelt NULL as "null" | 00:54 | |
| I need to get my mind right | |||
|
00:55
soh_cah_toa left
|
|||
| dukeleto | colomon: the parrot-gmp project is proceedingly nicely, it is bubaflub++'s gsoc project | 01:01 | |
| colomon: he has almost all of the integer functions implemented | |||
| colomon | sweeet! | 01:02 | |
| dukeleto | colomon: and he has a framework that generates the necessary code, so it should be much easier to get access to rationals and numerics | ||
| colomon: we can talk in person : | |||
| colomon: :) | |||
|
01:03
colomon left
01:04
benabik left
|
|||
| sorear | but if you do that, I can't eavesdrop | 01:04 | |
| dalek | rrot/whiteknight/packfilewrapper: f7e135f | Whiteknight++ | / (7 files): Parrot_pf_read_pbc_file now returns a PackFile* instead of a PMC. We have a routine to wrap it in a PMC if needed. Delete the PackfileManager PMC type. It was worthless. Move most of the functionality to PackfileView. Move the ability to get the current packfileview pmc from the interpreter |
01:05 | |
| rrot/whiteknight/packfilewrapper: 93921fd | Whiteknight++ | src/pmc/packfileview.pmc: Add a constant_counts method to PackfileView to return the counts of the different types of constants in the packfile. cotto++ for the idea |
|||
|
01:08
cotto left
01:09
colomon joined
01:15
rurban left,
hercynium joined
01:28
lichtkind left
|
|||
| whiteknight | cotto: two example programs for you: | 01:32 | |
| gist.github.com/1052714 | |||
| I have been kicking around the idea of adding an interface to get Opcode PMCs by index too. | 01:34 | ||
| although, that might be a lot more trouble than it's worth | |||
| I would really like to get to the point where we can rewrite pbc_dump in PIR or higher | 01:35 | ||
| the ability to iterate constants is the first half of that. ability to index and decode opcodes is the next part | |||
| of course, I don't want to add an interface that is going to be PASM/PBC specific with M0 on the horizon | 01:36 | ||
| Maybe, instead of decoding, I add a method that returns a StructView or similar over the bycode buffer, and let the user index into it | 01:37 | ||
| or add a dynpmc for decoding bytecode | |||
| whiteknight angrily mumbles something about variadic opcodes | 01:41 | ||
| dalek | rrot/whiteknight/packfilewrapper: 9e7e0a2 | Whiteknight++ | src/pmc/parrotinterpreter.pmc: Fix interp['packfile'] to work |
01:45 | |
|
01:45
whiteknight left
02:06
bubaflub joined
02:26
wagle left
02:39
theory joined
02:56
wagle joined
|
|||
| dalek | rrot-gmp: 7dfe1af | bubaflub++ | src/GMP/Common. (2 files): update to gmp_randstate_t struct actually it's declared as a single item in an array, so just store one pointer |
03:04 | |
| rrot-gmp: 18076e1 | bubaflub++ | t/random/urandom.t: tests for gmp_urandom functions this covers gmp_urandomb_ui and gmp_urandomm_ui |
|||
| rrot-gmp: 9768be3 | bubaflub++ | t/integer/random.t: tests for mpz_random functions this covers mpz_urandomb, mpz_urandomm, and mpz_rrandomb |
|||
| rrot-gmp: 92a50db | bubaflub++ | conf/blacklist.yml: add two obsolete mpz_random functions to the blacklist |
|||
| rrot-gmp: 65cce8c | bubaflub++ | src/GMP/Integer. (2 files): update GMP::Integer after blacklisting two obsolte random functions |
|||
| bubaflub | msg dukeleto parrot-gmp now has complete test coverage over all integer functions. woot. | 03:06 | |
| aloha | OK. I'll deliver the message. | ||
|
03:14
contingencyplan joined
03:22
bluescreen left
|
|||
| colomon | bubaflub++ | 03:48 | |
|
03:48
cotto joined
03:51
colomon left,
colomon_ joined,
colomon_ is now known as colomon
|
|||
| cotto | ~~ | 03:53 | |
|
03:59
benabik joined
|
|||
| dukeleto | bubaflub: nice work | 04:09 | |
| dukeleto finally attempts to finish his slides that he is presenting in the morning | 04:10 | ||
| bubaflub: colomon is very interested in using parrot-gmp in rakudo. Looks like he will be one of your first users | |||
| cotto | watch out. Those users can be ruthless. They might even expect your code to work. | 04:13 | |
|
04:14
soh_cah_toa joined
|
|||
| soh_cah_toa | cotto or dukeleto: are you going to the breakfast tomorrow? | 04:18 | |
| colomon | cotto: expect it to work and be Awesome | 04:21 | |
| cotto | soh_cah_toa, I might be there. I literally have no idea. | ||
| well, no useful idea | |||
| I did notice that it's after midnight. That's an important data point. | 04:22 | ||
| colomon | yes, time for sleep | ||
| soh_cah_toa | yeah | ||
|
04:23
soh_cah_toa left
|
|||
| benabik | Is there a special breakfast tomorrow or just the normal "there's a buffet over there" | 04:23 | |
|
04:25
theory left,
hercynium left
|
|||
| dukeleto | sorear: i like to eat breakfast | 04:27 | |
| sorear: oops, meant soh_cah_toa | |||
| benabik: probably the normal buffet | |||
|
04:36
theory joined
|
|||
| dukeleto goes into the late-night-slide-making-delirium | 04:42 | ||
|
04:45
JaphMalik left,
hercynium joined
|
|||
| dukeleto | ack doesn't search .nqp files by default. I think it should. | 04:50 | |
| I wonder who we could bug about that... | |||
| dalek | rrot: 1f22953 | dukeleto++ | / (3 files): Give dedeprecator an .nqp extension to match all the other nqp scripts in tools/dev |
04:51 | |
| sorear | dukeleto: your IRC client is failing pretty hard | 04:52 | |
|
05:00
hercynium_ joined,
hercynium left,
hercynium_ is now known as hercynium
05:13
fperrad joined
05:17
NotFound joined
05:38
hercynium left
05:52
theory left
05:57
benabik left,
woosley joined
05:59
benabik_ joined
06:05
benabik_ left
06:08
cotto left
06:14
zby_home_ left
06:16
benabik joined
06:56
benabik left
07:01
contingencyplan left,
UltraDM joined
07:30
mj41 joined
07:33
Demin left
07:44
JaphMalik joined
08:10
JimmyZ joined
08:13
benabik joined
08:22
fperrad left
08:24
fperrad joined
08:33
contingencyplan joined
09:20
kj joined
09:22
kj is now known as kjs
09:24
contingencyplan left
09:29
JimmyZ left
09:39
ambs joined
09:41
dodathome joined
|
|||
| moritz | www.serpentine.com/blog/2011/06/29/...w-you-had/ this might be very interesting for parrots num -> string conversion | 09:50 | |
|
10:04
dodathome left
10:06
kjs left,
dodathome joined
10:14
dodathome left
10:15
woosley left
|
|||
| dalek | kudo/nom: cf7f01f | moritz++ | src/ (3 files): make Int/Int a Rat. Also moves some of the Rat definition into BOOTSTRAP.pm |
10:15 | |
|
10:37
SHODAN joined,
SHODAN left
10:39
SHODAN joined
|
|||
| dalek | kudo/nom: a04dd6f | moritz++ | t/spectest.data: 5 more passing spectest files |
10:39 | |
| kudo/nom: 4db1c8a | moritz++ | src/ (3 files): No need to move Rat to BOOTSTRAP This mostly reverts cf7f01f4a9d05d53d5cbc8a8530d52ae45eed8e7 jnthn++ for pointing out that the BOOTSTRAP thing isn't necessary. It turns out the correct infix:</> was already in Rat.pm, just commented out. No idea why. |
|||
|
10:51
particle joined
10:55
particle1 left
11:30
JaphMalik left
11:38
JaphMalik joined
11:40
cotto joined
11:43
JimmyZ joined
11:45
kid51 joined
11:46
JimmyZ left
11:49
ambs left,
JimmyZ joined
11:57
JimmyZ_ joined
12:01
JimmyZ__ joined
12:02
JimmyZ left,
JimmyZ__ is now known as JimmyZ
12:06
JimmyZ_ left
12:17
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 12:17 | |
| cotto | good morning, whiteknight | ||
| kid51 | good morning | ||
| whiteknight | hello cotto. It's extremely weird seeing you online this early in the morning | 12:18 | |
| kid51: hello. It's less weird to see you :) | |||
| JimmyZ | good morning where is morning :) | ||
| whiteknight | JimmyZ: I think it got lost somewhere | ||
| cotto | whiteknight, back at you | ||
| kid51 | Usually I'm just about headed out the door to work at this time. | ||
| JimmyZ | whiteknight: where is lost ? | 12:19 | |
| kid51 | whiteknight: Welcome your responses to what we've been posting on parrot-directors in recent days. | ||
| whiteknight | ki51: Yeah, I've been reading and mulling over | 12:20 | |
| I'll put out a response today | 12:21 | ||
| kid51 | thx | ||
| Linux/i386: all-g++ build: make test PASS; make codetest PASS | 12:23 | ||
| whiteknight: If you can comment on trac.parrot.org/parrot/ticket/1682, that would be appreciated | 12:24 | ||
| whiteknight | kid51: I'll review and maybe apply the patch tonight. Mind if I own the ticket? | ||
| kid51 | Steal away | 12:25 | |
|
12:27
Drossel joined
|
|||
| kid51 | Big Parrot day here at YAPC: dukeleto at 10 and cotto at 11; colomon (rakudo) in afternoon | 12:27 | |
|
12:28
benabik left
|
|||
| colomon | all in the same room, too | 12:28 | |
| kid51 | Last night: 2-1/2 hour BOF with P6; 12 total attendees | 12:29 | |
| cotto | wheeee | ||
| moritz envious | |||
| mikehh me too | 12:30 | ||
| kid51 particularly impressed with benabik's and atrodo's depth of knowledge about Parrot | |||
| They were fully able to keep up with chromatic and TimToady | |||
| cotto | quite | 12:31 | |
| kid51 | (which kid51 is *not*) | ||
| whiteknight | I am looking forward to seeing rewriteups or summaries about these meetings, what kinds of things users say they want, what things people want to do, etc | 12:32 | |
|
12:32
Kulag left
|
|||
| whiteknight | When I was at YAPC two years ago, we had a few meetings that I thought were pretty transformative | 12:32 | |
| kid51 | whiteknight: Some of what's been discussed so far has been substantive, i.e., the technological content of parrot ... | 12:33 | |
| whiteknight | That's when we first started serious talking about Lorito (although back then we referred to it as "L1") | ||
| cotto | A couple people were taking notes. | ||
| whiteknight | kid51: and what's the concensus opinion on that front? | ||
| kid51 | ... but much of it has been process/community-oriented | ||
| whiteknight | process is important too | ||
| YAPC two years ago was when we started making changes to #parrotsketch meeting formats as well, and I think that has been successful | 12:34 | ||
| kid51 | The question dukeleto posted on parrot-dev last night (which I think originally came from particle), is one we'd like everybody to think about | ||
| whiteknight | heh, I've been thinking about that | ||
| kid51 | whiteknight: We need to adjust time of #ps to get you in there on regular basis | 12:35 | |
| whiteknight | If I were paid to work on Parrot, I would do a lot of the same stuff I already do, but a heck of a lot more of it and I would never stop smiling | ||
| moritz | unless when cursing IMCC guts again :-) | ||
| whiteknight | moritz: I'd be smiling while cursing. I would be thrilled to be paid to work on IMCC | 12:36 | |
| right now I have to pick my battles, because I have limited time and a huge TODO list. If I had 40 hours a week, I would be much less averse to picking up a huge project like that | |||
| I'd rewrite the whole thing and rename it to WKBFPA: Whiteknight's big freaking PIR assembler | |||
| kid51 | We also talked about the Parrot-Rakudo relationship manager process. | 12:37 | |
| whiteknight | well, at least put that last part up for a vote | ||
| kid51 | In addition to the designated managers (whiteknight, cotto for Parrot; pmichaud and moritz (I think) for Rakudo), we want to encourage those people who hang out in both channels to communicate their sense of how the two projects are interacting. | 12:38 | |
| People like util and benabik reported that they were trying to attend both #parrotsketch and #phasers, so we encouraged them to develop a sense of the two groups are doing. Grass-roots level feedback. | 12:39 | ||
| Also, the designated relationship managers are encouraged to consider whether they want periodic conference calls ... | 12:40 | ||
| ... much like the former Perl 6 calls, which TimToady said had fallen into disuse because it was almost all Parrot people attending! | |||
|
12:41
bluescreen joined
|
|||
| kid51 | We're also encouraging more people to blog ... | 12:41 | |
| whiteknight | I'm giving it all I've got, captain! | 12:42 | |
| kid51 | ... looking forward to the day when total number of words blogged by all !whiteknight > whiteknight | ||
| :-) | |||
| whiteknight | when that day comes, I'll have to turn on my A-game | ||
| put the pressure back on | |||
| kid51 | darwin/PPC: make test PASS | 12:44 | |
| JimmyZ | can parrot people establish a grant submission to Ian Hague Perl 6 Development Grants, for improve rakudo ? | ||
| kid51 | JimmyZ: We (Parrot Foundation) first have to get our act together so that we can administer grants properly. | 12:45 | |
|
12:45
dukeleto left
|
|||
| cotto | JimmyZ, I believe that Hague grants need to be directly related to a Perl 6 implementation. | 12:45 | |
| kid51 | We have to file certain tax-related papers so that we know on what basis we can ask people for money. | ||
| cotto | JimmyZ, I'd love to be wrong about that though. | 12:47 | |
| kid51 | JimmyZ: We will then have to develop a way of (a) identifying the type of efforts that would benefit from someone working on them for $$$; (b) prioritizing those tasks; (c) administrering grants. | ||
| JimmyZ: Once we are better at identifying and prioritizing our needs, we'll be in a position to raise money to get people to work on those needs. | 12:49 | ||
| whiteknight | I don't see any reason why the grant would need to go through PaFo. A hacker can apply to TPF directly, and receive money from them | 12:50 | |
| moritz | anybody familiar with pcre related build failures? gist.github.com/1053747 reported by flussence in #perl6 | ||
| whiteknight | Is there even still Hague-related money to be applied for? | ||
| moritz: I haven't heard about that. I'll take a look | |||
| moritz | that's the configure.pl output: gist.github.com/1053756 | ||
| whiteknight: yes, > 20k USD last I looked | 12:51 | ||
| whiteknight | I wasn't aware of that. I may have to look into that | 12:52 | |
| moritz | note that the grant was two fold | ||
| 100k for actual hacking | |||
| no wait1 | |||
| 100k in total, iirc | |||
| half for hacking | |||
| half for improving the infrastructure to acquire more funds | 12:53 | ||
| whiteknight | so when you say there's 20K left, which part is that from? | ||
| moritz | that second half is nearly all still there | ||
| and 20K left from the hacking grant | |||
| kid51 | moritz: PCRE: trac.parrot.org/parrot/ticket/2107 | ||
| moritz | kid51++ thanks | 12:54 | |
| cotto | colomon is here at yapc. Perhaps it'd be good to poke at his machine this afternoon or tomorrow. | ||
| moritz | cotto: that would be awesome. Seems to be pretty widespread | 12:55 | |
| cotto | moritz, always on gentoo or not? | ||
| moritz | cotto: I think it was reported on OS X too, but I'm not sure | ||
| cotto | ok | 12:56 | |
|
12:58
dukeleto joined
|
|||
| kid51 to lobby for more coffee | 12:58 | ||
| dukeleto | ~~ | ||
| JimmyZ | :) | 13:00 | |
| moritz | irclog.perlgeek.de/perl6/2011-06-29#i_4024212 | 13:01 | |
| bubaflub | ~~ | 13:02 | |
| dukeleto | bubaflub: mornin' | 13:04 | |
| bubaflub | morning dukeleto | ||
| dukeleto: i saw your note about asserting if a random number falls within a given range - i can add that. currently the test will fail if those NCI calls fail or blow up. | 13:05 | ||
| whiteknight | tests for random number generators are notoriously difficult | ||
| You have to run enough tests to show you have a good sample set, and you need to design your tests in a way that you don't occasionally get false-positives or false negatives | 13:06 | ||
|
13:08
kid51 left
13:09
JimmyZ__ joined
|
|||
| moritz | luckily there are good, open source test suites for (pseudo) random numbers already | 13:09 | |
| but you usually don't run them as regular regression tests | 13:10 | ||
| they just take up way too much CPU | |||
| colomon | cotto: unfortunately from the pcre bug perspective, I upgraded my machine and OS since that bug report, and have a pcre that parrot is perfectly happy with now. | 13:11 | |
| whiteknight | colomon: What OS did you have before? What do you have now? | 13:12 | |
|
13:12
JimmyZ left,
JimmyZ__ is now known as JimmyZ
|
|||
| bubaflub | moritz and whiteknight: i can set the algorithm and the seed, but i still don't think testing the direct output is a good idea | 13:12 | |
| colomon | whiteknight: OS X 10.5....8? (Exact value should be in the bug report, I think.) and now OS X 10.6.7. | 13:13 | |
| cotto | It looks like disabling the svn repo on trac broke all our links to commits on github | 13:15 | |
| dukeleto | blarg | 13:18 | |
| bubaflub: we just need some simple rng tests. Just make sure you get a random number in the range that you expect | |||
| bubaflub: no need to reimplement the DIEHARD tests just yet :) | 13:19 | ||
| bubaflub | dukeleto: roger that. i'll add those today. next up: setup.pir. | ||
| dukeleto | bubaflub: woot | ||
| whiteknight | kid51: that patch from #1682 does not apply cleanly. I worked around that, I'll be able to fix anything that is broked | 13:20 | |
| I'm building now | |||
|
13:24
JimmyZ_ joined
|
|||
| Coke | I just donated money to TPF. Can I do that with Pafo yet? | 13:26 | |
| the donate link on our site goes to: | 13:27 | ||
| whiteknight | t/src/extend_vtable.t takes forever now | ||
| Coke | co.clickandpledge.com/include/Warn...?wid=26715 "Account cannot be located." | ||
| whiteknight | I think that button is under construction | 13:28 | |
|
13:28
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
| dukeleto | Coke: particle is trying to fix our donate button | 13:28 | |
| Coke: sadly, it wasn't noticed that it was broken | |||
| since we like running tests so much, we really should have a script to verify all the links on our site work correctly | 13:29 | ||
| whiteknight: define forever | |||
| whiteknight: it is compiling and running over 100 C programs | |||
|
13:29
kid51 joined
|
|||
| whiteknight | dukeleto: I'm not suggesting it can be improved. There's a penalty we pay for awesome test coverage | 13:32 | |
| dalek | rrot/vtable_substr: 286326f | Whiteknight++ | / (11 files): apply patch from kid51++ to remove VTABLE_substr and rename the old VTABLE_substr_str to VTABLE_substr. His patch did not apply cleanly in t/src/extend_vtable.t, so I did a quick-n-dirty replace of my own |
13:33 | |
| kid51 | Hmm, yes there were probably changes to t/src/extend_vtable.t after I wrote that branch | 13:34 | |
| whiteknight | testing on that branch would be appreciated | 13:35 | |
| kid51 | Oh, you haven't actually merged it yet. | ||
|
13:35
cotto left
13:36
Coke left,
Coke joined
|
|||
| kid51 | whiteknight: Did you fork? | 13:36 | |
| whiteknight | branch | 13:37 | |
| "vtable_substr" branch | 13:38 | ||
| kid51 | Okay, I just did git pull and now see the new branch | ||
| whiteknight | I haven't reviewed the patch deeply yet. But it builds and passes tests for me so that's a good sign | 13:41 | |
| I'll give it a much closer look tonight and then merge if there are no problems reported | |||
| kid51 | k; I will delete the earlier branch | 13:42 | |
| whiteknight | oh, was there an earlier branch? I didn't even see that | 13:43 | |
| my apologies | |||
| kid51 prepares to go downstairs to dukeleto talk | |||
| whiteknight | kid51: Did your talk make it online? | 13:44 | |
|
13:44
cotto joined
|
|||
| kid51 | git branch -a | grep -i vtable -- is your friend? | 13:44 | |
| Yes: I posted links to it in post to parrot-dev | |||
| thenceforward.net/perl/yapc/YAPC-NA-2011/ | |||
| whiteknight | ...I don't seem to have gotten that email | ||
| kid51 | Went out at 5:06 PM ET yesterday. | 13:45 | |
| cotto | I replied to it. | ||
| kid51 | cotto posted audio | ||
|
13:46
benabik joined
|
|||
| benabik | ~~ | 13:46 | |
| kid51 | linux/i386: vtable_substr branch PASS | ||
|
13:47
kid51 left
|
|||
| whiteknight | I'm listening to it now | 13:49 | |
|
13:51
dukeleto left
13:52
contingencyplan joined
13:56
colomon left
|
|||
| atrodo | =~ Morning! | 13:58 | |
|
13:59
colomon joined
14:00
benabik left
|
|||
| atrodo | dukeleto++ Yay Visuals! | 14:00 | |
|
14:01
benabik joined
|
|||
| atrodo | dukeleto++ TimToady++ particle++ cotto++ benabik++ chromatic++ soh_cah_toa++ kid51++ Util++ colomon++ # Nice BOF/Dinner | 14:03 | |
| colomon | atrodo++ too! | ||
| whiteknight | ++ for everybody! | 14:04 | |
| NotFound | Why perl6 people want pcre? They don't have enogh with its own kind of regexes? | 14:08 | |
| moritz | NotFound: we just want parrot to build out of the box | ||
|
14:08
kid51 joined
|
|||
| NotFound | That's easy: put pcre out of the repo. | 14:09 | |
| moritz | NotFound: it's fine for us not to have PCRE, but if configure detects its presence, and then the build fails, our users have a problem | ||
| whiteknight | I agree with NotFound++. I don't think we need pcre bindings included in Parrot build | ||
| It could easily be moved out to an extension project, and probably get a lot more love there | 14:10 | ||
| moritz | I'll have to ask jnthn__ and pmichaud if removing PCRE would be a problem for us, but to the best of my knowledge it's not | ||
| NotFound | Build fails? That's new, I tought there are just the old known test failures. | ||
| whiteknight | it seems to fail on certain versions of Mac OSX | ||
| Maybe other places | |||
| moritz | NotFound: trac.parrot.org/parrot/ticket/2107 | ||
| and gentoo | |||
| kid51 | IIRC There are 4 active Trac tickets with PCRE -- which suggests we don't have resources to maintain it in master | 14:11 | |
| whiteknight | ah yes, gentoo | ||
| kid51 | I'm not sure why we ever had it in the first place. | ||
| NotFound | kid51: yes, that's the reason to propose get rid on it. Lots od diagnostic but looks like nobody care enough to look at it. | ||
| kid51 | There was a period when anyone could say "Parrot ought to look for X" and no one would say no. | ||
| NotFound | I asked several times if it was a real problem for somenone. No answers. | 14:13 | |
| kid51 | The Trac tickets are circumstantial evidence that people have problems. | ||
| NotFound | kid51: I mean real problems like need to use pcre for something. | 14:15 | |
| kid51 | Ah, yes. | ||
| NotFound | Failure to build is a real problem, but for that one I already know the appropiate solution. | 14:16 | |
| whiteknight | what is the appropriate solution? Remove pcre bindings from core? | ||
| NotFound | Yeah | ||
| kid51 | We will probably need to file deprecation notice. | 14:17 | |
| :-( | |||
| NotFound | I don't feel like working on fixing something that nobody uses and nobody care. | ||
| kid51 | Agreed | ||
| moritz | does lua use PCRE regexes? | 14:18 | |
| kid51 | msg fperrad Does Lua use PCRE regexes? We're pondering deprecating them. | ||
| aloha | OK. I'll deliver the message. | ||
| NotFound | Also, we don't need C bindings, core or not. It's probably easier and more versatile to write a NCI one. | 14:19 | |
| whiteknight | is that what it uses, c bindings? | ||
| NotFound | If not, using configure infrastructure for it a lose of time. | 14:20 | |
| is | |||
| bubaflub | i thought plobsing said they were NCI: runtime/parrot/library/pcre.pir | ||
| whiteknight | so then yes, the configure step might be unnecessary | 14:21 | |
| NotFound | So yes, the way of detecting and configuring is a big mistake. | ||
| whiteknight | We need to see what it is doing before we declare it a mistake | ||
| NotFound | whiteknight: I've looked at it several times. | ||
| whiteknight | oh, okay. I haven't. I'll trust you then | ||
| NotFound | It has that logic in configure, and then ignores it in the tests. | 14:22 | |
| Well, maybe I've been to rude. The mistake is in the testing logic. | 14:23 | ||
| atrodo | isparrotfastyet is getting a data reset, so it's bare | ||
| moritz | so it will display a big NO? :-) | 14:24 | |
| atrodo | hopefully this will help data to start flowing | ||
| moritz | SCNR | ||
| atrodo: is there an easy way to contribute data to it? | |||
| NotFound | Looking at that failure report, it seems that parrot_nci_thunk_gen uses (or at least tries to load) pcre. | 14:25 | |
| atrodo | moritz: if you have a free, underused, non-vm machine, possibly. but not yet | ||
| moritz | atrodo: I have, but it's only running occasionally | ||
| atrodo | moritz: specs? | 14:26 | |
| moritz | atrodo: amd64 with Debian GNU/Linux, 6GB RAM. Don't remember the exact processor family (nothing fancy) | 14:27 | |
| atrodo | moritz: more than what's running now. yea, when I get all this figured out and ready to have more machines, i'll get a hold of you | ||
|
14:27
hercynium joined
|
|||
| atrodo | it's running on an old p4, 512M LFS machine right now | 14:27 | |
| NotFound | Confirmed, parrot_nci_thunk_gen uses pcre: tools/dev/nci_thunk_gen.pir line 860 | 14:28 | |
| moritz | looks like it could be rewritten in nqp - somebody just[tm] has to do it | 14:30 | |
|
14:30
lichtkind joined
|
|||
| benabik | moritz: Use nqp-rx instead of PCRE bindings? | 14:30 | |
| moritz | benabik: aye | 14:31 | |
| atrodo | Hey benabik! Pay attention! ;) | ||
| kid51 opened TT #2139 for consideration of deprecation of PCRE | |||
| atrodo | (say the guy that's doing more on irc) | ||
| NotFound | Did we have some regex engine not candidate for deprecation and accesible from pir? | ||
| bubaflub | kid51: what about trac.parrot.org/parrot/ticket/2028? | 14:32 | |
| moritz | NotFound: is nqp-rx candidate for deprecation? | ||
| bubaflub | (also a ticket for deprecation of pcre) | ||
| NotFound | kid51: ETOOMUCHPCRETICKETS | ||
| moritz: Is nqp-rx directly accesible from pir? | |||
| benabik | I can poke at converting nci_thunk_whatever... If someone reminds me. (e-mail or ticket assignment or something) | ||
| moritz | NotFound: yes, iirc | ||
| benabik: feel reminded :-) | 14:33 | ||
|
14:33
UltraDM left
|
|||
| benabik | If we don't use PCRE in core, we can move it into plumage. | 14:33 | |
| Actually, if someone here can remind me at the hackathon... | |||
| kid51 | I'm finding that I can't retain my Trac login between posts to trac.parrot.org. Is anyone *not* at YAPC experiencing that problem? | 14:34 | |
| NotFound | moritz: that depends on what you mean by 'directly'. Can I just load_language 'nqp' ? | 14:35 | |
| kid51 | After every post to Trac, my browser is reverting to the http:// version of the URL | 14:36 | |
| dalek | TT #2139 created by jkeenan++: Deprecate PCRE in Parrot core | ||
| TT #2139: trac.parrot.org/parrot/ticket/2139 | |||
| TT #2139 closed by jkeenan++: Deprecate PCRE in Parrot core | |||
| TT #2139: trac.parrot.org/parrot/ticket/2139 | |||
| benabik | Note to self (or others): Add definition of VTABLE to docs. | 14:40 | |
| atrodo | Or, rename vtable because that term is very confusing to people | 14:41 | |
| moritz | only if we find a better name :-) | 14:42 | |
| benabik | I was familiar with the term from other languages (C++, others) | ||
| NotFound | Recursive definition: VTABLE: set of vtable functions. vtables functions: functions contained in VTABLE. | ||
| benabik | So renaming it isn't necessarily a good idea. | ||
| atrodo | i originally heard it in the object pascal world, but that's me | ||
| benabik | Pascal-- | 14:43 | |
| moritz | I've heard that C++ does virtual method dispatch via vtables | ||
| atrodo | Old school pascal or new school pascal? Big difference | ||
| moritz | so seems to fit, in a rough sense | ||
| NotFound | moritz: in fact implementations does that way, but is no mandatory. | 14:44 | |
| PerlJam | isn't "new school pascal" called delphi these days? | ||
| atrodo | but it's a foreign concept to people that don't know c++ very well | ||
| PerlJam: Mostly, yes | |||
| NotFound | PerlJam: I think the tendence is to call it 'Lazarus' | ||
| atrodo | although, I try to distance myself from my bastard child that is the newest versions of Delphi | 14:45 | |
| Lazarus is the framework that is available on freepascal | |||
| PerlJam | just calling something "lazarus" isn't enough to raise it from the dead ;) | ||
| NotFound | PerlJam: no, but looks like it's more live than Delphi. | 14:46 | |
| atrodo | aye, never cared to try it | ||
| fperrad | kid51, lua doesn't use pcre | ||
| bubaflub | i saw some discussion yesterday about it, but how up to date is trac.parrot.org/parrot/wiki/Perform...provements ? | 14:47 | |
| benabik | I think best dep plan for PCRE is to move nci-blah to nap-rx and make a plumage project for it. | 14:48 | |
| NotFound | +1 | 14:49 | |
| benabik | I guess I get to learn plumage. | 14:50 | |
| atrodo | dukeleto++ Nice talk! | 14:51 | |
| kid51 | bubaflub: That page is definitely *not* up-to-date ... even if many of the table entries are still valid. | 14:52 | |
| bubaflub: Note reference to RT tickets rather than Trac. | |||
| benabik | dukeleto++, indeed. Especially for putting it on github so I can steal bits for later. | ||
| bubaflub | right. i ask because i'd be willing to hack on some post-GSoC given some guidance or hand-holding | 14:53 | |
| kid51 | bubaflub++ | ||
| benabik | bubaflub++ | ||
| kid51 | IIRC from last night's discussion ... we've asked chromatic to write a series of blog posts identifying problems like these. | 14:54 | |
| Then we can work them into Roadmap Goals. | |||
| bubaflub | cause it seems like speed is a big complaint, and with pmichaud's rak-bench we can measure improvements and what not. and some of these straightforward though deep in the guts of parrot. | ||
| kid51 | Perhaps we can pair you up with him to work on some of them. | ||
| bubaflub: Exactly | |||
|
14:55
cotto left
|
|||
| bubaflub | kid51: that'd be great. after GSoC i am *completely* done with school and will have nights free. i'm working with plobsing on getting some NCI stuff straightened out as well. | 14:55 | |
|
14:55
fperrad left
|
|||
| whiteknight | is dukeleto's talk going to end up online eventually? I want to see! | 14:55 | |
| benabik | github.com/Leto | 14:56 | |
| kid51 | I suspect all the talks will be online very soon | ||
|
14:57
dukeleto joined
|
|||
| benabik | github.com/leto/presentations specifically. Looks like the last commit was 2hrs ago with that talk | 14:58 | |
| kid51 | cotto's talk starting now; slides will be at mksig.org/slides/yapcna11 | 15:00 | |
| dukeleto will post a direct link to my talk in a sec | 15:01 | ||
| github.com/leto/presentations/blob...f?raw=true | 15:02 | ||
| github.com/leto/presentations/blob...t/pres.tex if you want to see the LaTex source | |||
| benabik | LaTeX++ | 15:03 | |
| PerlJam | parrot only has ~1100 ops? | ||
| ;) | |||
| dukeleto | PerlJam: we are saving up for less | ||
| or fewer. | |||
| kid51 recommends 30g of LaTex source every day before breakfast | 15:04 | ||
| whiteknight | dukeleto: Your slides are making me hungry | ||
| benabik | 30 gig of LaTeX? That's a LOT of slides, | ||
| whiteknight | how many gigs weigh a gram? | 15:05 | |
| dukeleto | whiteknight: good! | 15:06 | |
| whiteknight: also, i dedicated the rube goldberg picture to you during the talk :) | |||
| whiteknight: the recording that cotto will hopefully post will make the slides make a bit more sense :) | 15:08 | ||
| NotFound | I like the parrot cookie picture. | 15:09 | |
| benabik | Cookie++ | ||
| imcc-- | |||
| Karma imcc | 15:11 | ||
| aloha | imcc has karma of -21. | ||
| benabik | still too high. Imcc-- | ||
| JimmyZ | rakudo: loop { imcc -- } | ||
| p6eval | rakudo 1fcb14: OUTPUTĀ«Could not find sub &imcc⤠in main program body at line 22:/tmp/6_YhxcK0eyā¤Ā» | ||
| benabik | whiteknight++ # not dying to GC | 15:12 | |
| when did get p6eval? | |||
| moritz | this sentece no subject | ||
| benabik | s/ / we / | 15:13 | |
| bubaflub | looks like you accidentally a whole word there | ||
| benabik | Lack of real keyboard confuses me sometimes. | ||
| bubaflub | ah, you're still on an iPad? | 15:14 | |
| benabik | My laptop doesn't have anything near the battery life toilet me heckle people on IRC all day | ||
| *to let | |||
| moritz | bubaflub: according to my logs, p6eval first spoke on #parrot on 2010-07-26 | ||
| sorry, meant benabik | 15:15 | ||
| too many b's :-) | |||
| benabik | moritz: I had guessed. | ||
| whiteknight | dukeleto: Awesome. The slides are pretty great | 15:19 | |
| but I'm already starving and they aren't helping with that | |||
| benabik | svn-- | 15:20 | |
| git++ | |||
| kid51 still uses svn for slideshows | |||
| benabik | kid51: I'm sorry? | 15:21 | |
| benabik never really liked SVN | |||
| tadzik | hah, my dedeprecator got into the talks :) | ||
| whiteknight | benabik: svn isn't bad most of the time. We used it for parrot for many years | ||
| kid51 | Authors of Subversion are nicer people than author of git | 15:22 | |
| whiteknight | I wouldn't say that the common flow is any better with git than it was with svn. It's the uncommon cases and some of the more exotic uses where git really shines | ||
| benabik | kid51: Linus is... Opinionated, yes | ||
| NotFound | Yes, we have problems only the rest of the time ;) | ||
| kid51 | NotFound just got a shoutout in cotto's talk | ||
| whiteknight | I don't miss SVN, I'm just saying it wasn't horrible | ||
| benabik | I had to use RCS for school... | 15:23 | |
| tadzik | yeah, it's mostly "It's Linus' way or you're an idiot" | ||
| whiteknight | tadzik: And occasionally "Linus' way AND you're an idiot" | ||
| tadzik | that too, yes | ||
| benabik | Then I tried to move to SVN for my own projects and maintaining the databases was... Problematic, | ||
| NotFound | kid51: Oh, I can say that now I'm a Perl celebrity, then? | ||
| benabik | SVN doesn't scale down very well, IMHO | ||
| PerlJam likes the "not owned by Oracle!" reason for using parrot | |||
| :-) | |||
|
15:23
SHODAN left
|
|||
| tadzik | it's like with Diaspora :) | 15:24 | |
| benabik | and it doesn't scale side to side. | ||
| Handles large corporate style, but not large OSS style. | |||
| Anyway, this is #parrot, not #benabikcomplainsaboutsvn | |||
| whiteknight | benabik: sometimes it appears to be #whiteknightcomplainsaboutparrot | 15:25 | |
| or #whiteknightcomplainsaboutimcc | |||
| tadzik | . o O ( did you do your imcc-- today? ) | ||
| whiteknight | imcc-- | ||
| One of those and a vitamin D pill every day! | |||
| benabik | Everyone complains about imcc. Or hasn't tried to deal with it. | ||
| whiteknight | ha! I love that those are the two options | 15:26 | |
| tadzik | I don't mind it, I never had to work with it | ||
| I just echo what I tend to hear here :) | |||
| NotFound | There are two kinds of people: the ones that hate Larry Ellison and Larry Ellison. | ||
| kid51 | vtable_substr branch: darwin/ppc: make test PASS | 15:28 | |
| fperrad gets a shoutout in cotto talk | |||
| also bacek | |||
|
15:28
dmalcolm joined
|
|||
| dukeleto | well, Linus didn't get his way forever: Git used to bomb out if you attempted to commit something with trailing whitespace. | 15:29 | |
| benabik | fperrad++ bacek++ NotFound++ # useful stuff mentioned in cotto++'s talk | 15:30 | |
| dukeleto | also, imcc-- | ||
| NotFound | kid51: Did he mention winxed? I need some sound file to give to people that ask how to pronouce it. | ||
| benabik | Parrotlet. New name for M0? | ||
| dukeleto | NotFound: i mentioned Winxed and pronounced it "winged" | ||
| benabik | NotFound: Yes | ||
| I think cotto is following dukeleto's lead | 15:31 | ||
| kid51 | NotFound: winxed mentioned numerous times at YAPC ... with numerous pronunciations | ||
| NotFound | Good. | ||
| Confusion will be my epitaph (King Crimson) | |||
| moritz would pronounce it with the same x as in 'extra' | 15:32 | ||
| benabik | I keep wanting to say win-zed. | ||
| dukeleto | benabik: well, we already have "Lorito" which means little parrot in spanish | ||
| benabik | dukeleto: I was unaware of the origin. Neat | 15:33 | |
| moritz | "it's parrots all the way down" :-) | ||
| kid51 | NotFound: Have you ever given any presentations about Parrot in Spanish? Or in Spain? | 15:34 | |
| dukeleto | www.smallestparrots.com/ | ||
| NotFound | kid51: no | ||
| whiteknight | benabik: I say "win-zed" | ||
| kid51 | I would love to see that. Give me a chance to refresh my Spanish in a tech context. | 15:35 | |
| whiteknight | of course, I only pronounce it in my head, I don't have anybody in shouting range who wants to hear me talk about parrot | ||
| benabik | whiteknight: I talk to people about parrot anyway. My wife and housemates are probably a little sick of it. | ||
| NotFound | kid51: in Spain is usual to give more appreciation to foreigners than to nationals. | 15:36 | |
| benabik | I think my wife has picked up a hatred of IMCC just from hearing me talk about it. | ||
| whiteknight | If I talk to my kid about anything while he's watching The Wonder Pets, I get the evil eye and promptly stop | ||
| dukeleto | evidently the Pygmy Parrots are the smallest parrots in the world: secure.wikimedia.org/wikipedia/en/...gmy_parrot | ||
| whiteknight | talking to my wife about anythign tech gets me the blank-as-an-empty-wall stare | 15:37 | |
| benabik | dukeleto: No pictures? :-( | ||
| dukeleto | which happen to have the genus Micropsitta, M0 = Micropsitta 0 doesn't have the same nice ring as "magic level 0" | ||
| benabik | whiteknight: My wife seems to enjoy it for some reason, although she's not very technical herself. | 15:38 | |
|
15:40
colomon left
15:41
cotto joined
|
|||
| dukeleto | Lorikeet is a pretty cool name. | 15:43 | |
|
15:45
colomon joined
15:47
kid51 left
|
|||
| dukeleto | This might be useful for developing parrot on android: www.android-x86.org/ | 15:48 | |
| dukeleto just added a link to his slides from the YAPC talk page: www.yapc2011.us/yn2011/talk/3303 | 15:50 | ||
|
15:51
benabik left
15:53
mtk left
15:55
hercynium left,
daniel-s left
15:56
cotto left
16:11
JimmyZ left
16:18
theory joined,
ambs joined
16:19
Kovensky joined
16:25
zby_home joined
|
|||
| atrodo | Anyone every see a "dead object found" error when compiling rakudo? | 16:35 | |
|
16:37
dukeleto left
16:38
mj41 left
|
|||
| whiteknight | no, not since the gms was still in testing | 16:40 | |
|
16:40
alester joined
|
|||
| colomon | parrot on android! | 16:43 | |
|
16:45
JaphMalik left
|
|||
| bubaflub | colomon: word is you're interested in Parrot-GMP | 16:47 | |
| colomon | bubaflub: oh yes. | ||
| we'd like to have it in nqp-nom, and therefore in rakudo-nom | |||
| bubaflub | colomon: i'm fixin' to get a nice setup.pir (for building and dependency checking) and getting it on plumage. any features you'd like to see after that? | 16:48 | |
| colomon | you have the integer operations all implemented, right? | ||
| bubaflub | colomon: yes* | ||
|
16:49
benabik joined
|
|||
| bubaflub | colomon: * there are a few exceptions - functions that take var args, for example. but the vast majority are there | 16:49 | |
| colomon | sweet. | ||
| bubaflub | colomon: i've also not implemented a few functions that were marked in the docs as deprecated or obsolete | ||
| colomon | I've got to get ready to give my talk in a few minutes here (YAPC), but would absolutely love to go into this in more detail with you later today or tomorrow. | 16:50 | |
| I'll need to consult with pmichaud and jnthn to figure out how to put it in nqp-nom. | |||
| But this will be a very big help to us, I think. | |||
| bubaflub | colomon: ok, i'll be here till 4 PM CST | ||
| colomon | bubaflub++ | 16:51 | |
| bubaflub | colomon: i think next step for me (beyond what i already mentioned) are some more friendly docs and examples in nqp or rakudo | ||
| benabik | colomon: Haven't forgotten the connector. Finishing lunch now, will be down in 10-15 min. | 16:56 | |
|
17:01
colomon left
17:04
fperrad joined
|
|||
| atrodo | gist.github.com/1054323 | 17:05 | |
| bacek_at_work: ping | |||
| whiteknight: ping | |||
| whiteknight | atrodo: pong | 17:11 | |
| oi | |||
| atrodo | whiteknight: any idea what could be causing "dead object found"? | 17:12 | |
|
17:13
benabik left
17:17
benabik joined
17:18
benabik left,
benabik_ joined
|
|||
| whiteknight | atrodo: my first guess is a missing write barrier somewhere | 17:21 | |
| benabik_ | It worked! | 17:22 | |
| Awh. | |||
| atrodo | parrot: 643dba012b5182b39bf40c2b1a58e721b5c50ae7 rakudo: b2bc994069e39a9265fce88e42d3d2bafd883a29 | ||
| benabik_ | Sorry, #parrot was on screen, but colomon was logged off. | ||
| atrodo | parrot from two days ago and rakudo from 6 days ago | 17:23 | |
| but it's not just those two days. that's been preventing ipfy from updating any new data | |||
| brb | 17:24 | ||
|
17:24
elmex_ joined
|
|||
| whiteknight | atrodo: is it using any extensions, dynoplibs, etc? | 17:25 | |
|
17:25
elmex left
17:30
elmex joined
17:31
elmex_ left
17:33
lucian joined
17:35
elmex left,
elmex joined
|
|||
| atrodo | whiteknight: not that I know of. It's the master branch of rakudo | 17:35 | |
|
17:44
elmex left,
soh_cah_toa joined
17:47
elmex joined
|
|||
| atrodo | whiteknight: I'm trying an earlier parrot, just just realized that the rakudo version is 2011.06. so if this doesn't working, i'm going to do 3.5.0 and 2011.06 | 17:48 | |
| whiteknight | definitely upgrade Parrot, to make sure you have the latest stuff from there | ||
| atrodo | i'm actually trying an older, by a few days, version of parrot | 17:50 | |
| whiteknight | Like I said, morepypy.blogspot.com/2011/06/globa...-kill.html | 17:52 | |
| s/Like I said,// | |||
| that's a post about PyPy trying to get rid of GIL with STM | |||
| atrodo: oh, if it's only a few days older I doubt that's a problem | 17:55 | ||
| does ipfy use any custom libraries? dynpmcs? anything fancy or special? | |||
| atrodo | whiteknight: me either, but i have no skills to figure out what's happening | ||
| no, i build stock parrot and rakudo | |||
| (is going to make sure whiteknight knows we're talking about isparrotfastyet.com) | 17:56 | ||
| whiteknight | yes | 18:05 | |
| If it's stock parrot and stock rakudo, that means we have a GC bug in one of them somewhere | |||
| plobsing | is there a way to query and force all relevant GC parameters? if so, other devs might be able to reproduce the problem. | 18:06 | |
| whiteknight | I'm a little surprised that only ipfy triggers it, and we haven't heard any other reports | ||
| atrodo | okay. Yea, i'm just building stock, nothing special. git clean and checkout and build | ||
| i don't run tests, so I may try that next too | |||
| whiteknight | upgrade parrot to the today master. Sometimes changing the memory layout a little bit will hide or exacerbate these kinds of problems | ||
| That reminds me, I have to add write barriers to my packfilewrapper branch | 18:07 | ||
|
18:07
hercynium joined
|
|||
| atrodo | whiteknight: You mean the memory on the box? | 18:07 | |
| *memory layout | 18:08 | ||
| bubaflub | whiteknight: what exactly is a write barrier? is it telling the GC not to run while certain code is executing? | 18:09 | |
|
18:10
mj41 joined
|
|||
| whiteknight | bubaflub: Generational GC breaks objects into groups called generations. Generations get marked more or less frequently depending on statistics | 18:11 | |
| plobsing | bubaflub: a write barrier is a checked write. they maintain the assertions required to make generational GC consistent. unchecked writes into GCable slots of GCables are potential leaks, breaking these assertions. | ||
| whiteknight | so objects that have been alive for longer, statistically speaking, means the object will continue to live and doesn't need to be marked as often | ||
| however, if I take an object from a young generation, and put it inside an object from an older generation, the younger one will be swept before the older one gets marked | 18:12 | ||
| so we write barrier the older PMC, to make sure it gets marked early | |||
| basically, it's just a flag | 18:13 | ||
| bubaflub | ok, so it's just there to maintain consistency in the GC | ||
| whiteknight | When the GC runs, it marks all items in the current-to-mark generation PLUS all objects marked with a write barrier | ||
| right | |||
| bubaflub | hmmm, how do we track down these kinds of errors? | ||
| (probably with great pain) | |||
| whiteknight | so if we are missing a write barrier, a young PMC could be collected early, and we get errors like what atrodo is seeing | ||
| bubaflub: we have to figure out which PMC is being collected, then figure out where it was, then figure out who is missing the write barrier | 18:14 | ||
| bubaflub | could a tool like valgrind help out with that or are we on our buried neck deep in stack traces? | ||
| whiteknight | valgrind probably cannot help much here, because Parrot manages all it's own memory | 18:15 | |
| bubaflub | ok, so valgrind would only detect memory leaking in a very bad way, not objects marked incorrectly | ||
| plobsing | bubaflub: probably something like valgrind (but not valgrind) could help, but it would need to be parrot-specific, and that would be a lot of work | ||
| whiteknight | I'm not even sure how we would do that. We would have to run GC mark twice: Once for the current generation, once for all generations, and see if anything is missed in one that would be caught in the other | 18:18 | |
| plobsing | you could achieve similar functionality by collecting all the locations which prviously allocated the object | ||
| you can do that with a gdb script (and a lot of patience) | |||
| bubaflub | could we modify the runcore to do that - like a gc debug run core? it would be slow as all get out. | 18:19 | |
| plobsing | the problem with GC debug is that many of these bugs are tied to state. if you keep GCing, you wipe your slate clean too frequently to accumulate bad state. | 18:20 | |
| lucian | whiteknight: i thought valgrind had an API for working with GCs | ||
| atrodo | whiteknight: running tests, if it fails, i'll smoke | 18:22 | |
| plobsing | bubaflub: just to confirm - can you reliably reproduce the problem? is the dead PMC always the same address? is the code raising the error always the same stacktrace? | 18:23 | |
| bubaflub | plobsing: er, that's atrodo with the problem i believe | 18:24 | |
|
18:24
cotto joined
|
|||
| plobsing | oops. sorry. you asked about WBs and I got confused | 18:24 | |
| atrodo | plobsing: gist.github.com/1054323 It happens when building rakudo | ||
| bubaflub | plobsing: mine was just a theoretical question | ||
| atrodo | plobsing: I'm not sure how far back it when, but it wasn't just one version that this happened on | 18:25 | |
| plobsing | atrodo: that looks like a corrupted stack. fun. | 18:26 | |
|
18:26
benabik_ left,
colomon joined
|
|||
| plobsing | atrodo: can you run that in gdb and find out the address of the dead object? | 18:26 | |
| bubaflub | welcome back colomon; how'd the talk go? | 18:27 | |
| atrodo | not right now, but at somepoint, maybe | ||
| i'm runing make test right now to see what happens | |||
|
18:28
cottoo joined
|
|||
| plobsing | after that, you can set a conditional breakpoint on the allocator to break when it allocates an object with that address. | 18:28 | |
| colomon | bubaflub: reasonably well, I hope. ran late because they didn't let us into the room until the start time, then couldn't get the microphone to work reasonably for me. | ||
| plobsing | then attach an automatic action to the breakpoint which prints the stacktrace | ||
| and continues | |||
| bubaflub | colomon: bummer. slides online somewhere? | ||
|
18:29
cotto left
|
|||
| atrodo | nope, only test that fails is threads.t | 18:29 | |
| colomon | bubaflub: I more or less promised we'd get your stuff integrated in the near future. ;) | ||
| bubaflub | colomon: no pressure. | ||
| colomon | bubaflub: www.harmonyware.com/perl/p6numerics/ | ||
|
18:30
benabik joined
|
|||
| bubaflub | colomon: what's Niecza | 18:31 | |
| ? | 18:32 | ||
| atrodo | perl6 on mono | ||
| colomon | sorear's implementation of p6 on mono, yup. | ||
| bubaflub | ah, cool. | 18:33 | |
| colomon | otherwise known as a good practical example of how handy big ints are (among other things) | ||
| bubaflub | colomon: completely random, but i've thought about implementing a Rational number framework based on Continued Fractions... maybe i'll get around to do it in Rakudo | 18:34 | |
| colomon | bubaflub: I'd love to see it there. Seems like it would be a lovely test case for an interestingly different Real type. | 18:37 | |
|
18:39
elmex left
18:49
lucian_ joined
|
|||
| atrodo | tests work, so i'm going to try 3.5.0 and 2011.06 together | 18:52 | |
|
18:52
lucian left
19:10
hercynium left
19:11
cottoo left
19:13
dukeleto joined,
colomon left,
colomon joined
19:14
colomon left,
colomon joined
19:24
soh_cah_toa left
19:31
benabik left
19:33
colomon left,
benabik joined
19:38
colomon joined
|
|||
| atrodo | 3.5.0 and 2011.06 is a no-go | 19:39 | |
| plobsing: ping | |||
| whiteknight | atrodo: What combination were you trying before? | 19:40 | |
| atrodo | whiteknight: 2011.06 and a two day old parrot | 19:41 | |
| whiteknight | and that had the same failure? | 19:42 | |
| and 3.5.0 had the failure | |||
|
19:43
hercynium joined
19:45
elmex joined
|
|||
| atrodo | same problem | 19:46 | |
|
19:46
soh_cah_toa joined
|
|||
| atrodo | pretty sure it's been an issue on this machine for a while, just can't qualify "for a while" | 19:46 | |
| ipfy wasn't producing data for any run and it ran for about 2 days | 19:47 | ||
|
19:48
bluescreen left
19:50
whiteknight left
19:52
mj41 left
|
|||
| atrodo trying 3.4.0 | 19:58 | ||
|
20:00
zby_home left
20:14
Coke left,
Coke joined
|
|||
| plobsing | atrodo: pong | 20:18 | |
| atrodo | plobsing: you going to be around for a while? I may need help with the gdb stuff | 20:19 | |
| plobsing | atrodo: I think I have time to help you out | ||
| atrodo | i'm building 2011.05 right now, so we'll see how that goes | 20:20 | |
| 3.4.0 and 2011.05 works | 20:27 | ||
| plobsing | did 3.4.0 have gengc as the default? when did we switch over? | ||
| atrodo | so i have to rebuild again, so it'll be more time | 20:28 | |
| plobsing: quick way to tell? | |||
| plobsing | atrodo: I expected someone in the channel to know that off the top of their head (so many helpful people on #parrot most of the time) | 20:30 | |
| I'm grepping for the commit that switched it over now | 20:31 | ||
| atrodo | gms is default | ||
| in 3.4.0 | |||
| plobsing | yes. confirmed with gitk. | 20:32 | |
| atrodo | okay, goign to build 3.5.0 and i'll ping you again if it builds before i leave here | 20:33 | |
| dalek | rrot/soh-cah-toa/hbdb: 05418bd | soh_cah_toa++ | / (7 files): Organized Parrot::Test::HBDB into an OO-interface and moved testlib into t/tools/hbdb. All tests pass |
||
|
20:35
perlite_ joined
|
|||
| bubaflub | soh_cah_toa++ - looks like your tests are really great | 20:36 | |
| soh_cah_toa | yeah, it's getting there | 20:37 | |
|
20:39
perlite left,
perlite_ is now known as perlite
20:41
cotto joined
|
|||
| soh_cah_toa | cotto: github.com/parrot/parrot/commit/05418bddee | 20:46 | |
|
20:47
dukeleto left
|
|||
| cotto looks | 20:47 | ||
| soh_cah_toa, i'm excited to look closely at that after lightning talks | 20:48 | ||
| soh_cah_toa | ok | 20:49 | |
| cotto | are you watching them? | 20:50 | |
| soh_cah_toa | yeah | ||
| cotto | where at? | 20:51 | |
| colomon | next to me | ||
| cotto | where in relation to TimToady? | 20:52 | |
| atrodo | not near me | ||
| cotto | ;) | 20:53 | |
| soh_cah_toa | back of the room, second monitor from the left | ||
| cotto | ok | ||
| tadzik | LAIRC | 20:54 | |
| cotto | tadzik, ? | ||
| tadzik | nothin :) Just came to my mind | ||
| cotto | what does that stand for? | 20:55 | |
| tadzik | it's like LARP, Live-Action RPG, but for IRC | ||
| atrodo | tadzik++ | ||
|
21:03
hercynium left
|
|||
| atrodo | plobsing: ping, gdb ready | 21:05 | |
| plobsing | atrodo: ok | 21:07 | |
| atrodo | what's my first start. i've started the program | 21:08 | |
| plobsing | you'll want to use gdb --args <command that was failing> | 21:09 | |
| atrodo | Right | ||
| i got in gdb and did start | |||
| plobsing | and it failed, correct? | ||
| atrodo | (and ran it once in gdb to make sure it still dies) | ||
| plobsing | ok good | ||
| now first, we need the address of the dead object (and preferably the live object that references it) | 21:10 | ||
| atrodo | suggestions on how to? | ||
| plobsing | to get that, break on the confess function | ||
| I believe it is called Parrot_confess | |||
| and get it to print a backtrace (which gdb doesn't cut off at 32 entries) | 21:11 | ||
| atrodo | yep, i've broken on that function | ||
| plobsing | now run | ||
| atrodo | okay, i'm there | ||
| plobsing | 'bt' and nopaste the output | 21:12 | |
| atrodo | entire trace? | ||
| it's deep | |||
| plobsing | please | ||
| atrodo | okay, hold on | ||
| gist.github.com/1054323 325 stack frames | 21:16 | ||
| plobsing | atrodo: that looks like the same nopaste we saw before | 21:18 | |
| atrodo | it is | 21:19 | |
| gist.github.com/1055004 | |||
| plobsing | there we go | ||
| atrodo | not even sure how that was still in my paste buffer | 21:20 | |
| plobsing | can you look at src/pmc/object.c:2690? that line doesn't look right on my up-to-date copy | 21:24 | |
| atrodo | hold on, my term just crashed | 21:26 | |
| Parrot_gc_mark_PMC_alive(interp, obj->_class); | 21:27 | ||
| and i'm going to have to shutdown here in a few minutes | 21:29 | ||
|
21:30
benabik left
|
|||
| plobsing | ok, this is just weird. it looks like an Object PMC is in an older generation than its corresponding Class PMC. I'm pretty sure that can't happen in vanilla Parrot. I'm about 90% confident that's some Rakudo magic doing that. | 21:31 | |
| atrodo | that's possible | 21:32 | |
|
21:32
benabik joined
|
|||
| atrodo | not sure if this would affect it, but the machine only has 512M | 21:32 | |
| and a really old gcc, 3.3.3 | 21:33 | ||
| plobsing | atrodo: GC is adaptive to memory size, so yes, that will affect things | ||
| atrodo | will doing the ulimit magic change it? | ||
| plobsing | old gcc (while I'm surprised our code works on it) shouldn't affect much | ||
| atrodo | didn't figure, but thought i'd mention it | 21:34 | |
|
21:34
ambs left
|
|||
| plobsing | one of two things is happening: (1) the class object is being demoted to a younger gen (which IIRC doesn't happen) we'd need a GC expert to work on that | 21:37 | |
| sorear | only two things? | ||
| plobsing | (2) the object's _class attribute is being mutated after object creation | ||
| sorear | (3) the object is promoted but the class is somehow held behind | ||
| atrodo | okay. I'll try and catch bacek sometime, but it could be a few days | ||
|
21:37
Drossel left
|
|||
| plobsing | sorear: ok more than 2 if you allow for invariants to be broken | 21:38 | |
|
21:38
Kulag joined
|
|||
| sorear | but yes, Perl 6 allows for changing an object's class post-creation | 21:38 | |
| jnthn__ | (object's _class attribute is being mutated) - yes, sure that happens. It's how mix-ins are done. | 21:39 | |
| sorear | see rebless_subclass in src/ops/perl6.ops | ||
| plobsing | jnthn__: does that have a wb on it? | ||
| atrodo | okay, i've got to head, so i''ll be on late tonight | ||
| jnthn__ | plobsing: I'm pretty sure that code was write-barriered when all the Rakudo guts were. | ||
| sorear | what does a write barrier look like? | 21:40 | |
|
21:40
colomon left
|
|||
| plobsing | jnthn__: there is no wb there | 21:40 | |
| sorear | there are no wbs in perl6.ops | 21:41 | |
| at all | |||
| jnthn__ | plobsing: Maybe it's missing it then. | ||
| plobsing: The code certainly pre-dates the need for WBs. | |||
| It's possible it got missed. | |||
| sorear | set_llsig_elem - also no WBs | 21:42 | |
|
21:42
Psyche^ joined
|
|||
| sorear | etc. | 21:42 | |
| plobsing | We could develop a static check for this problem if we created a macro for GCable assignment and outlawed the raw form (x = y, where types of x and y are PMC*) | 21:45 | |
|
21:46
colomon joined
21:47
Patterner left,
Psyche^ is now known as Patterner,
benabik_ joined
21:50
benabik left,
benabik_ is now known as benabik
21:57
colomon left,
dukeleto joined
21:59
fperrad left
22:05
dukeleto left
22:08
soh_cah_toa left
22:13
whiteknight joined
22:14
cotto left,
lucian_ left
|
|||
| bubaflub | does anyone have a good example of a distutils setup.pir lying around for me to steal from? | 22:18 | |
| whiteknight | I moved all mine to winxed or nqp | 22:19 | |
| rosella uses distutils from winxed. PLA uses a .nqp version | |||
| bubaflub | whiteknight: yeah, i was thinking of switching to winxed. should be less verbose and easier to use. | 22:20 | |
| whiteknight | winxed has a nice hash-literal syntax, which makes this kind of application much less verbose | 22:21 | |
| bubaflub | whiteknight: is there anything i need to get this on plumage? | 22:23 | |
| whiteknight | that's easy. Create your setup program with distutils. then, it creates the plumage metadata for you | ||
| winxed setup.winxed plumage | |||
| it will generate a ports/plumage/whatever.json file, and you give that to me | |||
| bubaflub | also, i'm bummed that parrot_config has both 'gmp' and 'HAS_GMP' in it but neither hold a version number. | 22:25 | |
| whiteknight | :) | 22:27 | |
| bubaflub | whiteknight: i'm looking at parrot/runtime/parrot/library/disutils.pir but i'm confused on how to create stuff from this - just a $load_bytecode('distutils.pbc'); ? | 22:30 | |
|
22:33
preflex left
22:36
cotto joined
22:38
preflex joined
22:40
davidfetter joined
22:47
cotto left
22:51
bubaflub left
|
|||
| whiteknight | yes. It's a data-driven system. You put all your data in a big hash and pass that to the setup() routine | 22:52 | |
| it's hard to navigate at first. I suggest you find an example and borrow liberally | |||
| pmichaud | looks like I'm definitely going to be at FOSSCON in Philadelphia on Jul 23. | 22:55 | |
| Anyone else going to be around? I'm staying until late on Sunday for hacking/meeting/whatever if anyone else will be around | |||
| whiteknight | I wanted to be there, but we're closing on a house that weekend so I probably won't be able to | 22:56 | |
| pmichaud | so far I'm arriving late on Friday, but I can arrive earlier if people prefer to get together on Friday before the conference | ||
| whiteknight | what is "late" on friday? | 22:59 | |
| pmichaud | 8:30p | 23:00 | |
| (flight arrival time) | |||
| so far "earlier" either means much earlier (leave here early morning, arrive noon) or $100 increased airfare | 23:01 | ||
| which I can easily do if there's a reason to do so :) | |||
| whiteknight | I work that day, so I won't be able to do any entertaining until afternoon | 23:02 | |
| dalek | kudo/nom: 53b20a8 | jonathan++ | src/ (2 files): Add a way to flag blocks that need fresh magicals, rather than looking to steal them from outer. |
23:03 | |
| kudo/nom: ad94941 | jonathan++ | src/ (2 files): Get enough in place to have on-demand creation of $_, $! and $/ in routines. Stub in outer finding of them for other blocks, but that's NYI. |
|||
|
23:15
cotto joined
|
|||
| cotto | benabik, ping | 23:15 | |
|
23:18
benabik_ joined
|
|||
| whiteknight | Coke ping | 23:19 | |
| seen rohit_nsit08 | |||
| seen rohit_nsit08? | |||
| seen aloha? | |||
| benabik_ | aloha: seen rohit_nsit08 | 23:22 | |
| aloha-- | |||
| bacek_at_work | ~~ | 23:23 | |
|
23:23
aloha left
|
|||
| whiteknight | bacek_at_work! | 23:23 | |
| bacek_at_work | whiteknight, aloha | 23:24 | |
|
23:24
aloha joined
|
|||
| benabik_ | bacek_at_work: \\o/ | 23:24 | |
| whiteknight | hello bacek_at_work, how are you doing today? | ||
| bacek_at_work | benabik, hi | ||
| whiteknight | I haven't seen you a lot recentl | ||
| bacek_at_work | whiteknight, quite busy with $work and rl | ||
| benabik_ | bacek_at_work: I raise a glass in your general direction. | ||
| whiteknight | bacek_at_work: yeah, I know what you mean. That is the important stuff | ||
| bacek_at_work | sorear, we do need WB in rebless_subclass op. On C<value> which was bit-busted by memmove. | ||
| sorear, somewhere on line 156. | 23:25 | ||
| whiteknight, indeed. | |||
| benabik_, how is going with GSoC? | |||
| benabik_ | bacek_at_work: Slowly at the moment. YAPC is distracting. :-D | 23:26 | |
| bacek_at_work | benabik_, fair enough :) | ||
| benabik_ | bacek_at_work: Should have a blog post tomorrow about my next steps. | ||
| (hackathon tomorrow) | |||
| bacek_at_work | benabik_, ok. | ||
| whiteknight | aloha seen rohit_nsit08? | ||
| aloha | whiteknight: rohit_nsit08 was last seen in #parrot 2 days 20 hours ago joining the channel. | ||
|
23:28
dmalcolm left
|
|||
| bacek_at_work | atrodo, sorear, see nopaste.snit.ch/56222 | 23:30 | |
| sorear | bacek_at_work: I think you want jnthn. I don't even have a Rakudo commitbit. | ||
| bacek_at_work | sorear, ok. | 23:31 | |
| msg jnthn__ nopaste.snit.ch/56222 | |||
| aloha | OK. I'll deliver the message. | ||
|
23:32
bubaflub joined
|
|||
| dalek | rrot/whiteknight/packfilewrapper: b16bd24 | Whiteknight++ | src/pmc/packfileview.pmc: Add writebarrier to PackfileView |
23:32 | |
|
23:40
bluescreen joined
23:52
bubaflub left
|
|||
| whiteknight | I'm working on a commit right now that I've been wanting to do for a LONG time | 23:59 | |