Camelia, the Perl 6 bug

IRC log for #parrot, 2010-03-23

Parrot | source cross referenced

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:00 chromatic All of you with your suffixes, I can never keep track of it.
00:00 bacek_at_work :)
00:01 kid51 joined #parrot
00:01 bacek_at_work chromatic, what about tailcalls?
00:01 mikehh also get Segmantation fault in examples/benchmarks/oo1.pir, oo2.pir and oo3.pir
00:02 chromatic plobsing's example on testr, http://nopaste.snit.ch/20042
00:08 bacek_at_work chromatic, it failing with "Null PMC in say". I have no idea why lexicals are broken.
00:09 ruoso joined #parrot
00:09 bacek_at_work afk # work apparently
00:09 mikehh exception_old_22.pbc is also hanging in testr
00:10 plobsing mikehh: really? mine is hanging @ exception_23.pbc
00:10 plobsing at least according to top
00:12 mikehh i am running with TEST_JOBS=40 and those two processes keep running
00:12 mikehh exception_23.pbc and exception_old.22.pbc
00:13 mikehh the remaining test jobs in testr complete
00:18 WorkCoke (suffixes suck) if only irc had blurbs.
00:18 Coke yay, now I can hack on partcl.
00:19 Coke chromatic: you might like "Tales of monkey island". if you had a mac or something.
00:19 mikehh Coke: I haven't tried that for a while - what changes have there been?
00:19 eternaleye joined #parrot
00:19 Coke to partcl? virtually none!
00:20 chromatic I could find a PPC Mac somewhere in my office.
00:25 Andy I'm overhauling the consting and headerization of the pirparser.c
00:25 Andy commits later
00:30 darbelo Okay. If I wanted to submit a GSoC proposal for NFG, who would be the best person to bug for ideas?
00:31 chromatic allison, perhaps Simon.
00:31 chromatic Larry.
00:35 Coke git q: i have a stash with a merge conflict. how do I get this back into my working copy?
00:35 dalek parrot: r45118 | plobsing++ | trunk (3 files):
00:35 dalek parrot: eliminate NCI.jitted flag
00:35 dalek parrot: having 2 framebuilder call signatures is a bad idea
00:35 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45118/
00:36 payload joined #parrot
00:36 Coke git stash pop says CONFLICT; if I edit the file, resolve the merge, and then do "git add" of the file... the change is gone, and the stash is still there.
00:37 ash_ joined #parrot
00:38 Coke (git status shows the file as modified, but 'git diff' shows nothing.)
00:39 Coke ah "git diff HEAD"
00:47 tewk joined #parrot
00:48 abqar joined #parrot
01:03 snarkyboojum joined #parrot
01:08 dalek parrot: r45119 | plobsing++ | trunk (3 files):
01:08 dalek parrot: add NCI.fb_info for frame buffer info
01:08 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45119/
01:08 dalek parrot: r45120 | plobsing++ | trunk (2 files):
01:08 dalek parrot: nci_sub_t => nci_thunk_t and moves to header file
01:08 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45120/
01:18 allison joined #parrot
01:25 dalek parrot: r45121 | plobsing++ | branches/tt1477:
01:25 Whiteknight bugzilla is garbage
01:25 Whiteknight no, I'm venting.
01:25 dalek parrot: branch won't work with new PCC and is likely unnecessary
01:25 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45121/
01:25 dalek parrot: r45122 | plobsing++ | trunk (5 files):
01:25 dalek parrot: add fb_info parameter to nci_thunk_t signature
01:25 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45122/
01:26 Whiteknight I've tried three times now to install it
01:27 plobsing you could file a bug report
01:31 Whiteknight I'm going to struggle with it for a few more frustrating hours. That way I can plausibly believe the problem isn't user error
01:33 Whiteknight fuggedaboudit. It's too late for Perl dependency hell. I'm going to bed.
01:33 Whiteknight later
01:40 nopaste "coke" at 72.228.52.192 pasted "why doesn't this output a downcase'd string?" (7 lines) at http://nopaste.snit.ch/20044
01:40 Coke NQP question in the nopaste.
01:41 Util joined #parrot
01:42 theory joined #parrot
01:45 plobsing Coke: my bet - because substr returns the string slice *before* replacing
01:51 kid51 NFG?
01:51 purl NFG is No Fscking Good! or grapheme normalization form (see docs/pdds/draft/pdd28_character_sets.pod)
01:54 Coke plobsing: the corresponding pir doesn't seem to have the same problem.
01:55 nopaste "plobsing" at 67.55.2.108 pasted "my interpretation" (19 lines) at http://nopaste.snit.ch/20045
01:55 plobsing that's what I see as the corresponding PIR
02:05 Coke hurm.
02:07 Coke http://github.com/partcl/partcl/blob/m​aster/runtime/builtin/string.pir#L130
02:07 Coke (that's what I'mm trying to duplicate in NQP.)
02:10 plobsing you're using substr__siis there.     size_t i; size_t sig_length = Parrot_str_byte_length(interp, sig);
02:10 plobsing oops
02:15 plobsing hmmm... looks like the boxing done by NQP prevents using opcodes for side effects here. You'll probably have to drop down to Q:PIR
02:34 theory joined #parrot
02:41 zostay joined #parrot
02:49 contingencyplan joined #parrot
03:20 Andy joined #parrot
03:41 Coke plobsing: I was eventually able to get it work with Q:PIR. ugly, but functional.
03:47 janus joined #parrot
04:04 workbench joined #parrot
04:47 theory joined #parrot
05:01 dalek partcl-nqp: 54b4f03 | coke++ | src/Partcl/commands/string.pm:
05:01 dalek partcl-nqp: fix cut-and-pasto of [string length]
05:01 dalek partcl-nqp: (looks like it took from bytelength)
05:01 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/54b4f03447ada972caa9cf961ccd839d244ffb0a
05:01 dalek partcl-nqp: 973490f | coke++ | src/Partcl/commands/string.pm:
05:01 dalek partcl-nqp: implement [string range]
05:01 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/973490fda44e554ca9c91d089fc41695e4287845
05:01 dalek partcl-nqp: a582042 | coke++ | src/Partcl/commands/string.pm:
05:01 dalek partcl-nqp: implement [string equal]
05:01 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/a5820424b16e9aea95aea8af03b1798bfd387c56
05:01 dalek partcl-nqp: c4ce6f2 | coke++ | src/Partcl/commands/string.pm:
05:01 dalek partcl-nqp: add [string tolower]
05:01 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/c4ce6f2e84273d8f6385fa4d82d35fb1ce0d868e
05:01 dalek partcl-nqp: 5e1227c | Will++ | src/Partcl/commands/string.pm:
05:01 dalek partcl-nqp: add [string toupper]
05:01 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/5e1227c220e5dab0367ec1c53813431bdff1d71b
05:01 dalek partcl-nqp: 9fd1e7c | Will++ | src/Partcl/commands/string.pm:
05:01 dalek partcl-nqp: add [string totitle]
05:01 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/9fd1e7cd05ee9d8df5712543ac0d39dec5801255
05:01 dalek partcl-nqp: 5162153 | Will++ | src/Partcl/commands/string.pm:
05:01 dalek partcl-nqp: add [string replace]
05:01 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/5162153ce76f511507c582265768722fabd69185
05:01 dalek partcl-nqp: b935f2d | Will++ | src/Partcl/commands/string.pm:
05:01 dalek partcl-nqp: [string trimleft]
05:01 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/b935f2d0ae6d0fcd9dbab59975e3222ac51d544b
05:13 Coke dalek seems to be taking the commiter, not the author.
05:18 Austin joined #parrot
05:37 cotto pork-free Coke?
05:38 cotto I'll stick with my bacon-flavored Coke, thanks.
05:43 * Austin sings, "Grab yourself a can of pork soda, you'll be feelin' just fine! Ain't nothing quite like sittin' on the back porch swillin' down those cans'o'swine!"
05:43 Austin (Primus, "Pork Soda")
05:43 cotto You know some interesting songs.
05:45 cotto What's the syntax for iterating over a hash in nqp?
05:45 Austin for %hash -> $pair { if $pair.key eq 'foo' { say($pair.vlaue); }
05:46 Austin or use ~$pair instead of .key
05:46 cotto I knew 'key' fit in there somehow.  Austin++
05:55 cognominal joined #parrot
05:56 chromatic joined #parrot
06:00 sorear ....OH, I see what's going on with the segfaults
06:00 sorear Parrot doesn't guarantee 'destroy' in postorder, does it
06:01 sorear my object destructors are accessing objects already destroyed
06:03 cotto nope
06:04 cotto nopaste?
06:04 purl nopaste is http://nopaste.snit.ch (works with the script in $_PARROT/tools/dev/nopaste.pl) or http://paste.scsys.co.uk or http://www.extpaste.com or http://gist.github.com
06:04 sorear no, I understand now
06:06 cotto I was checking that.
06:06 sorear does Parrot at least guarantee that PMC objects are still in memory during destruction?
06:07 cotto chromatic, do you have a minute to give me some interface feedback?
06:07 cotto sorear, as opposed to being destroyed before they're destroyed?
06:07 sorear cotto: I mean, does Parrot free pmc heads during or after calling destroy callbacks
06:08 cotto http://nopaste.snit.ch/20047
06:08 cotto (^ for chromatic)
06:08 sorear I have Perl object handles, which hold a reference to the Perl interpreter
06:08 sorear When an object handle is destroyed, I need to drop the foreign reference in the Perl interpreter
06:08 nopaste joined #parrot
06:09 cotto the sane approach would be to call VTABLE_destroy, but that's not always the approach Parrot takes.
06:09 sorear Can I use PMC_data(interp) != NULL safely in an object handle destroy callback?
06:09 sorear If the interpreter is already destroyed, attempting to drop the reference segfaults, and is unneeded anyway
06:09 sorear so I want to test
06:09 sorear (finalization is such a can of worms...)
06:16 chromatic looking, cotto
06:16 chromatic Except that nopaste just disappeared.
06:18 cotto http://gist.github.com/340885
06:20 chromatic That semicolon separator is hard to read.
06:20 cotto easy fix
06:21 chromatic What's CS?
06:21 chromatic CodeSegment?
06:22 cotto Context Switch
06:22 purl well, Context Switch is kinda hard.
06:22 cotto but the fact that you asked indicates that it's not sufficiently obvious
06:22 chromatic That was the least obvious thing to me.
06:23 chromatic It's not bad for an OO-based protocol otherwise.
06:24 chromatic I'd go crazy trying to write tests in this though; I'd write a small declarative language on top of it which desugars down to this protocol.
06:24 cotto I'm on the fence which approach results in maximum laziness.
06:25 cotto I would end up typing 'ProfTest::Something' a lot less.
06:25 chromatic If I were making that evaluation, I'd write some use cases, extract the predicates, then try to express them in the most natural form of pseudocode possible.
06:26 cotto good general approach.  I'll try that when I'm more awake.
06:26 cotto Thanks for your thoughts.
06:26 chromatic You'd be surprised the other project I work on where the same approach works.
06:26 TonyC joined #parrot
06:26 cotto Which project?
06:26 purl Which project are you thinking of?
06:27 chromatic It's still a secret, but if you read my use.perl.org journal in the past year, you saw mention of it.
06:28 Austin Sugar, baby! http://nopaste.snit.ch/20048
06:29 nopaste joined #parrot
06:30 cotto night
06:58 dalek blizkost: 0c6de4c | moritz++ | build/PARROT_REVISION:
06:58 dalek blizkost: bump PARROT_REVISION to something that actually works
06:58 dalek blizkost: review: http://github.com/jnthn/blizkost/commit/​0c6de4c81df0fab4d9e85281f642084e04a1e013
07:00 Austin purl, whiteknight?
07:00 purl i think whiteknight is mailto:wknight8111@gmail.com or the grand master funk or http://wknight8111.blogspot.com/
07:00 Austin purl Austin is also Austin_Hastings@yahoo.com
07:00 purl okay, Austin.
07:05 uniejo joined #parrot
07:18 sorear cotto: What is the idiomatic way to handle destruction in cases where there are multiple objects that may need to refer to each other during destruction?
07:18 sorear cotto: There's a special case here, in that I don't need to retain the child, merely know if it is already destroyed
07:22 KosherCoke kosher coke is coke with sugar instead of HFCS.
07:23 MexicanCoke Mexican Coke, sometimes called Heroin, is Coke with sugar instead of HFCS, *and* a sweet glass bottle.
07:30 treed Mexican Coke is the only coke I willingly drink.
07:30 treed Ice cold.
07:30 purl i guess ice cold is the only way I can drink it
07:30 treed See, purl knows.
07:30 Austin Heh
07:31 treed Well, besides coke zero.
07:31 Austin The pizza shop down the street from me carries it. And the price just came down a lot - from 2.60 to 1.80
07:31 treed (and various relatives like cherry coke zero)
07:31 treed The donut shop around the corner from where I used to work carried mexican coke.
07:31 treed 1.50, IIRC
07:31 Austin Sweet.
07:31 Austin USD?
07:31 purl i heard USD was United States Dollars
07:31 treed But the area was predominately Mexican, so, it was basically "regular Coke" there.
07:32 Austin heh
07:32 treed yeah, USD
07:32 treed near KSBD (airport)
07:32 Austin I wouldn't mind another 17% off the price .. it's tasty.
07:32 treed I like it kinda expensive.
07:32 treed It's not an every day sort of thing.
07:32 treed I had an idea recently that I should only eat dessert when I make it myself.
07:33 treed To encourage me bot to eat less of it and to really fucking enjoy it.
07:33 treed s/bot/both/
07:33 Austin I feel that way about creme brulee.
07:33 treed Also because I'm bad ass at cooking.
07:33 treed And most store bought stuff isn't as good.
07:33 treed Made some cupcakes recently.
07:33 Austin If anybody is going to use a blowtorch in the kitchen, it had better be me..
07:34 treed Chocolate with almond, with a sort of raspberry filling
07:34 treed and white chocolate frosting
07:34 Austin Man, you keep adding fruit to stuff.
07:34 treed Fruit's good!
07:34 Austin First the soda, now the pastries..
07:34 Austin I like fruit.
07:34 treed And a great counterbalance to other flavors.
07:34 treed Chocolate+fruit is pretty great.
07:34 Austin I just don't like it with chocolate
07:34 treed Chocolate+peanut butter= awesome
07:34 Austin Yep.
07:35 Austin Peanut butter != fruit.
07:35 treed I want to try chocolate peanut butter cupcakes sometime.
07:35 treed Unsure how I'd make the frosting.
07:35 treed It might turn out similar to my attempt to derive thai peanut sauce.
07:35 Austin Make the cupcake, cut the top off, fill with PB, replace the top, frost to taste?
07:35 * treed shudders.
07:35 treed I'd prefer it to be a little more mixed.
07:36 treed With a PB-ish frosting.
07:36 Austin ugh
07:36 Austin That trick never works.
07:36 purl nothin' up my sleeve
07:36 treed I bet I could make it work, somehow.
07:36 treed My experiment of adding chocolate to banana-nut bread was pretty successful.
07:36 Austin Try it my way first- it's easy. split, smear, join, eat.
07:37 treed I want to try making the chocolate pieces smaller, though, to see if that'll stop them from sinking as much.
07:37 Austin Gives you a baseline to work from.
07:37 Austin In the nut bread?
07:37 treed Sure, but then you don't get both flavors in every bite.
07:37 treed And that's really what I'm going for.
07:37 treed Yeah.
07:37 treed We put chocolate chips in banana-nut bread.
07:37 treed It was fucking tasty.
07:37 Austin I bet.
07:37 treed But most of the chocolate ended up near the bottom.
07:37 treed I think the pieces were too heavy and sunk early on.
07:38 Austin Maybe you should add the chocolate after the bread bakes for a bit?
07:38 treed And that if I did shavings or grated chocolate it'd work out better.
07:38 treed I'd like to disperse it throughout the bread, too.
07:38 Austin Yeah.
07:38 treed Do a thin layer of batter, grate some chocolate, more batter, more chocolate, etc.
07:38 treed mmmm
07:38 treed now I'm getting hungry
07:38 Austin I'm thinking a little early baking time would make it harder to sink, not impossible.
07:39 treed I better go to bed before I decide to go to safeway and find their ripest bananas.
07:39 Austin Heh
07:40 treed Another option might be to grate over the top with variated sizes.
07:40 treed The heavier ones would sink more.
07:40 treed Hmmm
07:40 treed Bedtime.
07:40 purl Okay, enough. Bedtime for you!
07:40 treed Yes, purl.
07:40 purl treed: huh?
07:40 treed purl: Sh'up.
07:40 purl treed: huh?
07:41 treed Last thought: The Science of Cooking is almost as fun as the result.
07:41 * treed sleeps.
07:42 iblechbot joined #parrot
08:03 bacek joined #parrot
08:15 lucian joined #parrot
08:20 bacek joined #parrot
08:20 bacek o hai...
08:21 Austin Hello, bacek.
08:21 bacek Aloha Austin
08:22 AndyA joined #parrot
08:28 sorear Does the Parrot object destruction system have any documented semantics, or should I just rely on its current behavior?
08:29 sorear and if #parrot is not qualified for PDD clarification questions, where do I escalate to?
08:29 Austin I think there is a mark-for-urgent-destroy operation, but I don't know what effect it has. Otherwise, you should not assume that objects ever get destroyed. There is a special garbage collector - inf-gc, that never does anything
08:30 Austin If #parrot doesn't answer your question - and it's only about 50% for me - either submit a ticket, or go to the list (parrot-dev) or both.
08:31 bacek Austin, gc-inf has very specific destruction semantic - "There is no destruction at all!"
08:31 Austin heh
08:33 sorear Austin: the specific question I care about is, given two objects A and B, if A is destroyed, can I assume that either B is alive or PMC_data(B) == NULL?  This is true in all current collectors.
08:33 Austin Bacek?
08:33 purl Bacek is THE MANIAC or some sort of magical coding robot
08:34 janus joined #parrot
08:34 Austin Sorear: That's way above my pay grade, sorry.
08:34 bacek sorear, I don't see any relation between "A" and "B" in your example.
08:34 sorear answering "no" will cause me to switch to storing objects in reference-counted malloced blocks with only references in the Parrot heap
08:34 sorear bacek: VTABLE_mark(A) marks B
08:35 sorear so B is destroyed no earlier than in the same sweep phase as A
08:36 bacek sorear, bad luck... Ordered destruction isn't implemented yet.
08:36 bacek OTOH, if "B" using auto_attrs than PMC_data(B) will be NULL after destruction.
08:36 sorear I don't need ordered destruction - only a guarantee that all destruction occurs before all free()ing
08:36 sorear yes
08:36 particle joined #parrot
08:37 sorear B is using (or will, after I finish modernizing the code) auto_attrs
08:37 bacek sorear, than answer is "yes"
08:37 sorear right now it explicitly sets PMC_data(SELF) = NULL in destroy
08:37 sorear oh goody.
08:38 bacek sorear, explicit set PMC_data to NULL will work as well
08:41 sorear the next dalek-push should make things clearer
08:42 dalek blizkost: 601fb01 | sorear++ | src/pmc/p5sv.pmc:
08:42 dalek blizkost: Fix a nasty destruction order segfault bacek++ for explaining rules
08:42 dalek blizkost: review: http://github.com/jnthn/blizkost/commit/​601fb011d53b57b9990fcaa1a85d51bf7a03df7b
08:45 bacek sorear, it's better to use GET_ATTR_foo instead of GETATTR_Class_foo. pmc2c should replace it with specific calls automatically
08:47 sorear thanks, I'll do that around the same time I move everything to auto_attrs and PCC instead of CallContext hacking
08:47 sorear I get the feeling this codebase is ancient
08:48 bacek yeah... Something like 6 month old :)
08:49 moritz Tue Aug 25 15:53:19 2009 +0200 # first commit to blizkost
08:49 sorear Is that ancient in Parrot terms? </newcomer>
08:50 bacek sorear, we now officially have 3 month deprecation cycle :)
08:53 Austin What's the right word for a fetch-or-create-if-not-exists operation on a keyed item? (That is, each key identifies a different singleton instance of the class)
08:53 moritz everything that has to do with calling conventions has been re-done since then
08:53 moritz Austin: autovivification?
08:53 purl autovivification is a language feature
08:53 Austin Bit of a long method name to type...
08:54 Austin vivify?
08:54 purl vivify is, like, "get a pmc, if it doesn't exist, create one of this type and put it in the aggregate I just tried to fetch from"
08:54 moritz .oO( "get" )
08:54 Austin Nah. Get can return null.
08:55 sorear lazy_get
08:55 moritz I wasn't entirely serious - "get" is usually too generic to be a good name
08:55 Austin I'll use either fetch or vivify.
09:09 Austin fetch, ftw
09:20 dalek parrot: r45123 | bacek++ | trunk/t/pmc/continuation.t:
09:20 dalek parrot: Add wierd test for Continuation returns handling. Based on test from arnsholt++.
09:20 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45123/
09:28 contingencyplan joined #parrot
09:31 AndyA joined #parrot
09:31 cosimo joined #parrot
09:54 payload joined #parrot
10:01 dalek TT #1521 closed by bacek++: Continuations interact badly with .return
10:01 dalek TT #1521: http://trac.parrot.org/parrot/ticket/1521
10:10 fperrad joined #parrot
10:17 bacek Austin, ping
10:17 dalek TT #1405 closed by bacek++: get_results opcode before call
10:17 dalek TT #1405: http://trac.parrot.org/parrot/ticket/1405
10:17 Austin bacek?
10:17 purl bacek is THE MANIAC or some sort of magical coding robot
10:18 Austin What can the other side of the world do for you today?
10:19 bacek Austin, TT#1442
10:20 Austin Yes.
10:20 bacek There is Sub.inspect_str
10:20 bacek Which should be used with values from Sub.inspect
10:20 Austin Yes.
10:20 Austin Which I know about. But then they should not be reported as attributes.
10:20 bacek And they are not related to Sub.getattribute (which doesn't exists).
10:21 Austin Right
10:21 bacek It's not "attributes".
10:21 bacek It's keys for "inspect_str"
10:21 Austin Yep.
10:22 bacek And our VTABLEs are bloated and incomprehesible...
10:22 Austin As i understand it, if you want the keys available for inspect_str, you do inspect $P0, and get a hash.
10:22 Austin Yep.
10:23 bacek yes.
10:24 bacek AHA
10:24 bacek Gotcha
10:24 bacek There is no Sub.inspect("string")
10:25 * bacek have to rest...
10:25 bacek I'm totally lost my mind...
10:25 Austin My copy of parrot has a Sub.inspect_str
10:27 mikehh bacek: been very involved with $work the last week - anything I should work on branch test wise - will be back in an hour or so
10:28 bacek mikehh, which one?
10:29 bacek Austin, can you request this attributes from Sub'c Class?
10:29 Austin No. That's the problem.
10:29 mikehh bacek: just been not available for testing - so I wondered if there was anything you wanted me to work on when I get back to it later today
10:30 bacek mikehh, pcc_hackatron was merged into trunk. So, testing of trunk will be helpful
10:31 mikehh got Segmantation fault in examples/benchmarks/oo1.pir, oo2.pir and oo3.pir
10:31 mikehh and exception_23.pbc and exception_old.22.pbc failed to complete in testr
10:32 mikehh thye rest seems ok
10:32 bacek testr == -R cgoto?
10:33 mikehh make testr (hangs - also in make fulltest)
10:34 mikehh make fulltest runs make testb, make testC, make testf, make testg, make testr and make testS then others
10:34 mikehh no jit anymore :-}
10:37 mikehh make testr -> $(PERL) t/harness $(EXTRA_TEST_ARGS) -r $(RUNCORE_TEST_FILES)
10:38 mikehh anyway got to go out - bbl
10:38 clinton joined #parrot
11:14 riffraff joined #parrot
11:32 payload joined #parrot
12:02 whiteknight joined #parrot
12:03 dalek parrot: r45124 | bacek++ | trunk/t/pmc/continuation.t:
12:03 dalek parrot: Fix test plan.
12:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45124/
12:03 dalek parrot: r45125 | bacek++ | trunk (11 files):
12:03 dalek parrot: Get rid of Interp.current_object and all perverted logick to propogate it into CallContext. Just set it directly when required. This also fixes latest failures in examples/benchmarks/oo*.pir
12:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45125/
12:04 Austin God  mórgon, Whiteknight.
12:04 whiteknight top o' the morning to you, Austin
12:05 bacek Good moroning, whiteknight
12:06 whiteknight and a good moroning to you too, bacek :)
12:10 bacek Interesting, original test from TT#1040 passing on current trunk.
12:11 whiteknight awesome
12:21 KosherCoke note that the ?related? #562 is still borked.
12:23 KosherCoke ... what is the intended target audience of skeleton.pir ?
12:23 KosherCoke parrot developers or parrot users?
12:34 ruoso joined #parrot
12:35 whiteknight Ha. I got an email from a prospective GSoC student this morning calling me "Mr. Whitworth"
12:35 KosherCoke wow, bacek has already patched mikeh's bug by the time I read my email.
12:35 bacek KosherCoke, erm. Which one?
12:36 szbalint Are you surprised mister? :)
12:37 * KosherCoke manages to type 'svn 7up'
12:37 darbelo KosherCoke++
12:37 Infinoid (Mr. Whitworth)++
12:38 whiteknight noo!! I only make my wife and child call me that :)
12:39 bacek As you wish, Mr. Whitworth.
12:39 * Austin gets a little Bounty-esque...
12:39 Austin Miiiiister   Whiiiiitworth!!!
12:40 ascent joined #parrot
12:40 whiteknight On the bright side, apparently my blog is generating interest among several students
12:40 whiteknight so that's a plus.
12:41 szbalint not only students :)
12:41 * szbalint is a regular reader
12:42 whiteknight Awesome!
12:42 purl Awesome! is that for DBD and/or ODBC out of interest?
12:43 payload joined #parrot
12:44 Austin Okay, which one of you karma whores wants to fix role composition in class.pmc?
12:44 * whiteknight puts on his lipstick
12:44 Austin lol
12:45 whiteknight Austin: TT#?
12:45 Austin 1527
12:45 dalek TT #1526 created by coke++: editor/skeleton.pir cleanup.
12:45 dalek TT #1526: http://trac.parrot.org/parrot/ticket/1526
12:45 dalek TT #1527 created by Austin++: Despite pdd15, add_role ignores role attributes
12:45 dalek TT #1527: http://trac.parrot.org/parrot/ticket/1527
12:46 Austin Yeah, that one.
12:46 purl i guess yeah, that one is pretty dumb
12:46 bacek purl++ !!!
12:47 bacek botsnack
12:47 purl thanks bacek :)
12:47 dalek rakudo: 12e4767 | moritz++ | t/spectest.data:
12:47 dalek rakudo: run the test file for RT #68554
12:47 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/1​2e4767831f11ce126b232a01f3a2057d3051d58
12:49 Austin Whiteknight: FWIW, minus the *giant glaring failure* that is TT#1527, Kakapo now supports roles. :)
12:49 whiteknight nice
12:52 Austin msg pmichaud What's the right way for one grammar to supercede another? That is, to start using language extensions?
12:52 purl Message for pmichaud stored.
12:52 dalek parrot: r45126 | bacek++ | trunk/src/gc/api.c:
12:52 dalek parrot: Remove gc_finalize from mandatory GC subroutines.
12:52 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45126/
12:52 dalek parrot: r45127 | bacek++ | trunk/src/gc/api.c:
12:52 dalek parrot: More GC API fixes for mandatory implemented functions.
12:52 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45127/
12:53 fperrad ping bacek
12:53 bacek fperrad, pong
12:54 * KosherCoke times his rakudo build.
12:54 fperrad bacek, lua is broken (I think by pcc_hackathon_6Mar10)
12:54 bacek fperrad, sigh. Badly?
12:56 fperrad bacek, build is ok, but some tests fail in t/metatable.t, see method tostring() in luaany.pmc
12:56 whiteknight Austin: We won't be able to compose roles into built-in PMC types, because they don't have dynamic attribute stores
12:57 whiteknight if you can live with that restriction, I think #1527 can be easy to fix
12:57 Austin That'll be my *next* TT#
12:57 Austin :)
12:57 Austin It seems like the feature just isn't implemented, so there's no iffy behavior or anything. It just needs to get done.
12:58 nopaste "Austin" at 68.39.12.202 pasted "Testcase for roles" (25 lines) at http://nopaste.snit.ch/20051
13:00 bacek fperrad, Null PMC access?
13:01 fperrad bacek, yes, it's my output (a LuaNil is expected)
13:02 fperrad bacek, see line 605 in luaany.pmc
13:07 bacek fperrad, is there a way to switch parrot trace from lua?
13:12 fperrad bacek, no
13:14 fperrad bacek, manual trace :
13:14 fperrad t/lua_TestMore/test_lua51/231-metatable.t
13:14 fperrad line #63 : tostring(t)
13:14 fperrad lua/lib/luabasic.pir
13:14 fperrad line #822 : e.'tostring'()
13:14 fperrad dynext/pmc/luanay.pmc
13:14 fperrad line #598-606
13:14 fperrad previously Parrot_ext_call returns PMCNULL
13:14 fperrad so tostring() returns a LuaNil
13:15 bacek Even worse...
13:15 purl Even worse... is probably he 'patches welcome' guy?
13:15 bacek 1148 get_results PC8 (1), P581                                        PC8=FixedIntegerArray=PMC(0x82b418c) P581=nil=PMC(0xb64b3000) (t/lua-TestMore/test_lua51/231-metatable.t:63)
13:15 bacek 1151 new P582, "LuaNil"                                        P582=PMCNULL  (t/lua-TestMore/test_lua51/231-metatable.t:63)
13:15 bacek 1154 new P584, "LuaString"                                        P584=PMCNULL  (t/lua-TestMore/test_lua51/231-metatable.t:63)
13:15 bacek 1157 set P584, "__tostring no-output"                                        P584=string=PMC(0xb5c437b8)  (t/lua-TestMore/test_lua51/231-metatable.t:63)
13:15 bacek 1160 set_args PC58 (3), P581, P582, P584PC58=FixedIntegerArray=PMC(0x82b41dc) P581=PMCNULL P582=nil=PMC(0xb5c6afe8) P584=string=PMC(0xb5c437b8) (t/lua-TestMore/test_lua51/231-metatable.t:63)
13:16 bacek P581 just disappeared...
13:18 whiteknight arnsholt: ping
13:20 whiteknight purl msg arnsholt it looks like TT #1521 got fixed in the branch merge as I predicted. Give it a test and see if your issues are fixed
13:20 purl Message for arnsholt stored.
13:20 whiteknight something something something the dark side. Something something something complete
13:21 Austin Whiteknight: did that same-last-name problem ever get fixed?
13:21 whiteknight Austin: no
13:22 whiteknight I left a large rant on the ticket. I don't think it can be reasonably fixed until TT #389 is fixed. And I've been stuck on TT #389
13:22 bacek mr. whitworth, TT#1521 was closed ages ago.
13:22 whiteknight bacek: yes, I'm alerting the original reporter
13:22 theory joined #parrot
13:22 Austin How can those two be related?
13:23 bacek whiteknight, he probably will notice his nick in commit message :)
13:23 whiteknight Austin: read the rant. My level of crazy is sufficiently low this morning that I can't duplicate it on the fly
13:24 whiteknight Austin: the problem is ambiguous lookup, we don't know really whether a specified type is a built-in type or a custom type by name.
13:25 whiteknight Austin: I do mention in the ticket that if you use newclass<namespace> it works if the class object doesn't already exist
13:25 whiteknight or, it doesn't work less than it didn't work before
13:26 Austin What's wrong with just returning null?
13:26 whiteknight breaks PGE
13:26 Austin PGE, or P6object?
13:27 whiteknight PGE expects autovivification of class objects in that case.
13:27 whiteknight maybe P6object, I don't know
13:27 Austin Because that's probably 2 opcodes to fix.
13:27 whiteknight the problem is we don't know whether to autovivify a PMCProxy or a Class. getting it wrong is very very bad
13:27 Austin If I call newclass 'Hash', do I get the proxy?
13:27 whiteknight no, you get a Class, I think
13:28 Austin So how are we doing it now?
13:28 whiteknight get_class autovivifies into a PMCProxy when the type isn't found. newclass creates a new Class if not found
13:29 KosherCoke hey, bacek broke rakudo.
13:29 KosherCoke perl6multisub.c:520: error: 'struct parrot_interp_t' has no member named 'current_object'
13:30 whiteknight brb
13:30 KosherCoke bacek, you in?
13:30 bacek barely
13:30 KosherCoke did you remove current_object from parrot_interp_t recently?
13:30 bacek yes...
13:30 KosherCoke I just tried to build rakudo...
13:30 bacek Why Rakudo poke so much into parrot guts?...
13:31 atrodo joined #parrot
13:31 KosherCoke ... because there's no other choice?
13:31 darbelo For tremendous SPEED!
13:31 moritz many parrot things (like signature binding) are not sufficient for rakudo
13:31 KosherCoke I assume because at the time there was no documented API for doing it.
13:31 moritz so rakudo has to override them
13:31 moritz and use what's possible at the time it was written
13:32 KosherCoke basically, "it's probably our fault, not theirs".
13:32 darbelo It's for sure our fault.
13:32 KosherCoke any pointers for someone (not me, at least not until evening) to fix it?
13:33 whiteknight joined #parrot
13:34 slavorgn joined #parrot
13:34 darbelo KosherCoke: You'd have to find out what rakudo was abusing current_object for.
13:35 darbelo And a way to do it without current_object, of course.
13:35 KosherCoke darbelo: i was more hoping for a "here's how parrot is handling that internally now." =-)
13:35 moritz it some .pmc files it just sets current_object to NULL
13:35 moritz or PMCNULL
13:35 * KosherCoke tries to just remove those lines.
13:36 darbelo KosherCoke: *that* is attached in diff form to the commit that broke rakudo ;)
13:36 KosherCoke source ain't docs.
13:36 KosherCoke but yes.
13:37 KosherCoke it's only used once in one pmc.. without it, no other build errors so far...
13:37 KosherCoke see you in 30m when the build finishes.
13:39 darbelo When *your* build finishes.
13:39 iblechbot joined #parrot
13:39 * darbelo is building gcc from source.
13:40 mikehh darbello: that takes a while :-}
13:40 mikehh darbelo: that takes a while :-}
13:41 mikehh the last time I tried that it took me about 24 hours or something - I got more cores now but they are no faster
13:42 darbelo Two whiles, one for native, the other for cross.
13:42 darbelo The only good thing is I only have to bootstrap the toolchain once.
13:43 atrodo I have always wondered why, even today, gcc is so slow to build
13:43 Austin Whiteknight: I never remembered to ask: How was your trip to New Hope?
13:43 whiteknight joined #parrot
13:43 Austin Heh
13:43 Austin Heh
13:43 Austin Whiteknight: I never remembered to ask: How was your trip to New Hope?
13:43 darbelo atrodo: 'cause it's freking HUGE.
13:43 KosherCoke atrodo: presumably so it can be faster when building your code.
13:44 * KosherCoke is still waiting for core.pir to build...
13:44 Austin Atrodo: All the viruses and quines they built into gcc take a lot of time...
13:44 Austin What's core.pir?
13:44 atrodo Austin> That's a reason i can believe in!
13:44 whiteknight Austin: it was very nice. Perfect weather for it
13:44 Austin Buy anything?
13:45 moritz Austin: the compiled builtins written in Perl 6
13:45 whiteknight We had to buy an adorable little hat for the kid to keep the sun out of his eyes
13:45 whiteknight but otherwise, no. We were very disciplined with not buying stuff
13:45 Austin Those peddlers really know their peddling, don't they...
13:47 KosherCoke 'make test' passes with out it, moritz.
13:47 KosherCoke if  'make spectest' passes, is all OK?
13:47 moritz KosherCoke: I'm spectesting right now
13:48 moritz there's one expected failure in precedence.rakudo
13:49 KosherCoke ah. then I'll leave you to it =-)
13:51 whiteknight Austin: what's that ticket number again, #1572?
13:51 Austin For last names, or role attrs?
13:52 bacek fperrad, fixed. r45128
13:52 Austin 1527
13:52 Austin Whiteknight: 1527 for roles, 1492 for class last names.
13:52 fperrad great bacek++
13:52 whiteknight Austin++ thanks
13:55 KosherCoke in 1492, austin something something blue.
13:56 bacek KosherCoke, just kill interp->current_object from perl6multisub.pmc. It should work without it.
13:57 bacek anyway. It's tomorrow already.
13:57 bacek and bed looks pretty attractive
13:57 dalek parrot: r45128 | bacek++ | trunk/src/extend.c:
13:57 bacek Good night
13:57 dalek parrot: Restore old CallContext in Parrot_ext_call. Spotted by fperrad++
13:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45128/
13:59 * Austin sings, "In TT fourteen hundred ninety two, Austin became very blue! Parrot class hierarchies are secretly flat! WTF kind of system is that?!"
13:59 AndyAway Bah, I didn't get all my commits in last night.
14:00 Andy BUT TODAY I WILL NOT BE DENIED.
14:01 whiteknight Austin: Parrot_ComposeRole is a doozie
14:02 Austin That shit needs to be written in pir.
14:02 Austin Just like about 80% of the PMC code.
14:02 KosherCoke bacek: yes, we're trying that. enjoy ur sleep.
14:03 Austin And why isn't that called "Parrot_class_compose_role" anyway?
14:03 Austin Or _oo_
14:03 whiteknight yeah, it's going to get renamed
14:08 whiteknight There are a few attributes in Class that appear to deal with attributes of Objects. I;ll need to research the implementation a little more
14:09 dalek joined #parrot
14:10 dalek rakudo: a16cde8 | moritz++ |  (2 files):
14:10 dalek rakudo: parrot r45125 removed Interp.current_object, so remove references to in Rakudo too; also bumps PARROT_REVISION
14:10 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​16cde8a64634b909e6e5cf35151e82f2ea83d8e
14:10 ascent joined #parrot
14:11 patspam joined #parrot
14:13 payload joined #parrot
14:17 dalek parrot: r45129 | gerd++ | trunk/compilers/pct/src/PCT/HLLCompiler.pir:
14:17 dalek parrot: Gives out the version number, if a release is used and the revision number, if a svn checkout is used
14:17 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45129/
14:32 brianwisti joined #parrot
14:32 KosherCoke moritz: any luck?
14:32 darbelo KosherCoke: see a16cde8
14:33 darbelo 11:09 <+dalek> rakudo: parrot r45125 removed Interp.current_object, so remove references to in Rakudo  too; also bumps PARROT_REVISION
14:33 moritz KosherCoke: yes; pushed
14:34 dalek parrot: r45130 | petdance++ | trunk/compilers (9 files):
14:34 dalek parrot: fixing headerizer notations on many funcs
14:34 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45130/
14:37 riffraff joined #parrot
14:39 KosherCoke moritz++
14:49 dalek parrot: r45131 | gerd++ | trunk/compilers/pct/src/PCT/HLLCompiler.pir:
14:49 dalek parrot: make it a little bit shorten
14:49 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45131/
15:18 KosherCoke Andy: please don't edit the generated files.
15:19 KosherCoke ;... that is a generated file, innit?
15:19 KosherCoke (yup. trunk/compilers/imcc/imcparser.c)
15:20 Austin N4N, but shouldn't that be "please don't commit the generated files?"
15:21 KosherCoke ... "please don't commit changes to checked in generated files unless you are also committing changes to their source files"
15:21 KosherCoke there, is that better/
15:21 KosherCoke ?
15:21 Austin Well, no.
15:21 Austin I meant, shouldn't generated files be generated?
15:21 Austin And therefore, never checked in?
15:22 KosherCoke Austin: ... have you met IMCC?
15:22 Austin Nope.
15:22 KosherCoke there are .l and .y files that are checked in. the files they generate are also checked in, to remove the need for all of our developers to have compatible versions of lex/yacc.
15:22 Austin Heh.
15:22 KosherCoke if you run Configure with --maintainer and you have lex & yacc, you'll regen those files.
15:22 Austin Okay.
15:25 KosherCoke we do the same trick with nqp and pir. =-)
15:30 whiteknight Austin: I think I'm not going to touch TT #1527 today. It's above my pay grade
15:30 Austin Huh?
15:30 Austin It seemed so straightforward...
15:36 KosherCoke TT #1527?
15:36 KosherCoke lazy bots
15:36 purl Simple little hoo-mon!
15:37 KosherCoke ferengi?
15:37 purl ferengi is U+E600-E62f (unofficial: http://www.evertype.com/st​andards/csur/ferengi.html)
15:37 Austin purl?
15:38 purl Austin?
15:38 Austin purl plugins?
15:38 purl plugins are just multiple inheritance
15:38 Austin purl maintainer?
15:38 purl maintainer is probably open to contributions
15:38 Austin purl owner?
15:38 purl owner is hachi, see also #purl
15:38 Austin #purl ?
15:38 purl i heard #purl was web free
15:39 whiteknight Austin: nothing is straight-forward
15:40 Austin Of course not.
15:40 whiteknight I'll look at it later, but won't happen today
15:40 Austin okay
15:40 whiteknight What I would like to see, if you have a few spare moments, is a list of your bugs and blockers in a priority order
15:41 Austin Heh
15:41 Austin I don't have any blockers, really. I just keep hacking until I figure a way around the problem.
15:41 Austin (Nice thing about NQP - it's easy to throw code at a problem...)
15:41 Austin I'll work on the priority list, though.
15:42 whiteknight that would be nice. I do want to make commits to support your efforts
15:45 whiteknight I really want to get this damn TT #389 problem fixed, but I don't know if I can get it to work
15:46 khai joined #parrot
15:46 whiteknight I have an idea in my mind, but will take time to implement and test
15:47 Mokurai1 joined #parrot
15:48 Mokurai1 left #parrot
15:50 cotto_work happy Tuesday
15:52 whiteknight happy tuesday, cotto_work
15:53 whiteknight in PAST, how do I make a method call? PAST::Op.new(:pasttype("call"), ...)?
15:54 Austin Yepo
15:54 Austin PAST::Op.new: :pasttype<call>, :name<foo>, $arg1, $arg2, $arg3;
15:57 whiteknight so how do I specify the invocant?
15:58 Austin First arg
15:58 purl somebody said First arg was a test which is applied to each element in the @array
15:58 Austin Wait, sorry, I'm wrong.
15:58 Austin :pasttype<callmethod>
15:59 whiteknight okay, awesome
15:59 Austin Wait.
15:59 whiteknight !!!
15:59 Austin There's two ways to do this, and they don't work well together.
15:59 Austin :name<foo>, $invocant, $arg1, $arg2, ...
15:59 Austin or
15:59 Austin $method, $invocant, $arg1, $arg2
16:00 Austin If you know the method name when you're generating the tree, put it in the name. Otherwise, make it the first child (subexpression) of the node.
16:00 Austin This is somewhat backwards from the object.method(arg1, arg2) ordering you might expect.
16:01 Austin okay, unwait.
16:05 Andy KosherCoke: So have we decided that my commit was OK?
16:08 Andy Hmm, I thought those generated files had changes that rippled up.
16:15 lucian joined #parrot
16:20 dukeleto 'ello
16:26 KosherCoke Andy: you changed the generated files, but not, apparently, with lex/bison.
16:26 KosherCoke (I think I just crossed the streams there.)
16:27 KosherCoke so, no; those changes will be thrown out the next time someone regens those files.
16:27 Andy I did! I did!  I even got bison 2.4.1 to match the one that the last person used.
16:27 Andy because I only had 2.3
16:27 Andy because that was the source of MANY diffs.
16:28 KosherCoke Andy: so you regen'd the file but didn't commit the .l or .y ?
16:28 Andy right
16:28 Andy I didn't hcange the .l or .y, either
16:28 KosherCoke *boggle* . then why change the generated files?
16:28 Andy I didn't!
16:28 KosherCoke your commit changed compilers/imcc/imcparser.c
16:28 Andy yes, I know
16:28 Andy Rather
16:28 Andy i
16:28 Andy t
16:28 Andy
16:28 Andy w
16:28 Andy as
16:28 Andy
16:28 KosherCoke that's a generated file.
16:28 Andy it was not my INTENT to change them
16:28 KosherCoke but you did. =-)
16:29 Andy yes
16:29 KosherCoke then it's fine, though, since those presumably aren't changes you care about.
16:29 Andy I am thinking that someone ELSE changed a .l or .y and didn't commit the regenerated ones.
16:29 KosherCoke I had thought they were part of your other fixes.
16:29 Andy that's what I thought too
16:29 KosherCoke Andy: that, sir, is entirely possible.
16:29 KosherCoke Can i still blame you anyway? ^_^
16:30 Andy If you like
16:30 KosherCoke WHEE!
16:30 Andy You can also blame me for committing changes that break pirc
16:30 Andy because I didn't realize that I wasn't building pirc
16:31 KosherCoke pirc isn't built or tested by default, so no one will notice.
16:31 Andy right
16:31 Andy I didn't. :-)
16:31 Andy who's working on it?
16:31 KosherCoke no one.
16:31 Andy Is it actually useful, though?
16:31 KosherCoke it's intended to replace IMCC.)
16:31 Andy I'm not cleaning up stuff for nothin'?
16:31 KosherCoke nope.
16:31 Andy ok
16:32 Andy 'cause the consting and ARG*() are all wrong.
16:32 KosherCoke I have a patch that lets you specific --pirc to Configure that #define's something in C; presumably someone clever can take that and make it configurable.
16:32 Andy I hope it's OK if it #includes "parrot/compiler.h"
16:33 KosherCoke http://trac.parrot.org/parrot/ticket/576
16:33 KosherCoke hey! you're a better c programmer than I am...
16:34 KosherCoke I stopped looking once i realized that pirc is compiling to ./pirc, and not integrating with parrot.
16:41 dukeleto --pirc looks useful
16:41 KosherCoke dukeleto: feel free to apply the WIP back to trunk; shouldn't break anything.
16:42 KosherCoke if it's a config option, we can start keying tests off it to be TODO for IMCC and not for PIRC, etc.
16:42 KosherCoke (to facilitate getting pirc tested until its ready.)
16:50 atrodo joined #parrot
16:51 dalek rakudo: f20f1e5 | moritz++ | src/core/Grammar.pm:
16:51 dalek rakudo: die on parse($str, :action()), which should be :action*s*
16:51 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​20f1e5c5109d404a748aa8f766f6b05404a74fc
16:51 dalek rakudo: 4c56ade | moritz++ | src/cheats/parrot/Protoobject.pir:
16:51 dalek rakudo: don't fail on converting type objects to Num or Int; I couldn't make it emit a warning, but I think just returning 0 is still more correct than a hard failure
16:51 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​c56ade5cd20e86e18877719883e0fc88be4beac
17:02 cosimo joined #parrot
17:05 Mokurai joined #parrot
17:08 dukeleto KosherCoke: will keep that in mind
17:11 * arnsholt svn ups
17:16 arnsholt Oh, this is grand
17:17 arnsholt The bug is only partway fixed, it seems. If you remove the .tailcall directive, it still fails
17:17 atrodo joined #parrot
17:18 KosherCoke which bug?
17:18 dalek parrot: r45132 | mikehh++ | trunk/t (2 files):
17:18 dalek parrot: convert .tailcall not thawed properly in testr from TODO to SKIP in 2 tests that are hanging
17:18 purl I don't know how to convert .tailcall not thawed properly in testr from TODO to SKIP in 2 tests that are hanging.
17:18 plobsing_ joined #parrot
17:18 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45132/
17:18 arnsholt TT #1521
17:19 arnsholt whiteknight: *prod?*
17:19 whiteknight prod?
17:19 purl well, prod is basicly a "shared host" kinda setup
17:20 arnsholt It seems my continuation bug is still partly there (see above)
17:20 whiteknight damnit. Create a new ticket
17:20 arnsholt Righties. My next question was if I should reopen the old one or create a new one =)
17:21 moritz if the context is mostly the same, it might be easier to re-open
17:21 moritz even if it doesn't look so nice in our statistics :-)
17:21 whiteknight I would create the new one, since we have more specific information about the problem
17:21 moritz well, you're hacking more on parrot than I do
17:21 moritz so arnsholt should believe you, not me :-)
17:22 whiteknight we'll both call his name, and whoever he comes to, gets to keep him
17:23 arnsholt Hehe
17:23 KosherCoke Andy: for bobby tables: http://gizmodo.com/5498412/sql-injection-lice​nse-plate-hopes-to-foil-euro-traffic-cameras
17:27 khai left #parrot
17:28 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32803), fulltest) at r46132 - Ubuntu 9.10 amd64 (g++ with --optimize)
17:36 KosherCoke mikehh: can you add a ticket for that skip?
17:49 cosimo_ joined #parrot
17:51 arnsholt Ticket created
17:54 kjeldahl_ joined #parrot
17:54 mikehh I commented on this in TT #1172
17:59 brianwisti left #parrot
17:59 Andy KosherCoke: Already got it and plan to put it in.  Thanks.
17:59 Andy fork pull requests welcome. :-)
17:59 Andy ooh my, they LINK to bobby-tables!
18:01 KosherCoke whee!
18:01 KosherCoke oh, it's in the githubbery? checking...
18:02 KosherCoke ... I knew that at one point.
18:02 dalek TT #1528 created by arnsholt++: Continuations still interact badly with .return
18:02 dalek TT #1528: http://trac.parrot.org/parrot/ticket/1528
18:04 Psyche^ joined #parrot
18:12 payload joined #parrot
18:14 KosherCoke alright, I've forked you. Of course, I have nothing to request for you to pull. YET.
18:23 hercynium joined #parrot
18:30 Andy OK, pirc is totally hosed
18:30 Andy a
18:30 Andy nd
18:30 Andy i
18:30 Andy t's
18:30 Andy n
18:30 Andy ot
18:30 Andy and it's not just me.
18:32 cotto_work That's what we got for not building it by default.
18:32 cotto_work s/got/get/
18:36 lucian joined #parrot
18:36 KosherCoke Austin: hey, you're an nqp-rx expert. Any cases in partcl-nqp where I'm using PIR and I don't have to?
18:46 dalek plparrot: 02a4d8e | (David Fetter)++ | HACKING.postgres:
18:46 dalek plparrot: Added configure instructions.
18:46 dalek plparrot: review: http://github.com/leto/plparrot/commit/0​2a4d8e62f3b2aa76c3763923f52157a50b2e652
18:53 arnsholt Hmm. I might have found another continuations issue
18:57 joeri joined #parrot
18:59 KosherCoke http://timetobleed.com/descent-into-d​arkness-understanding-your-systems-bi​nary-interface-is-the-only-way-out/
18:59 cotto_work I like that blog.  He does scary and amazing things with Ruby.
19:01 KosherCoke slide 46: "Let's combine all of this knowledge and ... REWRITE THE RUBY VM WHILE IT IS RUNNING."
19:01 arnsholt "Luckily, we can turn to evil" =D
19:05 KosherCoke NotFound: ENOPLAN!
19:08 cotto_work nice work google: http://godashboard.appspot.com/benchmarks
19:08 NotFound KosherCoke: ENOEOR
19:09 cotto_work It's an open-ended report.
19:10 KosherCoke rakudo: 2/7.say
19:28 iblechbot joined #parrot
19:28 hicx174 joined #parrot
19:32 whiteknight arnsholt: new bug?
19:32 purl new bug is all his though
19:32 whiteknight purl forget new bug
19:32 purl whiteknight: I forgot new bug
19:32 arnsholt whiteknight: Possibly. I've just got to comb the code a bit, make sure it's not a bug in my code
19:33 dalek rakudo: 4a8954f | moritz++ | t/spectest.data:
19:33 dalek rakudo: run a new spectest file by lue++
19:33 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​a8954f2866497d74370ffd3e9b8cd3d59b9f73a
19:33 arnsholt But it looks like backtracking over multiple choose()s doesn't quite work
19:33 whiteknight arnsholt: I know this is frustrating for you, but we don't have many people using continuations a lot. You're using things that nobody else has really used before
19:33 whiteknight arnsholt: also, is your code public anywhere?
19:35 arnsholt I'm planning on putting the code in my github, but ATM it's just a bunch of stubs and random proddings of things, so I've not really bothered
19:35 arnsholt It's a bit frustrating, but it's nice to be able to contribute right off the bat too =)
19:35 whiteknight okay, well when you do make it public I would very much like to see it all. I've been interested in a prolog-on-parrot port myself
19:35 * KosherCoke wonders if apl still works.
19:36 whiteknight I've also been interested in writing an inference engine library as well, though that's not necessarily related
19:36 KosherCoke apl fail.
19:36 whiteknight KosherCoke: where is the apl code?
19:37 darbelo paraplegic?
19:37 darbelo apl?
19:37 purl somebody said apl was like driving a double-decker bus; it's good for getting rows and columns of people all to one place at one time.  But it only drives in reverse, and all the instruments are labeled in Greek. or an abbreviation for ActivePerl or the programming language you need a special keyboard for or at http://www.unicode.org/charts/PDF/U2300.pdf or vaguely available on parrot
19:37 chromatic joined #parrot
19:37 arnsholt whiteknight: So far it's just fiddlings with the backtracking code, but it I'll keep you informed
19:38 arnsholt (If you're interested, I'm basing my work so far on a book called On Lisp)
19:38 KosherCoke whiteknight; http://code.google.com/p/pa​raplegic/issues/detail?id=1
19:38 KosherCoke parrotsketch?
19:38 purl somebody said parrotsketch was a status meeting for parrot core committers held every Tuesday at 20:30 UTC in #parrotsketch
19:38 KosherCoke clock?
19:38 purl KosherCoke: LAX: Tue 12:38pm PDT / CHI: Tue 2:38pm CDT / NYC: Tue 3:38pm EDT / LON: Tue 7:38pm GMT / BER: Tue 8:38pm CET / IND: Wed 1:08am IST / TOK: Wed 4:38am JST / SYD: Wed 6:38am EST /
19:38 darbelo purl paraplegic is apl on parrot
19:38 purl OK, darbelo.
19:39 darbelo purl paraplegic is also http://code.google.com/p/paraplegic/
19:39 purl okay, darbelo.
19:41 KosherCoke happy to give out commit bits if someone wants to fix apl.
19:46 dolmen joined #parrot
19:47 arnsholt whiteknight: Any good ideas for a name, incidentally?
19:47 arnsholt The best I've come up with so far is parrotlog, which I don't really like
19:47 whiteknight no, I'm not good at coming up with creative names
19:48 whiteknight if left up to me, it would be something stupid like Parrot-Prolog
19:48 KosherCoke nothing wrong with that.
19:48 chromatic NO
19:48 KosherCoke eek.
19:48 whiteknight see, chromatic is all creative and shit. Every time I name a project, part of him dies inside
19:49 arnsholt chromatic: I've got a friend how would find that a perfectly acceptable name for a Prolog implementation =)
19:49 whiteknight you should see me design a website sometime. It's like greyscale, but without the scale
19:49 whiteknight parolog
19:50 whiteknight that's my best portmanteau
19:50 darbelo whiteknight: Maybe you should anme it in slovak. It works fro jonathan.
19:51 whiteknight darbelo: I only know two languages: english and bad english
19:51 whiteknight actually, according to the teachers in highschool, I don't know either of those
19:51 darbelo Fine, use klingon.
19:52 chromatic Vulturine
19:52 KosherCoke ghobe'
19:52 darbelo KlingonCoke++
19:52 NotFound arnsholt: PANFAPI
19:53 whiteknight In binary, parrot-prolog is 01110000011000010111001001110010011​01111011101000010110101110000011100​1001101111011011000110111101100111
19:53 whiteknight that's a good name for it
19:53 NotFound whiteknight: easily searchable
19:53 arnsholt NotFound: Is that like panspermia? O=)
19:54 KosherCoke ... I am not surprised to find that "lol" is a klingon word.
19:54 NotFound arnsholt: Perfectly Acceptable Name For A Prolog Implementation
19:54 arnsholt Oh, right
19:54 Andy Any got a second for helping me something Blindingly Obvious that I can't see?
19:55 Andy Try to "make pirc" and tell me why C<lexer_state> isn't getting recognized by the compiler in, for example, compilers/pirc/src/pirmacro.h
19:55 whiteknight Andy: a few minutes, maybe. What do you need?
19:55 KosherCoke Andy: sure. first, remove your Joo Janta 200 Super-Chromatic Peril Sensitive Sunglasses
19:55 NotFound arnsholt: I have a program called YAYAPN: Yet Another "Yet Another" Program Name.
19:55 * chromatic is indeed wearing sunglasses
19:55 Andy Ya got ta wear ya sunglasses.
19:56 * arnsholt is actually inclined to use PANFAPI
19:56 cotto_work panfapi++
19:58 Andy if on line 82 of compilers/pirc/src/pirsymbol.h, you s/lexer_state/char/, the compile continues on to the next instance of lexer_state.
19:58 Andy but the file where lexer_state is getting defined IS included.
19:59 Andy I'm baffled.
20:00 NotFound compilers/pirc/src/pirsymbol.h:133: error: duplicate ‘const’
20:00 KosherCoke Andy: lexer state is a struct, you can't just swap it out for a char, can you?
20:01 KosherCoke er, "lexer_state"
20:01 NotFound ARGIN(const const * name))
20:02 KosherCoke (I can't compile anything in there due to borkage.)
20:03 KosherCoke oh, you're wondering why it doesn't compile in the first place?
20:05 Andy Right
20:05 KosherCoke Andy: ... what does lexer_state * const varname mean?
20:05 Andy Well, I'm fixing that up
20:05 KosherCoke shouldn't the const be before the type?
20:05 Andy yes, it should
20:05 Andy but it's not wrong
20:06 Andy But that's not the problem.
20:06 Andy It's wrong for us, but not bad syntax
20:06 Andy lexer_state * const foo means "the pointer foo cannot change"
20:06 NotFound That thing had compiled before?
20:06 Andy Not that I can tell, NotFound
20:07 NotFound It has several obvious typos.
20:07 Andy Which "It"?
20:07 NotFound pirc
20:07 Andy I need more specfiic.
20:08 KosherCoke well, andy did just commit a pretty big change to it.
20:08 Andy But even reverting that it still doesn't compile.
20:08 KosherCoke why is lexer state tyepdef struct'd 2x?
20:08 Andy You mean in two different places, in two different files?  Don't know.
20:09 NotFound Andy: compilers/pirc/src/pirmacro.c:111
20:10 Andy and yet that's not my problem.
20:11 Andy I BELIEVE I have files including each other
20:11 KosherCoke um. should it be 'struct lexer_state' ?
20:11 KosherCoke (or should the typedef obviate the need for that?)
20:11 Andy KosherCoke: no, because it's a typedef
20:11 KosherCoke (if you add the struct it gets past that.)
20:12 Andy probebaly because of the forward def.
20:12 NotFound Andy: the simpler solution is typedef struct lexer_state lexer_state;
20:12 Andy NotFound: No, it's not.
20:12 Andy That's already being done.
20:13 Andy I have some stuff defined in pircompiler.h, some in pirsymbol.h, and they include each other, but both want lexer_state.
20:13 Andy I need to untangle those, it looks like.
20:15 NotFound Andy: add a header that typedef-predeclare all structs.
20:15 Andy That's certainly one solution, yes.
20:15 Andy I'm trying to figure out what the intended split is.
20:16 Andy Who wrote all this?  The C fundamentals seem to need some help.
20:16 bacek joined #parrot
20:16 NotFound pidefines.h sounds like a good candidate already,
20:16 bacek Morning
20:17 Andy It's safe if nothing else, thanks.
20:18 Andy oh look, we have it defined in three places.
20:19 Andy oh, no, only two
20:20 mikehh hi bacek
20:20 lucian joined #parrot
20:21 bacek aloha mikehh
20:22 Andy so I'm gonna have to pull out all the lexer stuff into its own standalone file.
20:24 Andy Now, can anyone tell the difference between the macro/ and the src/ dirs under pirc/
20:27 Util_ joined #parrot
20:29 bacek ps?
20:29 purl ps is, like, postscript or process status or see "parrotsketch" or non-vector?! or annoying
20:29 NotFound Andy: I think I heard somewhere that the macro processor has his own parser.
20:29 Andy NotFound: Aha, that makes sense, I'll leave that alone
20:30 NotFound How on hell pirc bison files are supposed to be processed?
20:30 mikehh #ps time
20:31 NotFound Forget it, just a touch do the job.
20:31 purl NotFound, I didn't have anything matching it, just a touch do the job
20:32 Andy I can't parse "Forget it, just a touch do the job."
20:32 dolmen left #parrot
20:33 dalek joined #parrot
20:33 cotto_work I think he means use touch to update the timestamp of the file
20:33 PerlJam Andy: he ran "touch foo.y" so that make would reprocess the file
20:33 PerlJam (or something like that)
20:36 NotFound Andy: I think pir.y has a recurrent problem with headerizer: the headerizer generated headers are place before the declaration of the types that the functions use.
20:36 NotFound s/headers/declarations
20:46 gz016 joined #parrot
20:53 * chromatic watches a tumbleweed tumble through #ps
20:57 Andy Rollin' on... with the tumblin' tumbleweeds....
20:58 KosherCoke sorry. this schedule is even more conflicty with work and transit.
20:58 KosherCoke missing meeting altogether; email me if something comes up for me.
21:02 mikehh joined #parrot
21:09 Whiteknight joined #parrot
21:14 mikehh joined #parrot
21:17 particle where is chip's perl5 fork?
21:17 chromatic Topaz or corehackers?
21:18 particle corehackers
21:18 particle thanks, thats' what i needed
21:19 particle don't mention the t-word
21:21 particle the sitecustomize hack in perl5 is stupid, it needs to be patched. been working on one today, wanted to see if i should push it there, or to p5p, so i'm reading up
21:24 bacek Looks I cracked TT#1172.
21:26 mikehh bacek: excellent
21:28 allison joined #parrot
21:29 snarkyboojum joined #parrot
21:31 dukeleto wow, the error message here: http://www.parrotcode.org/doc​s/pdd/pdd16_native_call.html is ... not so great?
21:31 bacek mikehh, feel free to clean leftover comment in t/op/exceptions.t :)
21:32 dukeleto and by the way, parrotcode.org still somes up in goog searches. i guess now everybody gets that kind of error page => :(
21:32 chromatic Glad to see TT #1172 closed; I didn't want to have to fix that one.
21:33 bacek chromatic, it was quite easy :)
21:34 bacek Erm... Looks like I committed wrong bit in Sub.inkove...
21:36 bacek Ah, no. nm
21:37 Whiteknight TT #1172 is not closed
21:37 bacek Whiteknight, what???
21:37 Whiteknight I'm looking at the ticket right now. Not closed
21:37 Whiteknight maybe it's a cached version or soemthing
21:37 cotto_work yeah.  It'
21:37 cotto_work s closed.
21:38 Whiteknight then wtf am I looking at?
21:38 AndyA joined #parrot
21:38 bacek Mr. Whitworth, you should pay more attention to details.
21:38 bacek :)
21:39 Whiteknight great
21:39 bacek Anyway, $dayjob time
21:39 bacek See ya
21:39 * NotFound whistles 'Daisy, Daisy...'
21:41 dalek TT #1172 closed by bacek++: Lexical Associations Not Thawed with Tailcalls
21:41 dalek TT #1172: http://trac.parrot.org/parrot/ticket/1172
21:42 dalek parrot: r45133 | bacek++ | trunk/src/pmc/sub.pmc:
21:42 dalek parrot: Freeze/thaw Sub.outer_sub by name to avoid thawing second instance of
21:42 dalek parrot: outer Sub. Closes TT#1172.
21:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45133/
21:42 dalek parrot: r45134 | bacek++ | trunk/t/native_pbc (4 files):
21:42 dalek parrot: Rebuild native PBCs
21:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45134/
21:42 dalek parrot: r45135 | bacek++ | trunk/t/op/exceptions.t:
21:42 dalek parrot: Unskip/untodo tests related to TT#1172
21:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45135/
21:42 cotto_work If a native pbc rebuild is needed, shouldn't PBC_COMPAT be bumped?
21:43 chromatic Hm, I thought it was.  Good point.
21:45 * allison reviews parrotsketch log
21:45 allison good news on the PCC merge
22:07 KosherCoke msg dukeleto I pinged the perl.org admins, we'll get that fixed.
22:07 purl Message for dukeleto stored.
22:10 coke .
22:10 Coke purl, be coke =~ /irc/
22:10 purl Coke: sorry...
22:11 Coke purl, be coke
22:11 purl Coke: i'm not following you...
22:11 Coke purl, be coke!
22:11 purl Coke: excuse me?
22:11 Coke ;hurm.
22:16 cotto_work msg bacek r45133 probably needs a PBC_COMPAT bump if it invalidated the bytecode.
22:16 purl Message for bacek stored.
22:18 Coke didn't we just cover that?
22:18 Coke ah. pbcs were rebuilt...
22:18 AndyA_ joined #parrot
22:19 Coke AndyA: Hello.
22:19 Coke AndyA: Enjoying your tenure on the GC? =-)
22:19 chromatic joined #parrot
22:19 dukeleto Coke++ # for doin' stuff
22:20 Coke dukeleto: sending emails isn't really work.
22:20 Coke ... do we really have a need to fix TT #775?
22:20 Coke (that is, do we have any platforms for which dmake is the only make available?)
22:20 dukeleto Coke: but actually, it is. Sometimes I just don't have the time to send yet another email. The person who gets something done via email *is* doing work
22:21 Coke ok. these were nothing. enjoy.
22:21 dukeleto Coke: take the compliment! ;)
22:21 Coke NO!
22:21 Coke joined #parrot
22:21 Coke (ok, that was silly. =-)
22:25 davidfetter joined #parrot
22:31 dalek parrot: r45136 | mikehh++ | trunk/t/op/exceptions.t:
22:31 dalek parrot: remove redundant comment from passing test
22:31 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45136/
22:47 dalek parrot: r45137 | mikehh++ | trunk/t/pmc/exception-old.t:
22:47 dalek parrot: remove skip/todo from passing test (testr)
22:47 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45137/
22:54 cotto_work Is Khairul hanging out here?
22:58 dalek rakudo: b21779a | jonathan++ | src/ (3 files):
22:58 dalek rakudo: Get rid of special casing of return in the parse. Now it's just parsed as a normal routine/listop. Add a hook where eventually we'll implement checking for a :(\|$parcel) signature having been predeclared; for now we just recognize return by name. Comment it up. Fixes various parsing issues.
22:58 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/b​21779a243657d8447b9e41f0d5aa31dc17000f1
22:58 dalek rakudo: 40cc338 | jonathan++ | t/spectest.data:
22:58 dalek rakudo: Turn on S04-statements/return.t, which we now pass fully.
22:59 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​0cc338933c1ef8a8c9e85ee19c88ae9b190f494
23:00 plobsing I'm going to merge no_pmc_install soon unless someone objects
23:01 cotto_work ooc, what's the motivation for that branch?
23:01 plobsing eliminate installation of PMC sources
23:02 cotto_work Sure, but why?
23:02 plobsing same reason we don't install src/main.c
23:03 cotto_work because it
23:03 purl because it is portable
23:03 cotto_work 's stupid?
23:03 plobsing sure, I'll go with that.
23:04 cotto_work It's nice to get stupid stuff out of Parrot.  It's a target-rich environment.
23:10 dalek rakudo: eee3134 | jonathan++ | t/spectest.data:
23:10 dalek rakudo: Turn S06-advanced_subroutine_features/recurse.t back on.
23:10 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/e​ee3134329005d427ea393f7959bc31e550082d6
23:10 dalek rakudo: 721a86a | jonathan++ | t/spectest.data:
23:10 dalek rakudo: Turn S06-signature/closure-over-parameters.t back on.
23:11 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​21a86af65bc924fb17457f24b82f84102299966
23:11 Coke plobsing: did you test on partcl?
23:11 Coke (or waiting on me?)
23:11 plobsing Coke: yes, I did. It revealed a bug, which I fixed.
23:11 Coke woot.
23:11 Coke no objections, then.
23:12 Coke someone who has GMP installed could probably fix 1517 and unTODO the test.
23:16 dalek rakudo: c8614ac | jonathan++ | src/Perl6/Grammar.pm:
23:16 dalek rakudo: Move a couple of decls from TOP to comp_unit, for STD conformance.
23:16 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c​8614ac0187630e258cdd6d725183ce5c1d087f5
23:16 dalek rakudo: 0188099 | jonathan++ | src/Perl6/Compiler/Module.pm:
23:16 dalek rakudo: Fix for #73760 (Rakudo can't load classes from inside a module).
23:16 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​188099965dd61e72ab5633523fcb7a8113a94f4
23:26 payload joined #parrot
23:27 mikehh I am getting a failure with t/op/gc.t - Failed test:  5
23:28 mikehh I extracted the test (sub with 2 tests) - proved ok - I then extrracted the first 5 tests and it also proved ok - I find this weird
23:29 cotto_work You might need a reconfig.  A recent change needed to bump PBC_CONFIG but didn't.
23:29 cotto_work though if you can build that may not be the issue
23:30 mikehh I thought of that - but it seems to build and test ok - except for the failing test
23:32 mikehh I also got some additional failures with testr - but the previously failing (SKIP actually) tests now passes
23:33 mikehh but I was concentrating on the t/op/gc.t test
23:33 mikehh I think the testr failures may be due to PBC_CONFIG
23:34 mikehh not sure how to do a reconfig there
23:36 chromatic Hm, getting the mem_pool->guaranteed_reclaimable size righter has positive changes on compact_pool.
23:36 nopaste "chromatic" at 173.50.130.127 pasted "whiteknight, bacek -- this helps memory usage in compact_pool, but it's not quite right yet" (40 lines) at http://nopaste.snit.ch/20055
23:36 Whiteknight hmmm...
23:37 chromatic I think it was double counting reclaimable space before.
23:37 dalek parrot: r45138 | plobsing++ | trunk (85 files):
23:37 dalek parrot: merge no_pmc_install branch
23:37 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45138/
23:37 dalek parrot: r45139 | plobsing++ | branches/no_pmc_install:
23:37 dalek parrot: branch has been merged
23:37 dalek parrot: review: http://trac.parrot.org/parrot/changeset/45139/
23:38 Whiteknight so if it thought there was more reclaimable space, wouldn't that mean it would try to reclaim more aggressively?
23:39 chromatic See the part I uncommented.
23:40 chromatic It never subtracted the guaranteed reclaimable space.
23:41 chromatic It's like someone took all of the cool ideas from all of the GCs anyone has ever heard of and tried to mash them together into one mess.
23:41 chromatic It's precise, but it walks pools to copy things.
23:41 chromatic It has optimizations for long-lived data, but it walks pools to copy things.
23:41 chromatic It keeps track of reclamation thresholds to avoid doing work, but it walks pools to copy things.
23:42 Whiteknight you aren't possibly accusing some parts of the parrot design to be a mishmash of ideas that seem good on their own, are you?
23:42 chromatic It tries to avoid fragmentation, but it never compacts.
23:42 chromatic I'm wishing for a little more consistency of a single, unified vision.
23:43 Whiteknight all these problems do predate allison, but "vision" is supposed to be one of the advantages of the architect model
23:44 Whiteknight it's also supposed to be one of the advantages of our system of design documents
23:44 ruoso joined #parrot
23:44 allison The GC is one subsystem we've never redesigned
23:44 Whiteknight exactly. It's high-time
23:44 chromatic We should know *exactly* how much memory we can reclaim from the STRING system because we have a precise GC.
23:44 Whiteknight it's past time
23:44 allison yup
23:44 Whiteknight chromatic: the GC isn't quite precise. We do still stack walk
23:45 allison so, sounds like that's the next big task
23:45 Whiteknight what, kill the stack-walk code in a wood chipper?
23:45 allison (actually, that's what we said a few weeks ago, get PCC merged and then start on GC)
23:46 dalek rakudo: 01cc996 | jonathan++ | src/Perl6/Grammar.pm:
23:46 dalek rakudo: Add obsolete operator catchers for =~ and !~.
23:46 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​1cc996c3e96bc082667875d3b15ff64c1212a91
23:46 dalek rakudo: 869e251 | jonathan++ | t/spectest.data:
23:46 dalek rakudo: Add S03-operators/brainos.t to spectest.data.
23:46 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​69e251b8770d62af1bc53b17a04b02a71c55633
23:46 dalek rakudo: 7c20adc | jonathan++ | docs/ROADMAP:
23:46 dalek rakudo: Mark protoregexes in grammars done in ROADMAP; bkeeler++ for patch that got them working, moritz++ for tests. Also update who's doing it on meta-ops to match reality.
23:46 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​c20adc492aa61c72b6e4042671d73ace2c48bd4
23:47 allison so, as a group we've done a few GC refactors so far
23:49 allison at the point we are now, is it more important to start with the design? Or more important to start with code cleanup?
23:49 Whiteknight it is *much* cleaner. And these kinds of problems are much more obvious
23:49 allison Seems like the previous ones did various code cleanups?
23:49 Whiteknight we've focused on cleanups and encapsulation with an especial focus on pluggability
23:50 Whiteknight the idea being with a proper interface, we can slide a new core in with minimal disruptions
23:50 Whiteknight that interface set, we can start work on that hypothetical new core
23:50 dalek tracwiki: v8 | plobsing++ | NCITasklist
23:50 dalek tracwiki: remove justification of nci_thunk_gen.pir. criticisms of current approach are no longer current.
23:50 dalek tracwiki: http://trac.parrot.org/parrot/wiki/N​CITasklist?version=8&amp;action=diff
23:51 allison looks like the GC PDD is decent, but generic
23:52 allison Whiteknight/chromatic: does the PDD need to be updated after the code cleanups?
23:52 allison has the interface changed?
23:52 Whiteknight yes
23:53 Whiteknight I'll work on docs in the coming week
23:53 allison sounds good
23:54 Whiteknight I have to look at compact_strings again. Everytime I try to read through it I go cross-eyed
23:58 payload joined #parrot

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

Parrot | source cross referenced