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