Camelia, the Perl 6 bug

IRC log for #parrot, 2010-08-28

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 kid51 cotto:  Suggestion: place it in t/tools/
00:01 kid51 It will fall into @library_tests which "are run unless --runcore-tests or --core-tests is present."
00:01 cotto Paul_the_Greek, go for it.  I'm wondering how negative we can get the counter.
00:02 Psyche^ joined #parrot
00:07 Patterner left #parrot
00:07 Psyche^ is now known as Patterner
00:11 hercynium left #parrot
00:11 Paul_the_Greek cotto:  Do you know if PMC attribute blocks are ever shared by multiple PMC headers?
00:14 hercynium joined #parrot
00:19 dalek parrot: r48698 | jkeenan++ | trunk (1 files):
00:19 dalek parrot: Per discussion on list (also see TT #677), move pgegrep to examples/tools/ and move related test to t/examples/tools/.
00:19 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48698/
00:20 cotto Paul_the_Greek, I wouldn't think so but there might be a weird case.
00:20 Paul_the_Greek If not, we could allocate the PMC header and attribute block together.
00:21 Paul_the_Greek We'd have to know the the attribute block wouldn't be replaced.
00:26 plobsing Paul_the_Greek: what about morph?
00:26 Paul_the_Greek Does it change one PMC into another type?
00:26 plobsing exactly
00:27 kid51 is now known as kid51_at_dinner
00:27 Paul_the_Greek So we add a promise_not_to_morph flag. When set, allocate header and attributes together.
00:27 Paul_the_Greek It would be in the vtable.
00:27 plobsing you could allocate the header and attributes together initially and keep the data pointer
00:27 Paul_the_Greek I presume most languages don't use morph.
00:28 plobsing it would still have good cache locality most of the time
00:28 Paul_the_Greek Right.
00:28 Paul_the_Greek And cut the number of allocations+frees in half.
00:32 plobsing most PMCs don't morph, but CallContext does. generally only deep magic has to do such things.
00:35 dalek parrot: r48699 | jkeenan++ | branches/tt677_toolsdirs (1 files):
00:35 dalek parrot: As in trunk, move pgegrep to examples/tools/ and move associated test file to t/examples/tools/.
00:35 Paul_the_Greek Perl allows it with rebless, right?
00:36 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48699/
00:37 plobsing maybe. you'd have to check with jnthn or pmichaud on how Rakudo intends to implement that sort of thing.
00:39 Paul_the_Greek What's the right venue for discussing this sort of thing? Tuesday #ps meeting or here?
00:43 plobsing Not sure. I'd go with here. But probably you can make what you want to do work in the presence of morph, now that you know about it.
00:45 Paul_the_Greek The trick is to coordinate this with gc massacre. No point in woking on gc_ms when it will be replaced by gc_ms2.
00:45 Paul_the_Greek I should talk to chromatic.
00:45 plobsing If you can't I'd try to get ahold of architect-y people to see if morph can be deprecated.
00:46 Paul_the_Greek I'm fairly sure from a conversation earlier today that Rakudo replaces PMC attribute blocks.
00:46 Paul_the_Greek We might want a global flag that says "promise not to replace PMC attributes."
00:47 plobsing why are you trying to reduce the gcables load? I thought the biggest problem with gc was that it was stack-blowingly recursive.
00:48 Paul_the_Greek I'm thinking about allocation/free time, not GC time.
00:48 Paul_the_Greek I suspect chromatic has reduced the stack requirements, but I'm not sure.
00:49 plobsing does it really cost that much to allocate? I thought it was just return and increment a pointer
00:49 Paul_the_Greek I'm more familiar with gc_ms, but it's pretty expensive to allocate a PMC.
00:50 Paul_the_Greek At least with my old-timer mindset.
00:50 plobsing benchmark plz
00:51 Paul_the_Greek Indeed, some benchmarking would be the first task. It might reveal that I'm worried about nothing.
00:52 Paul_the_Greek Someone suggested that a variant of one of the prime number benchmarks might be good.
00:53 plobsing if I'm not mistaken, pcc involves a lot of allocating. so anything with just a lot of recursion and simple integer math should have a lot (relatively) of gc over-head
00:54 Paul_the_Greek pcc?
00:54 purl Welcome to Perl Community College, where we, for free, and at your convenience, teach you all of an intro-CS curriculum, such as you should have learned in college or by simply reading on your own.  Please also visit the Perl Crisis Clinic, where we do all your job for you. or Parrot Calling Convention or Proof Carrying Code or http://en.wikipedia.org/wiki/Portable_C_Compiler
00:55 Paul_the_Greek Yes, that's the sort of benchmark. What is pcc?
00:58 plobsing parrot calling conventions
00:58 purl parrot calling conventions is probably my best bet. But I don't know if anyone's done tests yet.
00:59 Paul_the_Greek Hey, sometimes Purl is clever.
01:00 Paul_the_Greek On another subject: would it be helpful if I deal with some of the IMCC deprecations and bugs?
01:01 Administrator_ joined #parrot
01:01 Paul_the_Greek left #parrot
01:02 Administrator_ purl,messages
01:02 Administrator_ plobsing:  Sorry, got disconnected.
01:02 plobsing imcc destroyed another perfectly good developer :(
01:02 Administrator_ left #parrot
01:02 Administrator_ joined #parrot
01:02 mikehh All tests PASS (pre/post-config, make corevm/make coretest, test, fulltest) at r48699 - Ubuntu 10.04 amd64 (g++ with --optimize)
01:03 Administrator_ plobsing:  Sorry, I got disconnected.
01:03 Administrator_ left #parrot
01:03 plobsing heh. sure, have at those deprecations, Paul_the_Administrator.
01:03 Paul_the_Greek joined #parrot
01:04 plobsing sure, have at those deprecations, Paul_the_Administrator. or just poke me about them. I seem to be one of the only people working on IMCC these days.
01:04 plobsing (it's not that bad, I swear!)
01:05 mikehh plobsing: just don't walk in front of any busses
01:05 Paul_the_Greek I'd be happy to work on IMCC. I have a special place in my heart for assemblers.
01:06 Paul_the_Greek What's the story with PIRC?
01:06 jsut_ left #parrot
01:06 plobsing if and when anyone cares enough about getting a saner variant of imcc, we intend to switch it in
01:07 Paul_the_Greek Has it been dropped in favor of Pirate?
01:07 plobsing or wait until pirate is fast and somehow magically solves bootstrapping accross pbc deprecations
01:07 mikehh Paul_the_Greek: PIRC was started and seemed to be progressing well. but the main dev (kj/kjs) ran out of availability
01:08 Paul_the_Greek Are they all source compatible?
01:08 mikehh it seems we have too much of parrot with low bus numbers
01:09 Paul_the_Greek Parsing "low bus numbers" ... nope. What it means?
01:09 mikehh what happens when developers get taken out by a bus
01:10 plobsing SIGBUS!
01:10 mikehh low bus number, not enough depth
01:10 Paul_the_Greek Ah, high bus danger.
01:10 Paul_the_Greek Got it.
01:11 Paul_the_Greek So if a guy wanted to work on "the assembler," where would he put his energy?
01:12 mikehh PIRC was to be a replacement of IMCC, pir/PIRATE is another option, but slow at the moment
01:12 plobsing Paul_the_Greek: if you have plenty of tuits, I'd work on swapping in pirc
01:12 plobsing you'd get plenty of kudos
01:14 plobsing if you want to work on the optimizer, I have been toying with the idea of post-processing PBC files to null-out dead registers as a stand in for a decent register allocator.
01:14 Paul_the_Greek After I work on a few more tickets and familiarize myself with the system, I'll think about looking at PIRC.
01:15 Paul_the_Greek The IMCC optimizer?
01:15 mikehh tcurtis's GSOC project was an optimizer, it looks quite good, not sure what is happening with it
01:15 plobsing imcc doesn't really have an optimizer anymore. people kept blaming it for things (some of which it actually did)
01:16 plobsing tcurtis's optimizer is at a PCT level. PCT is great and all, but shouldn't be the only way of running things on parrot.
01:17 Paul_the_Greek It almost sounds as if there is room for a fresh assembler project here.
01:17 Paul_the_Greek Then again, I suppose we might just end up with another unfinished one.
01:19 mikehh I think there are a lot of devs waiting to see what happens with Lorito
01:20 mikehh It would be nice to see PIRC completed
01:21 plobsing I'm not a big fan of parrot.exe containing a blessed assembler at all. But it seems most people are more comfortable with parrot.exe being able to run text files.
01:21 sorear let's add a text format which maps 1:1 to bytecode?
01:22 plobsing sorear: great idea. what happens when the internals of parrot change (eg: PBC_COMPAT bump)
01:22 plobsing ?
01:23 Paul_the_Greek Do all HLL compilers generate pir source that is then compiled by IMCC?
01:24 sorear atm yes
01:25 whiteknight eventually they should all generate PBC directly
01:26 sorear plobsing: that won't be an issue as long as we still have a PIR processor written in C somewhere
01:26 sorear I think PIRATE has a hacked version of PCT which generates PBC
01:26 Paul_the_Greek whiteknight:  Using some library of functions that Parrot provides? Not with their own code generators.
01:27 whiteknight Paul_the_Greek: using a library, yes. We've made some progress in that direction in recent months, but we still don't have a comprehensive solution
01:27 sorear parrot already provides such a library.  sort of.
01:27 plobsing sorear: that's not really what I'm getting at. If I'm not mistaken, at one point PIR mapped pretty well to parrot. Then things changed underneath and PIR became a kludge layer.
01:27 whiteknight is is possible to manually generate PBC from PIR code, bacek has a few examples of manually producing and executing bytecode
01:27 plobsing if a language maps 1:1 with PBC, it will change as PBC changes
01:27 whiteknight what we really need is a library with a nice API that does the dirty work internally
01:28 Paul_the_Greek Why not simply organize PIRC so that the HLL compiler can give it PAST directly? Then all the back-end good stuff works just fine.
01:29 plobsing PIRC is in C (not the most convenient language for manipulating trees of PMCs).
01:30 Paul_the_Greek A mere matter of a good library, no?
01:30 plobsing maybe when we get lorito, we can manipulate such trees in core parrot using a better HLL
01:31 plobsing Paul_the_Greek: if you write it, I'm sure they'll come.
01:31 Paul_the_Greek Writing the assembler in something that has to be assembled produces bootstrapping issues.
01:32 cotto I'm hoping that moving Parrot to git helps lower the barrier to working on highly experimental stuff like Lorito so more people feel like they can play along.
01:32 Paul_the_Greek There is much to ponder.
01:33 Paul_the_Greek I'm not sure how much it will help.
01:33 sorear Paul_the_Greek: PAST is a third-party thing; for political reasons we can't make it the official way to interact with Parrot
01:34 sorear compilers/ is our contrib/
01:34 Paul_the_Greek The problem is knowing where to spend energy. For example, I spent maybe 8 hours studying gc_ms. But then I discovered gs_ms2.
01:34 sorear (also, I think you mean POST)
01:34 Paul_the_Greek The HLL compiler front end wants to give PIRC an abstract syntax tree, no?
01:35 Paul_the_Greek There's poliics involved?
01:36 dngor_ joined #parrot
01:39 dngor left #parrot
01:39 Paul_the_Greek Looking for description of POST ...
01:40 plobsing Paul_the_Greek: PAST and POST serve more or less at the pleasure of pmichaud and the rakudo team. They aren't owned by parrot and could be changed at any time (although likely not).
01:41 Paul_the_Greek Oh. Does IMCC or PIRC parse into PAST/POST or something else?
01:42 plobsing neither use PCT (of which PAST and POST are part). they parse internally and either emit PBC, or generate packfiles (in-memory PBC representation)
01:42 bluescreen joined #parrot
01:44 Paul_the_Greek If I build an HLL that uses PCT, does my compiler ultimately emit PIR, which then gets compiled by IMCC?
01:44 Paul_the_Greek Or does PCT have its own final code generator?
01:45 plobsing for the moment, yes. there are plans afoot to make PCT generate PBC directly.
01:45 plobsing making use of the Packfile* PMCs
01:45 Paul_the_Greek Duplicating all the optimization phases?
01:45 plobsing what optimization phases?
01:46 Paul_the_Greek The ones that IMCC/PIRC currently do or eventually will do.
01:46 plobsing currently IMCC's optimizer is disused. PIRC apparently has some whizbang optimizations, but is itself disused.
01:46 theory left #parrot
01:46 Paul_the_Greek In other words: Everything after the parser+intermediate code should only ever be written once.
01:47 plobsing ultimately, any optimization that PIRC or IMCC can do should be able to be done to a finished PBC.
01:47 theory joined #parrot
01:48 Paul_the_Greek But all possible optimizations involve phases in between parsing and code generation. No reason to duplicate those optimizations.
01:49 plobsing but PIR code maps pretty close to PBC. there should be no information lost when compiling from PIR to PBC.
01:49 whiteknight PAST/POST live in the Parrot repo. They aren't developed externally
01:50 plobsing Oh? I thought they were part of rakudo's nqp bootstrap.
01:51 Paul_the_Greek I'm thinking of optimizations between parsing and PIR generation. Does each HLL compiler worry about those?
01:51 jsut joined #parrot
01:52 plobsing Paul_the_Greek: some optimizations are allowed or dissallowed explicitly by the language spec. Backtraces conflict with TCO for example.
01:53 plobsing so they already have to worry about that.
01:54 Paul_the_Greek I would think there are a host of pre-PIR-generation optimizations that could be provided by a common compiler middle.
01:54 Paul_the_Greek Is there objection to generating a source IR like PIR? Do people want a binary IR?
01:54 plobsing that's what PCT and tcurtis's gsoc provide
01:55 Paul_the_Greek Ah, got it.
01:57 plobsing requiring HLLs to compile down to PIR makes piecewise compilation more difficult (if not impossible). Whole-file compilation can get unacceptably expensive on bigger files.
01:57 Paul_the_Greek So the idea is that optimizations after PIR generation should be done by the PIR assembler.
01:59 Paul_the_Greek plobsing:  Why is that? A typical compiler generates a tuple IR that has a bunch of optimizations applied to it.
01:59 plobsing a tuple IR?
02:00 Paul_the_Greek A linear sequence of 3- or 4-tuples representing the program.
02:00 Paul_the_Greek Pretty much what PIR is.
02:01 Paul_the_Greek Some compilers never even bother with a tree.
02:01 plobsing the way we've done things so far, the pir compiler has done the optimization. I'm not sure it has to be (or should be) that way.
02:02 Paul_the_Greek Not all the optimizations, but I would think doing the final set of optimizations makes sense, so as not to duplicate them in every compiler.
02:02 Paul_the_Greek Plus you guys are the experts in the interpreter, which is the ultimate target.
02:03 Paul_the_Greek Perhaps it's difficult to break out a final set of optimizations from the rest of the optimizations.
02:03 plobsing I think some PBC-level universall-ish optimizations would be great if applicable after the PIR compiler (hotspot-like optimizing runtimes become possible)
02:04 Paul_the_Greek For example, register allocation. It's usually done pretty much at the end. Why not do it in the PIR assembler?
02:04 plobsing why not do it after the PIR assembler?
02:04 Paul_the_Greek Peephole optimizations.
02:04 plobsing maybe only on subs where it actually matters
02:04 Paul_the_Greek Why make the distinction "after the assembler"?
02:04 plobsing do one thing well
02:05 Paul_the_Greek Not sure I follow. Does someone want to generate PBC without going through the assembler?
02:05 sorear whiteknight: That's going to change soon, IIUC
02:06 whiteknight sorear: what do you mean?
02:06 sorear pmichaud wants to pull most of PCT out into the nqp-rx repository
02:06 sorear and rewrite it in not-pir
02:07 * cotto is afk
02:07 plobsing Paul_the_Greek: part of what people dislike about IMCC is that it is tightly coupled in odd ways. It uses the same datastructures to represent the parse as it does in optimization passes. As it turns out, this isn't such a great idea.
02:09 Paul_the_Greek Yes, most compilers have a sequence of IRs through their phases. But everything is still part of the compiler.
02:09 sorear IMCC also has more than a little tight coupling to other parts of parrot
02:09 plobsing worse, parts of parrot have tight coupling to IMCC
02:09 Paul_the_Greek The only reason I can think of to pull out the optimizations is because people want to use them a la carte.
02:09 sorear last time someone tried to fix the garbage collector, IMCC started randomly crashing
02:09 Paul_the_Greek Oops.
02:13 Paul_the_Greek Well, I'm exhausted from a day of sititng on the beach. Back home tomorrow. Take care, everyone.
02:13 Paul_the_Greek left #parrot
02:15 dalek parrot: r48700 | chromatic++ | trunk/src/packfile.c:
02:16 dalek parrot: [PBC] Fixed a memory leak in PackFile op mapping.
02:16 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48700/
02:16 dalek parrot: r48701 | chromatic++ | trunk/src/pmc/class.pmc:
02:16 dalek parrot: [PMC] Set destroy flag to plug Class memory leak.
02:16 dalek parrot: Calling Class's destroy() destroys the isa_hash allocated for every class.
02:16 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48701/
02:16 dalek parrot: r48702 | chromatic++ | trunk/src/packfile.c:
02:16 dalek parrot: [PBC] Plugged Annotations memory leak.
02:16 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48702/
02:16 dalek parrot: r48703 | chromatic++ | trunk/src/runcore/main.c:
02:16 dalek parrot: [runcore] Plugged op_libs memory leak.
02:16 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48703/
02:16 dalek parrot: r48704 | chromatic++ | trunk/src/pmc/parrotlibrary.pmc:
02:16 dalek parrot: [PMC] Cleaned up ParrotLibrary destroy().
02:16 dalek parrot: Also removed some unused POD sections.
02:16 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48704/
02:16 dalek parrot: r48705 | chromatic++ | trunk/src/dynext.c:
02:16 dalek parrot: [dynext] Tidied code; no functional changes.
02:16 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48705/
02:22 plobsing msg chromatic: I don't think the memory leak addressed in r48700 should be leaking in the first place. That memory should be static, one-per-oplib; not one-per-packfile.
02:22 purl Message for chromatic stored.
02:35 janus left #parrot
02:48 kid51_at_dinner is now known as kid51
02:50 dalek parrot: r48706 | jkeenan++ | failed to fetch changeset:
02:50 dalek parrot: Merge tt677_toolsdirs branch into trunk.  Restrict tools/build/ to programs called by 'make all'.  Eliminate tools/util/.  Create tools/release/.  Move other programs to tools/dev/.  See:  �http://trac.parrot.org/parrot/ticket/677.
02:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48706/
02:50 dalek parrot: r48707 | jkeenan++ | branches/tt677_toolsdirs:
02:50 dalek parrot: Branch has been merged into trunk and is no longer needed at HEAD.
02:50 purl i already had it that way, dalek.
02:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48707/
02:50 dalek parrot: r48708 | jkeenan++ | trunk/tools/util:
02:50 dalek parrot: tools/util/ is now empty; delete from repository.
02:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48708/
02:56 theory left #parrot
03:05 kid51 left #parrot
03:06 whiteknight left #parrot
03:13 janus joined #parrot
03:19 plobsing msg chromatic nevermind, I was making the same mistake I made when I wrote that code
03:19 purl Message for chromatic stored.
03:32 tcurtis joined #parrot
04:18 jsut_ joined #parrot
04:19 hercynium left #parrot
04:23 jsut left #parrot
04:33 preflex left #parrot
04:37 plobsing left #parrot
04:38 preflex joined #parrot
05:00 patspam left #parrot
05:03 bluescreen left #parrot
05:18 cognominal left #parrot
05:18 plobsing joined #parrot
05:29 cognominal joined #parrot
05:29 dngor_ is now known as dngor
05:30 plobsing left #parrot
05:30 plobsing joined #parrot
05:52 plobsing left #parrot
06:33 dalek left #parrot
06:34 dalek joined #parrot
06:48 fperrad joined #parrot
07:16 cotto 206*43
07:16 purl 8858
07:16 cotto 206*43/60
07:16 purl 147.633333333333
07:16 cotto 206*43/(60*24)
07:16 purl 6.15138888888889
07:21 cotto msg bacek Make sure aloha can do math.
07:21 purl Message for bacek stored.
07:22 moritz aloha: 35*2
07:22 purl 70
07:23 cotto purl_ignore_this_it_isnt_for_you: 2+3
07:23 purl 5
07:59 moritz Infinoid: dalek currently takes the 'login' field from the github API. However that's empty if the email address doesn't match the one that's registered with github... could you make it fall back to the name field in this case?
08:19 tcurtis left #parrot
08:34 jsut joined #parrot
08:39 jsut_ left #parrot
09:00 aloha left #parrot
09:00 aloha joined #parrot
09:02 bacek aloha: 35*2
09:02 purl 70
09:02 aloha bacek: 70
09:11 robin-gvx joined #parrot
09:34 lucian joined #parrot
09:40 bacek aloha, +1
09:40 bacek left #parrot
09:40 bacek joined #parrot
09:40 aloha bacek: Coke asked me to tell you that aloha only tells on join, not on "I said something."
09:40 aloha bacek: Coke asked me to tell you that aloha only tells on join, not on "I said something."
09:40 aloha bacek: Coke asked me to tell you to allow a trailing ? on karma requests.
09:41 dalek parrot: r48709 | mikehh++ | trunk/src/packfile.c:
09:41 dalek parrot: add cast to get g++ to build
09:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48709/
09:44 fperrad_ joined #parrot
09:46 dalek left #parrot
09:46 dalek joined #parrot
09:46 Infinoid moritz: try that
09:46 moritz Infinoid: will do, as soon as I have a good testcase :-)
09:47 fperrad left #parrot
09:47 fperrad_ is now known as fperrad
09:48 Infinoid moritz: my test case: change your email in your .gitconfig to something else, then commit a whitespace change
09:54 moritz Infinoid: done
09:57 dalek rakudo: a3d4be0 | moritz++ | src/core/Range.pm:
09:57 dalek rakudo: delete trailing blanks in Range.pm
09:57 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​3d4be0e6d831f8d17b611f8c0953806bda15930
09:58 moritz Infinoid: seems to have worked
09:59 Infinoid cool.  other symptom is that for that commit link, the author's name field isn't a link to your account
10:00 Infinoid that means it didn't map it back
10:00 moritz Infinoid++
10:03 Infinoid and it was able to change "Moritz Lenz" to "moritz" because of your A: entry in parrot's CREDITS file
10:03 moritz right
10:16 dalek TT #1758 created by nwellnhof++: Segfault caused by new dynop mapping code
10:16 dalek TT #1758: http://trac.parrot.org/parrot/ticket/1758
10:24 lucian left #parrot
10:27 dalek rakudo: a821f58 | moritz++ | src/Perl6/Actions.pm:
10:27 dalek rakudo: change FORBID_PIR from contextual to global; this makes it persist through multiple REPL lines
10:27 purl dalek: that doesn't look right
10:27 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​821f587479e91e0b640cc64d4e1b237f466ec10
10:47 janus left #parrot
11:00 whiteknight joined #parrot
11:07 dalek TT #1537 closed by bacek++: Continuations fail to revert all registers to the correct state
11:07 dalek TT #1537: http://trac.parrot.org/parrot/ticket/1537
11:24 janus joined #parrot
11:45 kid51 joined #parrot
11:53 dalek parrot: r48710 | bacek++ | trunk/src/pmc/filehandle.pmc:
11:53 dalek parrot: Try to read whole file in FileHandle.readall. Closes #1749
11:53 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48710/
11:55 aloha left #parrot
11:55 aloha joined #parrot
11:57 dalek TT #1749 closed by bacek++: readall method on open FileHandle is inefficient
11:57 dalek TT #1749: http://trac.parrot.org/parrot/ticket/1749
12:01 aloha left #parrot
12:01 aloha joined #parrot
12:02 bacek ~~
12:02 aloha bacek asked me to tell you blah
12:03 bacek msg bacek looks like it works
12:03 purl Message for bacek stored.
12:03 aloha OK. I'll deliver the message.
12:03 bacek ~~
12:03 aloha bacek asked me to tell you looks like it works
12:04 bacek msg Coke aloha now delivers messages on any event.
12:04 purl Message for coke stored.
12:04 aloha OK. I'll deliver the message.
12:04 bacek msg cotto ask aloha about 2*26 for answer
12:04 purl Message for cotto stored.
12:04 aloha OK. I'll deliver the message.
12:05 kid51 aloha 2*26?
12:05 aloha kid51: 52
12:05 kid51 aloha 2**26?
12:05 aloha kid51: 67108864
12:05 bacek meh...
12:32 dalek rakudo: 4ca5220 | moritz++ | src/Perl6/Grammar.pm:
12:32 dalek rakudo: forbid my $1
12:32 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​ca5220bdefc2e018242f2bb5ce49ae57b18b3f0
12:42 kid51 left #parrot
12:46 NotFound left #parrot
12:58 NotFound joined #parrot
13:07 nwellnhof joined #parrot
13:09 nwellnhof Hey, more than 20 tickets closed
13:15 Coke left #parrot
13:18 dalek parrot: r48711 | nwellnhof++ | trunk (7 files):
13:18 dalek parrot: Hash cleanup
13:18 dalek parrot: - Rename hash comparison functions to something less clash-prone
13:18 dalek parrot: - Make get_*_pmc static
13:18 dalek parrot: - Cleanup and fix [gs]et_*_keyed functions in Hash PMC
13:18 dalek parrot: - Fix other bugs in Hash PMC
13:18 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48711/
13:50 lucian joined #parrot
14:19 ruoso joined #parrot
14:30 plobsing joined #parrot
14:42 dalek parrot: r48712 | nwellnhof++ | trunk/src (2 files):
14:42 dalek parrot: codetest fixes
14:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48712/
15:03 Coke joined #parrot
15:04 theory joined #parrot
15:05 lucian left #parrot
16:04 patspam joined #parrot
16:17 theory left #parrot
16:22 robin-gvx left #parrot
16:26 robin-gvx joined #parrot
16:37 tcurtis joined #parrot
16:46 lucian joined #parrot
16:46 lucian left #parrot
17:19 nwellnhof left #parrot
17:33 Topic for #parrot is now Parrot 2.7.0 "Australian King" Released! | parrot.org Log:  irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | close 20 tickets (-2 to go), merge outstanding branches
17:39 plobsing left #parrot
17:59 theory joined #parrot
18:01 theory left #parrot
18:23 Coke left #parrot
18:27 moritz on r48709, rakudo works fine
18:27 moritz on r48712, 'use Test;' segfaults
18:30 moritz (amd64 linux)
18:38 autark joined #parrot
18:47 moritz also broken on r48711
19:07 moritz seems like r48710 is to blame
19:10 Coke joined #parrot
19:14 moritz indeed it is
19:16 * moritz opens track ticket with severity 'fatal'
19:17 dalek TT #1759 created by moritz++: r48710 makesmodule loading in Rakudo segfault
19:17 dalek TT #1759: http://trac.parrot.org/parrot/ticket/1759
19:26 kurahaupo joined #parrot
19:34 valya joined #parrot
19:37 kurahaupo left #parrot
19:39 valya left #parrot
19:40 robin-gvx left #parrot
20:01 dalek rakudo: d9aa575 | moritz++ | src/Perl6/Grammar.pm:
20:01 dalek rakudo: reset $*IN_DECL for regex bodies
20:01 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​9aa575119292737ecc7e63d22da2070f03defa1
20:11 kurahaupo joined #parrot
20:25 kurahaupo left #parrot
20:33 Paul_the_Greek joined #parrot
20:33 Paul_the_Greek Greetings, folks. Back home from the beach. I could have used another week.
20:41 fperrad_ joined #parrot
20:44 fperrad left #parrot
20:44 fperrad_ is now known as fperrad
20:54 ruoso left #parrot
20:57 Paul_the_Greek ping cotto
20:58 cotto pong
20:58 aloha bacek asked me to tell you ask aloha about 2*26 for answer
20:59 moritz aloha++
20:59 aloha moritz: Thanks!
20:59 moritz bacek++
21:00 moritz aloha-- # being spammy like purl
21:00 aloha moritz: Pbbbbtt!
21:00 * cotto prefers privmsg messages
21:00 moritz aloha: karma bacek
21:00 purl bacek has karma of 3227
21:00 aloha moritz: bacek has karma of 7.
21:00 cotto Paul_the_Greek, pong
21:00 fperrad left #parrot
21:00 Paul_the_Greek cotto: Howdy. I'm back home and ready to commit the find_lex removal after fixing the broken tests. Can I review committing with you?
21:01 cotto I'd be glad to help.
21:02 Paul_the_Greek So I have five files with changes for this patch. I presume I need to commit them all with one commit so the changeset makes sense?
21:03 cotto It's a good idea to keep commits as atomic as possible.
21:03 Paul_the_Greek Not sure what you mean. One commit for each file?
21:03 cotto If you introduce a bug, it'll make bisecting easier.
21:03 cotto one self-contained feature per patch, as much as possible
21:04 Paul_the_Greek So the files are: DEP.pod, var.ops (the change), and 3 test files. That would be "one feature," I think.
21:04 cotto Yes.
21:05 Paul_the_Greek If I commit all 5 files with one commit, does the changeset come out the way we want it?
21:05 cotto are you just updating the documentation or actually changing an op?
21:05 cotto yes
21:05 Paul_the_Greek This is the change to find_lex so it doesn't throw an exception. You found two tests that failed, which I missed and have now fixed.
21:06 Paul_the_Greek So it's a change to the op.
21:06 Paul_the_Greek Ticket: http://trac.parrot.org/parrot/ticket/1207
21:06 cotto ok.  You'll also need to run bootstrap-ops to update the generated ops files.
21:06 cotto (It's easy to forget)
21:07 ruoso joined #parrot
21:07 Paul_the_Greek Yes, I did that. Then I did make test. That repeated the two test failures you found. I fixed them. Now make test is good.
21:07 cotto ok
21:08 Paul_the_Greek But the new ops files aren't part of the changes, right?
21:08 AzureStone left #parrot
21:08 cotto new ops files?
21:08 AzureStone joined #parrot
21:08 Paul_the_Greek The files generated by make bootstrap-ops. Those aren't part of the source, so not part of the commit.
21:09 cotto They are part of the checked-in code.
21:10 Paul_the_Greek Oh. You mean I have to commit core_ops.c, too?
21:10 cotto It will be committed automatically when you run svn commit
21:10 Paul_the_Greek How does it know to do that?
21:11 Paul_the_Greek Oh wait ...
21:11 purl i guess wait ... is that one of his other silly conventions? placing a 'G' in front of any account that he thinks is global?
21:11 cotto can you nopaste the output from svn diff?
21:11 tcurtis left #parrot
21:11 Paul_the_Greek I don't want to commit everything I have here. I just want to commit the files for this one change.
21:11 cotto something like svn diff>var_ops.patch && perl tools/dev/nopaste.pl -t "var diff" var_ops.patch
21:12 cotto Ah.  Then you'll need to list the files explicitly, and src/ops/core_ops.c should be in that list
21:12 Paul_the_Greek You'll see all sorts of diffs that have nothing to do with this patch.
21:12 Paul_the_Greek Right, that was my plan.
21:12 Paul_the_Greek Why is core_ops.c part of the source? Why not just assume it's built when the system is built?
21:12 Paul_the_Greek Oh ...
21:13 Paul_the_Greek Because bootstrap_ops is not part of the basic build.
21:13 cotto exactly
21:13 cotto You need parrot to build core_ops.c, but you need core_ops.c to build parrot
21:14 Paul_the_Greek Now will people be screwed up by the fact that these files have CR/LF line endings?
21:14 cotto something has to be checked in to allow bootstrapping
21:15 cotto svn may be smart enough to take care of that.
21:15 Paul_the_Greek When I svn diff core_ops.c I get "svn: Inconsistent line ending style"
21:15 cotto give it a shot and we'll fix anything that needs to be fixed
21:15 Paul_the_Greek Okay. Now a stupid question about svn.
21:15 cotto go for it
21:15 Paul_the_Greek Hang on ...
21:15 * cotto hangs on
21:16 Paul_the_Greek I want to put the six file specs in a file and then append that file to the svn commit command line.
21:16 Paul_the_Greek How would you do that in a Unix shell?
21:17 Paul_the_Greek My lack of shell knowledge is showing here.
21:17 cotto specs?
21:17 purl Specs in stone break no bones, but touch them and I will hurt you.
21:17 cotto forget specs
21:17 purl cotto: I forgot specs
21:19 Paul_the_Greek Forget that question. All set with that.
21:19 purl Paul_the_Greek, I didn't have anything matching that question. all set with that
21:19 cotto wfm
21:20 Paul_the_Greek All right, I'm going to try this. This is like trying sky diving for the first time.
21:21 cotto You're almost certain not to be killed.
21:21 cotto just like skydiving
21:21 Paul_the_Greek Well, it worked for scuba diving in shark-infested waters, so here goes ...
21:22 cotto I'd love to do that sometime.
21:22 cotto depending on the shark
21:22 Paul_the_Greek Down in the Bahamas they bring a frozen blob of fish and suspend it in the water. Go sharkies!
21:22 Paul_the_Greek Okay, no editor defined. Let me fix that.
21:25 Paul_the_Greek It wants a password for 'Administrator'. I'm guessing it doesn't know who I am.
21:26 cotto You need to use the same u/p as your trac account
21:26 Paul_the_Greek Is there an svn command for setting those, or do I edit a file?
21:27 Paul_the_Greek I see no svn config or svn set.
21:27 cotto pass --username=your_name to svn when using svn commit
21:30 Paul_the_Greek svn: Server sent unexpected return value (403 Forbidden) in response to MKACTIVITY request
21:30 Paul_the_Greek I'm guessing I don't have commit privilege.
21:31 cotto I thought you did.
21:32 Paul_the_Greek It was to be given to three of us after the Tuesday meeting a few weeks ago.
21:32 cotto That's what I thought too.
21:32 cotto Coke, ping
21:34 Paul_the_Greek Shall I msg him?
21:35 cotto if he doesn't answer soon, sure
21:39 cotto did you put your usename in quotes?  The spaces might be throwing something off.
21:46 Paul_the_Greek Yes, I did.
21:47 Paul_the_Greek I'll msg Coke and ask for privs.
21:48 Paul_the_Greek msg Coke I tried to commit something today, but it appears I haven't been given commit privilege. Could you set that up?
21:48 purl Message for coke stored.
21:48 aloha OK. I'll deliver the message.
21:48 Paul_the_Greek I'll wait to hear from him. Thanks for all your help, cotto.
21:50 cotto sure
22:07 dngor left #parrot
22:16 Paul_the_Greek left #parrot
22:24 theory joined #parrot
22:43 davidfetter joined #parrot
22:44 davidfetter left #parrot
22:49 dngor joined #parrot
23:06 kid51 joined #parrot
23:15 darbelo joined #parrot

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

Parrot | source cross referenced