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