Camelia, the Perl 6 bug

IRC log for #parrot, 2012-04-18

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:01 benabik o/ #parrot, whiteknight
00:03 tadzik joined #parrot
00:09 whiteknight hello benabik
00:42 travis-ci joined #parrot
00:42 travis-ci [travis-ci] parrot/parrot#256 (master - a760dcf : Christoph Otto): The build was broken.
00:42 travis-ci [travis-ci] Change view : https://github.com/parrot/par​rot/compare/f6408f7...a760dcf
00:42 travis-ci [travis-ci] Build details : http://travis-ci.org/parrot/parrot/builds/1116836
00:42 travis-ci left #parrot
00:46 bacek_at_work cotto, it can wait until after release. Pretty much harmless branch
00:49 benabik travis error is VM powering down
00:53 whiteknight no dalek tonight
00:53 whiteknight poor guy must be tired
00:54 whiteknight well, parrotstore has sqlite3 bindings now
00:59 whiteknight these things are coming together much more quickly than I expected
01:06 whiteknight I wonder how I am supposed to handle multiple result sets in a sane way with sqlite3_exec
01:08 GeJ joined #parrot
01:26 cotto bacek_at_work, thanks
02:38 cotto is there a reason we haven't been updating pbc_compat for stable releases?
02:39 dalek joined #parrot
03:23 sorear_ joined #parrot
05:43 moritz cotto: it should be done after the release, IMHO
05:43 moritz (re kill_current_object)
05:52 cotto moritz, thanks
06:15 fperrad joined #parrot
06:36 dalek parrot: a09a954 | cotto++ | / (6 files):
06:36 dalek parrot: update to 4.3.0
06:36 dalek parrot: review: https://github.com/parrot/parrot/commit/a09a954ca8
06:36 dalek parrot: f061523 | cotto++ | tools/release/release.json:
06:36 dalek parrot: add release.json
06:36 dalek parrot: review: https://github.com/parrot/parrot/commit/f0615230a6
06:39 Topic for #parrot is now Parrot 4.3.0 "In Which..." | http://parrot.org | Log: http://irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
06:54 dalek parrot: 1197bf4 | cotto++ | docs/project/release_manager_guide.pod:
06:54 dalek parrot: one last change for 4.3.0
06:54 dalek parrot: review: https://github.com/parrot/parrot/commit/1197bf43de
06:55 cotto does kill_current_object need any rakudo changes?
06:57 cotto I still need to update docs.parrot.org, but I'm fried.  If nobody else jumps on it, I'll do it tomorrow.
06:59 travis-ci joined #parrot
06:59 travis-ci [travis-ci] parrot/parrot#257 (master - f061523 : Christoph Otto): The build was fixed.
06:59 travis-ci [travis-ci] Change view : https://github.com/parrot/par​rot/compare/a760dcf...f061523
06:59 travis-ci [travis-ci] Build details : http://travis-ci.org/parrot/parrot/builds/1117997
06:59 travis-ci left #parrot
07:10 fperrad cotto, have you pushed the release tag ?
07:26 dalek nqp: 1b1106c | moritz++ | tools/build/PARROT_REVISION:
07:26 dalek nqp: bump parrot revision to 4.3.0
07:26 dalek nqp: review: https://github.com/perl6/nqp/commit/1b1106c242
07:27 moritz seems to be missing
09:16 lucian joined #parrot
10:23 lucian joined #parrot
11:51 brrt joined #parrot
12:08 bluescreen joined #parrot
12:59 PacoAir joined #parrot
13:00 brrt joined #parrot
13:16 awwaiid joined #parrot
13:17 Coke are there treading tests in "make test" in the threads branch?
13:18 moritz Andy Dougherty mentioned some in his last email to parrot-dev
13:18 moritz no, that was t/pmc/task.t
14:08 lateau joined #parrot
14:10 Coke (if there are no threading tests, then I didn't really test threads, which is my concern.)
14:10 Coke ah, one test. k.
14:20 hercynium joined #parrot
14:26 jashwanth joined #parrot
14:48 benabik joined #parrot
14:54 dmalcolm joined #parrot
15:04 whiteknight joined #parrot
15:05 whiteknight good morning, #parrot
15:08 benabik o/ whiteknight, #parrot
15:10 whiteknight hello benabik, how are you doing today?
15:10 benabik Congested, but otherwise well.  Think I'm going to work on PACT design a little today.
15:12 whiteknight awesome
15:13 benabik Did cotto not finish the release yesterday?  I saw the release note, but we appear to lack a RELEASE_4_3_0 tag.
15:13 whiteknight the network here at work is crapped up today, so work is proceeding at a very poor rate
15:13 benabik Ug, networking problems.
15:14 whiteknight srsly. The db server is down so we can't do any testing, the source control is down, tickets are down, etc
15:15 benabik Yay free time?
15:15 whiteknight almost
15:28 cotto benabik, forgot to push the tag
15:28 cotto benabik++
15:29 benabik cotto: happens
16:16 dukeleto joined #parrot
16:16 dukeleto ~~
16:30 hercynium_ joined #parrot
16:36 alvis cotto: ping
16:36 cotto alvis: pong
16:37 alvis cotto: hey. do you mind if I run tools/release/parrot_github_release.pl?
16:37 cotto alvis: go for it.
16:37 alvis cotto: that way I can watch it a'bit and fix anything that may break?
16:37 cotto is it in the release manager guide?
16:37 alvis cotto: yep. Section X.
16:37 cotto d'oh
16:38 cotto I also need to update docs.parrot.org
16:38 cotto now's a good time for that
16:39 alvis cotto: 'k.
16:46 dukeleto cotto++
16:46 fperrad joined #parrot
16:46 lucian joined #parrot
16:49 cotto also updated 4.2.0 docs while I was in there
16:49 cotto that process gets less painful every time I do it
16:50 cotto It's really nice not to have to rebootstrap.
16:51 PacoAir joined #parrot
17:16 benabik Hm.  Does PACT not report to dalek?
17:16 arnsholt joined #parrot
17:17 benabik Oh.  I think it did, but it probably never got updated when dalek moved.
17:17 benabik Someone with admin access to the Parrot org should check the hooks.
17:18 benabik (please)
17:20 * lucian waves
17:20 benabik o/ lucian
17:20 lucian have i been grossly neglecting my GSoC duties?
17:20 benabik Do you have GSoC duties?
17:22 dalek PACT: d207a53 | benabik++ | src/disasm.winxed:
17:22 dalek PACT: disasm: Use get_repr to print Keys
17:22 dalek PACT: review: https://github.com/parrot/PACT/commit/d207a53735
17:22 dalek PACT: 509afea | benabik++ | / (4 files):
17:22 dalek PACT: Typo/whitespace fixes
17:22 dalek PACT: review: https://github.com/parrot/PACT/commit/509afea23e
17:22 dalek PACT: 450b7b3 | benabik++ | docs/compiling.mkd:
17:22 dalek PACT: Additional thoughts from tree-optimizer
17:22 dalek PACT: review: https://github.com/parrot/PACT/commit/450b7b3375
17:22 cotto all better
17:23 benabik cotto++
17:23 cotto benabik++
17:24 dalek PACT: ee35404 | benabik++ | / (2 files):
17:24 dalek PACT: Death to POST, long live CFGs
17:24 dalek PACT:
17:24 dalek PACT: Most of the operations currently done on POST can be sanely handled by
17:24 dalek PACT: either a higher-level AST or on the CFGs.  I've also become more
17:24 dalek PACT: convinced about the need of CFGs for reasonable optimization and useful
17:24 dalek PACT: algorithms (like advanced register allocation).
17:24 dalek PACT:
17:24 dalek PACT: So this commit removes the idea of an opcode tree in favor of control
17:24 dalek PACT: flow graphs.  It may be that the AST layer may gain specialty stages or
17:24 dalek PACT: nodes to deal with more low-level operations, but I no longer see a
17:24 dalek PACT: need to deal with it as a completely separate layer.
17:24 dalek PACT: review: https://github.com/parrot/PACT/commit/ee354042c2
17:24 dalek PACT: 262c35d | benabik++ | TODO.mkd:
17:24 dalek PACT: Update TODO with recent news
17:24 dalek PACT:
17:24 dalek PACT: Mention the GSoC proposal and the src/packfile directories, since
17:24 dalek PACT: they're rather relevant to anyone wanting to work on the project.
17:24 dalek PACT: review: https://github.com/parrot/PACT/commit/262c35d765
17:24 cotto I love commit novels.
17:25 benabik Commits need to explain the _why_ of a change.  :-)
17:25 cotto This'll be a great gsoc.
17:26 benabik Sadly, most of what I just updated has more to do with what I can do _after_ my current GSoC proposal.  :-/
17:27 lucian_ joined #parrot
17:31 dalek parrot: 5653919 | alvis++ | tools/release/parrot_github_release.pl:
17:31 dalek parrot: Fixed 'git push' command to 'parrot-docsx' repo.
17:31 dalek parrot: review: https://github.com/parrot/parrot/commit/5653919cbb
17:31 dalek parrot: 468f547 | alvis++ | tools/release/parrot_github_release.pl:
17:31 dalek parrot: Trying to get the push to 'parrot-docsx' correct.
17:31 dalek parrot: review: https://github.com/parrot/parrot/commit/468f54777a
17:31 dalek parrot: 5f6f791 | alvis++ | tools/release/parrot_github_release.pl:
17:31 dalek parrot: Minor fix: Failed to 'chomp' the 'VERSION' on input.
17:31 dalek parrot: review: https://github.com/parrot/parrot/commit/5f6f791124
17:31 alvis ok, parrot.github.com is done.
17:31 cotto alvis++
17:31 alvis cotto: thanks for letting me tweak that script. :)
17:34 alvis cotto: just so you know: i do plan to get back on parrotbug; maybe, even this weekend. the shiny new baby's just been ... a handful.
17:34 cotto alvis: no doubt
17:34 cotto osuosl still haven't upgrade our drupal instance
17:34 cotto not sure what's up with that
17:36 atrodo alvis> Shiny? Might want to return it, sounds like someone switched your baby with a robot.
17:37 alvis cotto: 'k. well, i'll let you know when i get to stopping point.
17:37 hercynium_ joined #parrot
17:38 alvis atrodo: ha! i wish. maybe there would be so many different fluids, leaking outta her! :)
17:38 dalek PACT: c8a35b0 | benabik++ | / (5 files):
17:38 dalek PACT: Use more obvious header formatting
17:38 dalek PACT:
17:38 dalek PACT: The # and ## can get lost when skimming the file, and the = and -
17:38 dalek PACT: underlines are far more obvious for the more important headers.
17:38 dalek PACT: review: https://github.com/parrot/PACT/commit/c8a35b089e
17:38 atrodo alvis> Ah yes, the new baby fluids.  I remember those days.  It's amazing what colors those kids can create when they're new
17:39 benabik Things to look forward to...  :-/
17:39 atrodo benabik> Don't worry, you'll forget them quickly.  Thats why people have more then one
17:39 hercynium__ joined #parrot
17:51 whiteknight joined #parrot
18:16 lucian__ joined #parrot
18:20 contingencyplan joined #parrot
18:36 benabik Huh.  find_lex just uses {get,set}_pmc_keyed_* for lexicals.  I wonder how hard it would be to replace a sub's lexpad with a hash.  (Or perhaps a hash per type.)
18:37 * benabik is pondering REPLs.
18:38 whiteknight benabik: good question
18:39 benabik Alternatively, a "context" hash could be passed into the evaluated code and the compiler could just emit the appropriate code to retrieve and store to it.  But that seems to move the distribution of work in the wrong way.
18:40 moritz you generally don't want separate code paths like that in a sufficiently complex compiler
18:40 benabik Right.
18:41 benabik There will already have to be some special casing (like defaulting all variables to be lexicals), but completely unique generation paths are probably to be avoided.
18:45 whiteknight You do raise a good point, there's no reason why the repl needs to generate exactly the same bytecode as would be generated for a normal .pbc file
18:45 whiteknight Rosella.Template does exactly that, it compiles the code down and you pass it in a context object
18:46 benabik Basically, yes.  However, if it's simple to (ab)use the lexical system for it, that's probably preferable to requiring the compiler to generate completely unique code for the REPL.
18:50 benabik I'm fairly okay with hand-waving at this point.  Actually implementing this stuff is in the mid to long term.  I'm just trying to get my ideas straight so I can write down what the concerns are now.
18:51 whiteknight in reality, the code will look up the lexpad in the current context. And whatever the Context says is the lexpad, that's the lexpad
18:52 whiteknight so if you tell the Context to use something different, it will do that and will be transparent to the code
19:02 whiteknight there are a lot of benefits to having a context which is a normal object
19:03 whiteknight As opposed to, say, a C stack frame where if you touch it OMG WHAT ARE YOU DOING STOP DOING IT
19:03 benabik Hah
19:11 mdupont joined #parrot
19:14 nine Coke: there's also t/src/threads.t though all in all I'm absolutely not satisfied with thread tests. But it's kinda hard to come up with tests which do not take lots of time to run but still exercise the interesting parts of the code, i.e. the GC
19:16 rich joined #parrot
19:16 rich left #parrot
19:20 brambles joined #parrot
19:21 whiteknight nine: we can have tests that take a while to run, especially if we don't run them all the time
19:21 whiteknight we have a folder for benchmark tests or something like that, which take a while
19:34 nine whiteknight: good to know :)
19:39 benabik set_returns and get_results appear to be mostly identical to set_args and get_params.  Am I missing something?
19:39 benabik So handling return values is just as complex as handling parameters.
19:39 moritz no; returning and calling are basically the same operation in CPS
19:40 moritz (no to "missing something")
19:40 benabik moritz: I'm very used to CPS, but Parrot doesn't always follow it.
19:43 benabik If it was pure CPS, I'd expect to use set_args/get_params both ways, so I wasn't quite sure what the difference was with set_returns/get_results.
19:48 whiteknight benabik: the difference is a small optimization, a return reuses the same CallContext, instead of creating a new one
19:49 whiteknight Internally, they use the same exact API routines for passing parameters
19:50 benabik whiteknight: Is there a difference between get_results and get_params then?
19:50 whiteknight The differences can go away entirely if we change those ops to take an explicit ctx argument instead of implicitly searching for one
19:50 whiteknight benabik: I don't think so. If there is, it's cosmetic
19:51 whiteknight oh wait, yes. The get_params op searches in the current context, the get_results one uses the return context from the call
19:51 whiteknight again, the differences go away if we use less magic
19:51 benabik Fair enough.
19:52 benabik I wonder if it's worthwhile to reduce the magic in the current opcodes a step or two instead of just waiting for M0 killing all magic.
19:54 benabik class &
19:54 cotto benabik: definitely
19:54 cotto the more magic gets reduced now, the less we have to reduce it later
19:55 whiteknight I had a branch somewhere for adding in a new batch of pcc-related opcodes. I can't remember if that got merged
19:56 whiteknight Updating get_params and friends should be pretty easy, since people don't use them directly. IMCC outputs those automatically for 'foo'() syntax
19:56 whiteknight so you can update the opcodes, update IMCC and maybe update a handful of PASM tests
19:58 Coke sounds vaguely promising.
19:59 whiteknight I think we're going to need one or two more opcodes to fetch the returns context, but those would be trivial to write
20:00 NotFound We can also add ops and pir syntax without replacing the existing one immediately.
20:00 NotFound Then we can change code generators to easily test the approach.
20:02 whiteknight yes, we definitely can do that
20:02 whiteknight I am planning to use Winxed as a guinea pig for some of my proposed PCC changes
20:02 whiteknight If it continues working, and maybe even shows some performance improvements, we can call it a win
20:03 NotFound In fact, I think we don't even need pir syntax. Just an improved get_set params and the existing invoke ops may be enough.
20:04 NotFound Changing the winxed code generation for that is easy.
20:13 brrt joined #parrot
20:20 perlite joined #parrot
20:54 alester joined #parrot
20:57 d4l3k_ joined #parrot
21:00 dalek nqp: 769b277 | (Arne Skjærholt)++ | src/6model/reprs/CArray.c:
21:00 dalek nqp: Fix off-by-one bug in CArray.c.
21:00 dalek nqp: review: https://github.com/perl6/nqp/commit/769b2773e8
21:02 tadzik joined #parrot
21:02 pmichaud joined #parrot
21:02 PerlJam joined #parrot
21:02 Coke joined #parrot
21:07 Util joined #parrot
21:09 dalek nqp/cstruct-work: 3a23406 | jnthn++ | src/6model/reprs/CStruct.c:
21:09 dalek nqp/cstruct-work: Don't try to allocate 0 bytes in CStruct REPR.
21:09 dalek nqp/cstruct-work: review: https://github.com/perl6/nqp/commit/3a23406005
21:09 dalek nqp/cstruct-work: 1b1106c | moritz++ | tools/build/PARROT_REVISION:
21:09 dalek nqp/cstruct-work: bump parrot revision to 4.3.0
21:09 dalek nqp/cstruct-work: review: https://github.com/perl6/nqp/commit/1b1106c242
21:09 dalek nqp/cstruct-work: 769b277 | (Arne Skjærholt)++ | src/6model/reprs/CArray.c:
21:09 dalek nqp/cstruct-work: Fix off-by-one bug in CArray.c.
21:09 dalek nqp/cstruct-work: review: https://github.com/perl6/nqp/commit/769b2773e8
21:09 dalek nqp/cstruct-work: b85e904 | (Arne Skjærholt)++ | / (3 files):
21:09 dalek nqp/cstruct-work: Merge branch 'master' into cstruct-work
21:09 dalek nqp/cstruct-work: review: https://github.com/perl6/nqp/commit/b85e9046e2
21:09 dalek nqp/cstruct-work: 682e311 | (Arne Skjærholt)++ | src/6model/reprs/CStruct.c:
21:09 dalek nqp/cstruct-work: Implement setting of CArray members in CStructs.
21:09 dalek nqp/cstruct-work:
21:09 dalek nqp/cstruct-work: Confirmed working in Perl 6-land, C-land working or breakage to be determined.
21:09 dalek nqp/cstruct-work: review: https://github.com/perl6/nqp/commit/682e311bdc
21:26 brrt1 joined #parrot
22:03 brrt1 left #parrot
22:51 whiteknight joined #parrot
22:51 whiteknight good evening, #parrot
23:13 dalek ParrotStore: 0e8b302 | Whiteknight++ | / (36 files):
23:13 dalek ParrotStore: Move most of the source code into a new src/ folder, to prevent top-level directory clutter
23:13 dalek ParrotStore: review: https://github.com/Whiteknight​/ParrotStore/commit/0e8b302ee1
23:13 dalek ParrotStore: cfc3313 | Whiteknight++ | Makefile:
23:13 dalek ParrotStore: [Memcached] Don't get fancy with memcached dependencies in the makefile. Just build it.
23:13 dalek ParrotStore: review: https://github.com/Whiteknight​/ParrotStore/commit/cfc3313adc
23:23 awwaiid joined #parrot
23:54 whiteknight I cannot figure out how parrot-nqp's control flow is supposed to work
23:55 whiteknight because I've got an INIT {} block here that isn't executing, and I can't figure out how it is supposed to work
23:59 awwaiid joined #parrot

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

Parrot | source cross referenced