Camelia, the Perl 6 bug

IRC log for #parrot, 2012-04-30

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:15 nbrown cotto: it would be a good idea for mmaping, but I don't think it would eliminate the special case in the deref op
00:19 nbrown cotto: the special case is there to allow us to write "deref S0, CONSTS, S0" and have it do the right thing
00:27 cotto seems I got back at just the right time
00:27 nbrown nice
00:29 cotto I definitely want to play with it and see how far it can go.  Faster bytecode loading is generally a good thing, provided we're not making any harmful tradeoffs to achieve it.
00:29 nbrown ok, I think it would just require us to change how we use m0 code to access the constants
00:30 nbrown My comment was about how to remove the special case
00:31 nbrown your suggestion should have no effect on our current tests, just the implementations
00:31 cotto that sounds right
00:32 nbrown I'll think about how to remove the special case
00:32 cotto that'd be good.  M0 should minimize special cases.
00:33 nbrown I agree. I was wondering if the reference to a load_const op in the spec was the way to remove that special case
00:34 cotto no such luck
00:34 nbrown or, more accurately, someone's earlier idea about a way to remove that special case
00:34 nbrown no such luck?
00:35 cotto I meant that load_const wasn't a way around the deref special case, just a leftover
00:36 nbrown oh ok, I'll try to figure out another way without introducing a special case op
00:37 cotto a special case op is an option if there's nothing better
00:38 nbrown right, but it should be the last option or optimization choice
00:38 nbrown the perl does without a special case, so c should be able to as well
00:46 whiteknight joined #parrot
00:50 whiteknight I don't know why I'm so stupid. Every 6 months I think to myself "well, the last ubuntu upgrade went terribly, but this time must be better"
00:56 cotto delusion of reprieve
00:57 cotto which actually reminds me that I need to put off upgrading
00:57 cotto done
01:01 whiteknight I've done this upgrade three times now. Two VMs updated with no issues whatsoever
01:01 whiteknight so I decide it's safe to do on my laptop and....fail
01:12 nbrown cotto: I think if we can make the CONSTS register in the callframe work correctly, the special case in the deref_op can go away
01:13 nbrown cotto: a lot of the special registers and the interpreter data need to be implemented
01:15 cotto nbrown, you mean in the C implementation or in both?
01:16 nbrown C implementation
01:16 nbrown the perl one works correctly without special cases because the CONSTS register works
01:16 nbrown the perl deref op that is
01:19 cotto I'm having trouble remembering why the argv test isn't finished.  It seems like there's nothing there that needs new ops.
01:20 nbrown I made the implementation pass the test but the test is wrong
01:21 nbrown kitten should be the second argument, not the first
01:21 cotto yes
01:21 nbrown so I think I cheated by removing the first argument in the C implementation
01:21 cotto does it pass because it's TODO'd or does it actually pass?
01:22 nbrown c passes because i cheated and removed the first argument
01:22 nbrown the test needs to be rewritten to test the second argument
01:23 nbrown look at lines 42-43 of m0_interp.c
01:24 nbrown we need to remove the - 1 and change the index to 0
01:24 cotto got it
01:24 nbrown i was being dumb when i did it and cheated, but the test is wrong too
01:27 cotto I'm still getting a segfault running that test.
01:28 cotto it explodes when the interp gets to get_byte
01:28 nbrown weird, I don't have that
01:29 nbrown I'm on windows, but I don't think that should make a difference
01:29 cotto you'd think it wouldn't
01:30 cotto especially since the hash test passes
01:30 nbrown exactly
01:30 nbrown what line was it crashing on?
01:30 cotto the one with get_byte
01:31 cotto I'm working on commenting/understanding it, so my line numbers are off.
01:32 nbrown do you know which line of c implementation of the get_byte op?
01:32 cotto the last one
01:32 cotto *target = (char)src[offset];
01:32 nbrown ok, I'll see if I can figure it out
01:32 cotto I'm not fully convinced that the test is valid.  It's not hard to cause a segfault in m0.
01:33 nbrown Which part are you thinking is invalid?
01:34 cotto the string comparison look is the lest understandable
01:34 nbrown my fault, I did it and didn't comment it
01:34 cotto no worries.  I'm pretty close to done commenting it up real good.
01:35 nbrown thank you
01:38 cotto can you nopaste the output when you run that test?
01:41 nbrown what nopaste do people use in here?
01:41 cotto nopaste?
01:41 cotto aloha, nopaste?
01:41 aloha cotto: nopaste is is http://nopaste.snit.ch (works with the script in $_PARROT/tools/dev/nopaste.pl)
01:42 nopaste "nbrown" at 192.168.1.3 pasted "m0_args test output" (4 lines) at http://nopaste.snit.ch/136438
01:47 nbrown not very helpful :(
01:49 cotto it is.  It means that the code tests something like what I expect it to.
01:49 cotto definitely needs to be more robust, but we're also not building a standard library
01:49 cotto s/needs to be/could be/
01:50 nbrown yeah, i just wrote the simplest string compare I could think of
01:50 cotto oh.  I thought I wrote that.
01:50 cotto I guess that explains why I don't remember writing it.
01:51 cotto mystery solved
01:51 cotto the algorithm is just fine for its intended purpose
01:52 nbrown yeah, there was basically no second test when I started
01:52 nbrown it's not efficient, it was just the easiest way I could think of in m0
01:56 cotto I see you're not among the privileged many with a commit bit.  How do you want to collaborate on this?
01:57 dalek parrot/m0: a05aa57 | cotto++ | t/m0/integration/m0_args.m0:
01:57 dalek parrot/m0: comment up the m0 args test
01:57 dalek parrot/m0: review: https://github.com/parrot/parrot/commit/a05aa570e4
01:57 cotto If you want a commit bit, I know a guy.
01:57 nbrown what do I need to do to get a commit bit?
01:57 cotto sign and send in a CLA
01:57 cotto aloha, cla?
01:57 aloha cotto: cla is http://www.parrot.org/sites/www.​parrot.org/files/parrot_cla.pdf
01:58 cotto it basically says that PaFo has a non-exclusive license to use your contributions
01:58 nbrown ok, I'll work in a branch until that goes through
01:59 cotto you can scan and email if you like
01:59 nbrown I need to check with someone at work before I sign something like that
01:59 cotto ok
02:00 cotto do you hack on this stuff at work?
02:01 nbrown no, not at all, but they have rules about me signing those kinds of things without telling them first
02:01 nbrown it won't be a problem, I just need to inform them
02:01 cotto wfm
02:02 cotto dayjobs differ in how much they care what you hack on while you're on the clock
02:02 nbrown yeah, mine wouldn't allow it at all. I do all my parrot work on my own time
02:02 nbrown brb
02:03 cotto mine's pretty chill as long as I get what they need done
02:09 dalek parrot/coke/rm_pasm: 8f7470d | coke++ | t/library/parrotlib.t:
02:09 dalek parrot/coke/rm_pasm: read .pir constant file instead
02:09 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/8f7470d8e7
02:12 dalek parrot/coke/rm_pasm: af8b198 | coke++ | t/op/stringu.t:
02:12 dalek parrot/coke/rm_pasm: convert tests from PASM to PIR
02:12 dalek parrot/coke/rm_pasm:
02:12 dalek parrot/coke/rm_pasm: Remove unneeded opcodes in the process.
02:12 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/af8b198d8a
02:14 nbrown I guess until I get that signed, I'll just keep my m0 branch synced with the parrot one and let you know when there's something of interest for you guys
02:14 cotto I'll be watching.
02:14 eternaleye joined #parrot
02:16 nbrown sounds good
02:23 nbrown cotto: random question, is there a long term goal to write a c m0 assembler too? or are we just going to use the perl one?
02:24 cotto nbrown, good question.  It's not as important, but it wouldn't hurt.
02:25 nbrown ok, that's what I guessed
02:25 cotto fast execution is much more important than fast assembly
02:26 nbrown yep
02:29 nbrown alright, I'm fading. Time for bed, good night
03:01 dalek parrot/coke/rm_pasm: d8551ba | coke++ | t/dynoplibs/time_old.t:
03:01 dalek parrot/coke/rm_pasm: convert PASM test to PIR
03:01 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/d8551ba69e
03:01 dalek parrot/coke/rm_pasm: f9f622d | coke++ | / (3 files):
03:01 dalek parrot/coke/rm_pasm: switch macro to PIR and remove PASM variants.
03:01 dalek parrot/coke/rm_pasm:
03:01 dalek parrot/coke/rm_pasm: No need to change t/ usage, was updated earlier.
03:01 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/f9f622de59
03:01 dalek parrot/coke/rm_pasm: 3cd264b | coke++ | t/dynoplibs/trans-old.t:
03:01 dalek parrot/coke/rm_pasm: convert PASM tests to PIR
03:01 dalek parrot/coke/rm_pasm:
03:01 dalek parrot/coke/rm_pasm: * create helper sub, DRY
03:01 dalek parrot/coke/rm_pasm: * split up some combined tests
03:01 dalek parrot/coke/rm_pasm: * remove unneeded p5 use
03:01 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/3cd264bba9
03:34 dalek parrot/coke/rm_pasm: b9ba887 | coke++ | t/library/osutils.t:
03:34 dalek parrot/coke/rm_pasm: convert remaining .pasm -> .pir includes
03:34 dalek parrot/coke/rm_pasm:
03:34 dalek parrot/coke/rm_pasm: (missing /g on initial convert?)
03:34 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/b9ba887fbb
03:34 dalek parrot/coke/rm_pasm: 8c9bcc1 | coke++ | t/dynoplibs/sysinfo.t:
03:34 dalek parrot/coke/rm_pasm: Remove some duplicate PASM tests
03:34 dalek parrot/coke/rm_pasm: (already in PIR)
03:34 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/8c9bcc1d6d
03:34 dalek parrot/coke/rm_pasm: 9f9a379 | coke++ | t/dynoplibs/io-old.t:
03:34 dalek parrot/coke/rm_pasm: convert PASM tests to PIR
03:34 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/9f9a379e0c
03:34 dalek parrot/coke/rm_pasm: f016f0b | coke++ | t/dynoplibs/debug.t:
03:34 dalek parrot/coke/rm_pasm: remove useless 'use'
03:34 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/f016f0b69e
03:34 dalek parrot/coke/rm_pasm: 8ca0a52 | coke++ | t/dynoplibs/debug.t:
03:34 dalek parrot/coke/rm_pasm: remove stale, commented out SKIP
03:34 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/8ca0a52fac
03:34 dalek parrot/coke/rm_pasm: e9a69b2 | coke++ | t/dynoplibs/debug.t:
03:34 dalek parrot/coke/rm_pasm: convert PASM tests to PIR
03:34 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/e9a69b28ba
03:34 dalek parrot/coke/rm_pasm: 1b524d7 | coke++ | t/dynoplibs/debug.t:
03:34 dalek parrot/coke/rm_pasm: don't globally skip a test that fails one place.
03:34 dalek parrot/coke/rm_pasm:
03:34 dalek parrot/coke/rm_pasm: if this still fails on windows, todo it there.
03:34 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/1b524d7742
03:34 dalek parrot/coke/rm_pasm: ec1394a | coke++ | t/src/extend.t:
03:34 dalek parrot/coke/rm_pasm: Convert PASM to PIR
03:34 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/ec1394abb6
03:43 cotto wheeee
03:44 dalek parrot/coke/rm_pasm: 5d35f31 | coke++ | t/compilers/imcc/syn/macro.t:
03:44 dalek parrot/coke/rm_pasm: convet PASM test to PIR
03:44 dalek parrot/coke/rm_pasm:
03:44 dalek parrot/coke/rm_pasm: (Doesn't look like the PASM tests are duplicates here, so convert)
03:44 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/5d35f314bf
04:09 dalek parrot/coke/rm_pasm: 5c22a89 | coke++ | / (2 files):
04:09 dalek parrot/coke/rm_pasm: remove PASM specific test
04:09 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/5c22a89616
04:09 dalek parrot/coke/rm_pasm: b377f96 | coke++ | t/op/calling.t:
04:09 dalek parrot/coke/rm_pasm: convert PASM tests to PIR
04:09 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/b377f9617b
04:18 lateau joined #parrot
04:18 Coke msg moritz: only 26 test files still failing at this point in coke/rm_pasm. many of those tests are just changing the pasm_* tests to pir_* tests. (though some are more complicated)
04:18 aloha OK. I'll deliver the message.
04:20 Coke cotto: if we get rm_pasm to a point where a) all tests pass, b) we successfully rip PASM out of imcc (right now you can't run a .pasm file, but if /include/ a .pasm file, it'd probably still work.), what are the odds we can merge it?
04:21 Coke or, a more easily answerable version: can you think of any blockers/reasons NOT to merge it?
04:21 Coke zzz
04:36 cotto Coke, my only concern is that we make sure that languages that care will continue to work as normal.
04:36 cotto If we can do everything we do now without pasm, it won't be missed.
04:38 cotto coke++
07:17 fperrad joined #parrot
07:18 fperrad_ joined #parrot
07:44 dalek parrot/m0: 50bf1d7 | cotto++ | src/m0/perl5/m0_interp.pl:
07:44 dalek parrot/m0: fix p5 interp to encode cli arguments as M0 strings
07:44 dalek parrot/m0: review: https://github.com/parrot/parrot/commit/50bf1d76ae
08:12 dalek parrot/coke/rm_past: 90c6d51 | moritz++ | t/op/lexicals.t:
08:12 dalek parrot/coke/rm_past: remove PASM specific lex tests
08:12 dalek parrot/coke/rm_past: review: https://github.com/parrot/parrot/commit/90c6d519b7
08:12 dalek parrot/coke/rm_past: 490409f | moritz++ | t/op/basic.t:
08:12 dalek parrot/coke/rm_past: start to write pasm tests in pir
08:12 dalek parrot/coke/rm_past: review: https://github.com/parrot/parrot/commit/490409fafc
08:19 dalek parrot/coke/rm_past: 91571ac | moritz++ | t/op/interp.t:
08:19 dalek parrot/coke/rm_past: more pasm->pir test rewriting
08:19 dalek parrot/coke/rm_past: review: https://github.com/parrot/parrot/commit/91571acd7b
08:19 dalek parrot/coke/rm_past: 2d0694e | moritz++ | t/dynoplibs/sysinfo.t:
08:19 dalek parrot/coke/rm_past: [sysinfo.t] pasm -> pir. Needs testing on windows
08:19 dalek parrot/coke/rm_past: review: https://github.com/parrot/parrot/commit/2d0694e6a0
08:25 lucian joined #parrot
08:30 dalek parrot/coke/rm_past: 0a63661 | moritz++ | t/pmc/object-meths.t:
08:30 dalek parrot/coke/rm_past: remove broken PASM test
08:30 dalek parrot/coke/rm_past: review: https://github.com/parrot/parrot/commit/0a6366119b
08:31 brrt joined #parrot
08:54 fperrad joined #parrot
08:55 dalek parrot/coke/rm_past: 75430d1 | moritz++ | t/op/jit.t:
08:55 dalek parrot/coke/rm_past: [jit.t] convert the first ~40 pasm tests to PIR
08:55 dalek parrot/coke/rm_past: review: https://github.com/parrot/parrot/commit/75430d1b74
08:58 lucian joined #parrot
09:40 schmooster joined #parrot
10:01 schmooster joined #parrot
10:15 ligne joined #parrot
10:26 lucian joined #parrot
10:30 brrt joined #parrot
10:32 schmooster joined #parrot
10:47 kid51 joined #parrot
11:08 lucian joined #parrot
12:19 Coke moritz++ # we still have jit tests?
12:21 Coke moritz: we seem to be working on 2 different branches.
12:24 Coke moritz: I probably typoed pasm at some point when adding a remote tracking branch on one of my 2 checkouts of that branch. arglebargle.
12:29 dalek rakudo/nom: 7845b8d | tadzik++ | src/core/terms.pm:
12:29 dalek rakudo/nom: Implement setting env variables by modifying %*ENV
12:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7845b8db47
12:29 dalek rakudo/nom: 616b622 | tadzik++ | src/core/terms.pm:
12:30 dalek rakudo/nom: Fix a braino. benabik++ for noticing
12:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/616b6222cd
12:30 dalek rakudo/nom: 110f35c | tadzik++ | src/core/terms.pm:
12:30 dalek rakudo/nom: Merge branch 'setenv' into nom
12:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/110f35cce0
12:38 Coke moritz: ah. it may have been you: looks like only six commits differ on coke/rm_past, and they're all from you. I'll merge them over to coke/rm_pasm.
12:39 jashwanth joined #parrot
12:39 dalek parrot/coke/rm_pasm: 90c6d51 | moritz++ | t/op/lexicals.t:
12:39 dalek parrot/coke/rm_pasm: remove PASM specific lex tests
12:39 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/90c6d519b7
12:39 dalek parrot/coke/rm_pasm: 490409f | moritz++ | t/op/basic.t:
12:39 dalek parrot/coke/rm_pasm: start to write pasm tests in pir
12:39 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/490409fafc
12:39 dalek parrot/coke/rm_pasm: 91571ac | moritz++ | t/op/interp.t:
12:39 dalek parrot/coke/rm_pasm: more pasm->pir test rewriting
12:39 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/91571acd7b
12:39 dalek parrot/coke/rm_pasm: 2d0694e | moritz++ | t/dynoplibs/sysinfo.t:
12:40 dalek parrot/coke/rm_pasm: [sysinfo.t] pasm -> pir. Needs testing on windows
12:40 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/2d0694e6a0
12:40 dalek parrot/coke/rm_pasm: 0a63661 | moritz++ | t/pmc/object-meths.t:
12:40 dalek parrot/coke/rm_pasm: remove broken PASM test
12:40 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/0a6366119b
12:40 dalek parrot/coke/rm_pasm: 75430d1 | moritz++ | t/op/jit.t:
12:40 dalek parrot/coke/rm_pasm: [jit.t] convert the first ~40 pasm tests to PIR
12:40 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/75430d1b74
12:48 Coke Ok. 24 failing tests in branch remaining. moritz++
12:48 Coke (and one of those fails for me in master.)
12:55 PacoAir joined #parrot
13:04 whiteknight joined #parrot
13:06 whiteknight good morning, #parrot
13:09 PacoAir_ joined #parrot
13:12 JimmyZ joined #parrot
13:16 Coke Anyone wants to convert tests in that branch while I'm at $dayjob, lemme know. ;)
13:20 dalek parrot/m0-c-args-fix: 2638f9f | cotto++ | / (3 files):
13:20 dalek parrot/m0-c-args-fix: update cm0 to encode cli arguments as M0 strings
13:20 dalek parrot/m0-c-args-fix:
13:20 dalek parrot/m0-c-args-fix: The code emits a warning and needs a bit of cleanup, but the new
13:20 dalek parrot/m0-c-args-fix: args_basic test successfully prints out its first arg.  Issues with the
13:20 dalek parrot/m0-c-args-fix: m0_args.t are probably due a bug in that test.
13:20 dalek parrot/m0-c-args-fix: review: https://github.com/parrot/parrot/commit/2638f9f96f
13:44 JimmyZ cotto++ for  M0
14:27 jsut joined #parrot
14:30 schmooster joined #parrot
15:07 JimmyZ joined #parrot
15:11 dmalcolm joined #parrot
15:57 cotto ~~
15:58 cotto I love the smell of parrots in the morning.
15:58 cotto seen nbrown
15:58 aloha nbrown was last seen in #parrot 13 hours 29 mins ago saying "alright, I'm fading. Time for bed, good night".
15:59 cotto msg nbrown I think part of the problem I was seeing with m0 arg handling was that args weren't being turned into m0 strings.
15:59 aloha OK. I'll deliver the message.
16:00 * JimmyZ would like to clean up some branches
16:02 cotto JimmyZ: what specifically are you thinking about doing?
16:06 JimmyZ cotto: nope, there are too many branches, 103.
16:06 cotto sure.  which ones were you thinking about nuking?
16:08 JimmyZ cotto: maybe some gci branches and ttXXX branches, which about 1-2 years ago.
16:09 cotto JimmyZ: when you have a list of candidates, make sure to send them to parrot-dev before deleting them
16:09 JimmyZ cotto: will do
16:11 cotto pruning branches is great, but we obviously don't want to lose anything of value.  Bonus points if you find something merge-worthy and merge it.
16:15 benabik o/ #parrot
16:15 cotto hio, gsoc student
16:16 benabik greetings, mentor.
16:19 cotto it's a good day for menting
16:20 JimmyZ cotto: yep
16:23 cotto all kinds of warnings build cm0 on x86
16:27 brrt joined #parrot
16:32 mtk joined #parrot
17:01 PacoAir joined #parrot
17:09 dukeleto joined #parrot
17:16 dalek parrot/pct_winxed: 1664578 | benabik++ | compilers/pct/src/PAST/Compiler. (2 files):
17:16 dalek parrot/pct_winxed: PCT: PAST.Compiler.as_post basics
17:16 dalek parrot/pct_winxed:
17:16 dalek parrot/pct_winxed: The default, Integer, Float, and String versions of as_post()
17:16 dalek parrot/pct_winxed: review: https://github.com/parrot/parrot/commit/1664578bee
17:16 dalek parrot/pct_winxed: 4436b32 | benabik++ | compilers/pct/src/PAST/Compiler. (2 files):
17:16 dalek parrot/pct_winxed: PCT: PAST.Compiler.as_vivipost
17:16 dalek parrot/pct_winxed: review: https://github.com/parrot/parrot/commit/4436b325b6
17:16 dalek parrot/pct_winxed: d6b74d3 | benabik++ | ext/winxed/ (2 files):
17:16 dalek parrot/pct_winxed: Update Winxed snapshot to 4006a0b
17:16 dalek parrot/pct_winxed:
17:16 dalek parrot/pct_winxed: Fixes qualified class declarations
17:16 dalek parrot/pct_winxed: review: https://github.com/parrot/parrot/commit/d6b74d37a9
17:16 dalek parrot/pct_winxed: b3417fa | benabik++ | compilers/pct/src/PAST/Compiler. (2 files):
17:16 dalek parrot/pct_winxed: PCT: PAST.Compiler.as_post for Node and Stmt
17:16 dalek parrot/pct_winxed:
17:16 dalek parrot/pct_winxed: I don't see a way in Winxed to refer to a single version of a multi,
17:16 dalek parrot/pct_winxed: so I split the common code out into another method.
17:16 dalek parrot/pct_winxed: review: https://github.com/parrot/parrot/commit/b3417fa7e1
17:19 whiteknight benabik++
17:34 dalek parrot/coke/rm_past: 711f6c6 | moritz++ | t/op/jit.t:
17:34 dalek parrot/coke/rm_past: port some more PASM tests to PIR
17:34 dalek parrot/coke/rm_past: review: https://github.com/parrot/parrot/commit/711f6c69db
17:38 benabik I was about to comment that this would go faster if I wasn't running `make test codetest` after every commit, but it just caught an error, so I'll accept the slowdown.  :-D
17:39 dalek rakudo/nom: c7bf334 | jnthn++ | src/ (3 files):
17:39 dalek rakudo/nom: Make //=, ||= and &&= thunky with their RHS.
17:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c7bf3344bc
17:39 dalek rakudo/nom: 1c92d0a | jnthn++ | src/core/List.pm:
17:39 dalek rakudo/nom: The splice implementation relied on the previously incorrect semantics of //= in a rather subtle way. This makes it work again now //= is fixed.
17:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1c92d0a5f8
17:41 Coke moritz: you pushed to rm_past again.
17:41 moritz Coke: did I create merge conflicts?
17:42 Coke no, just a new branch.
17:42 moritz oh dammit
17:43 moritz too many ^pa abbreviations
17:43 Coke I assume a typo with the manual adding of an origin. ;
17:43 Coke aye.
17:43 Coke I merged the other commits over, that's the only spare one, I think.
17:43 moritz thanks
17:44 dalek parrot/coke/rm_pasm: 711f6c6 | moritz++ | t/op/jit.t:
17:44 dalek parrot/coke/rm_pasm: port some more PASM tests to PIR
17:44 dalek parrot/coke/rm_pasm: review: https://github.com/parrot/parrot/commit/711f6c69db
17:44 moritz nope it comes out better this time
17:46 dalek parrot/pct_winxed: 1202f2c | benabik++ | compilers/pct/src/PAST/Compiler.winxed:
17:46 dalek parrot/pct_winxed: PCT: PAST.Compiler - add repeat inline
17:46 dalek parrot/pct_winxed: review: https://github.com/parrot/parrot/commit/1202f2caf4
17:46 dalek parrot/pct_winxed: 5629791 | benabik++ | compilers/pct/src/PAST/Compiler. (2 files):
17:46 dalek parrot/pct_winxed: PCT: PAST.Compiler.as_post(PAST.Control)
17:46 dalek parrot/pct_winxed: review: https://github.com/parrot/parrot/commit/5629791601
17:46 cotto you can't erase the past
17:48 brrt joined #parrot
17:57 * Coke wonders why we have a t/op/jit.t when we have no JIT.
17:57 * Coke assumes it's a test that needs renaming.
17:58 benabik Optimisim?
17:58 whiteknight I would assume it's a test worth deleting
17:59 cotto when we had a jit, it tested code that would get jitted.  There's not much value in it now.
17:59 cotto so +1 to deleting
18:03 moritz Coke: it tests register allocation stuff and some pretty basic things
18:05 lucian joined #parrot
18:08 dalek parrot/pct_winxed: 52fc553 | benabik++ | compilers/pct/src/PAST/Compiler. (2 files):
18:08 dalek parrot/pct_winxed: PCT: PAST.Compiler.push_exception_handler in Winxed
18:08 dalek parrot/pct_winxed: review: https://github.com/parrot/parrot/commit/52fc553a15
18:12 dukeleto ~~
18:14 cotto hi dukeleto
18:14 dukeleto cotto: wazzup
18:15 dukeleto +1 to deleting jit-related tests
18:18 dmalcolm joined #parrot
18:19 moritz they are pretty generic tests, they just have 'jit' in the name
18:20 whiteknight most of those things are already covered in the t/compilers/imcc/syn/*.t tests
18:21 Coke whiteknight: as long as it's not in syn/pasm.t
18:22 whiteknight heh
18:23 Coke so, this is going faster than I expected.
18:24 dalek rakudo/nom: 5ea23bc | moritz++ | src/Perl6/Actions.pm:
18:24 dalek rakudo/nom: make a sub lexcical
18:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5ea23bcd32
18:24 dalek rakudo/nom: 2da78a1 | moritz++ | src/Perl6/Compiler.nqp:
18:24 * Coke will send out an email in a bit asking if anyone is using PASM.
18:24 dalek rakudo/nom: [REPL] catch and print errors from stringification
18:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2da78a11b1
18:24 Coke ah, dukeleto is here: any thoughts on removing PASM, other than "ask nicely if anyone is using it" ?
18:26 benabik I've been pondering it.  It would be an apocalyptic change.  Very little code written before PASM removal will work because of include/*.pasm
18:27 whiteknight the include/*.pasm stuff should still work, that's built into IMCC's PIR mode
18:27 Coke right, but what are people using those .pasm files for?
18:27 whiteknight You guys aren't ripping it out of IMCC, right?
18:27 Coke whiteknight: sure.
18:27 whiteknight mostly compile-time constants
18:27 Coke this branch is removing it entirely.
18:28 benabik Access to the interp, exception types, character classes.
18:28 Coke and those compile-time constants work fine when you rename .pasm to .pir
18:28 benabik I'm not saying the code can't be fixed, just that it will have to be fixed.
18:29 Coke benabik: workaround: allow .pasm as an alias for .pir
18:29 whiteknight Coke: I don't know if you'll be able to completely rip all PASM support out of IMCC. I think that's a quagmire
18:30 whiteknight PASM and PIR modes are pretty closely inter-related
18:30 whiteknight removing the "PASM" compreg would be easy to do
18:30 whiteknight recommended, even
18:33 dukeleto Coke: in general, i am +1 to removing PASM as long as it doesn't hurt our users.
18:33 dukeleto We should probably write a blog post on parrot.org that describes why we are removing pasm, what it means for HLLs devs and describe any non-backcompat changes that are being made
18:33 PerlJam dukeleto: even if it's just temporary pain?
18:34 dukeleto PerlJam: see above :)
18:34 PerlJam aye.  :)
18:34 PerlJam +1 to that
18:34 dukeleto PerlJam: i am ok with a small amount of temp pain as long as stuff improves and is joyous after that :)
18:34 benabik We could have .include do a little s/\.pasm/.pir/ and print a warning.
18:34 dukeleto benabik: not a bad idea for a transition period
18:35 * benabik realizes he suggested adding code to IMCC.
18:35 * dukeleto is moving out of his old place, moving into temp housing and hopefully getting keys to a House.new() on Wednesday. I hope.
18:35 dukeleto so my tuits will be 0, negative or imaginary for the next few days
18:35 dukeleto i have told jashwanth to email parrot-dev questions and cc me
18:35 whiteknight dukeleto: good luck with all that
18:35 dukeleto whiteknight: aye aye, captain!
18:36 dukeleto There was actually *a bug* in the mortgage software which delayed my closing 3 days.
18:36 dukeleto Yes, *a bug* in the mortgage software. The nerve!
18:36 whiteknight thats....absurd
18:36 dukeleto My APR was wrong and everything needed to be done, which causes a 3 day federal waiting period to come into effect
18:36 whiteknight When you've got hundreds of thousands of dollars depending on that software working properly per mortgage, possibly thousands of mortgages, you make sure that shit works
18:37 dukeleto whiteknight: my life is absurd right now. Moving my future wife, a cat and a turtle into my friends house for a few days, and everything I own is in a POD that will be delivered to a house I don't yet own today
18:37 whiteknight ouch
18:37 dukeleto whiteknight: yeah. 'tis all good. I have embraced the madness by now. it almost feels normal :)
18:37 whiteknight I can't offer more than vague moral support, from 3000 miles away
18:38 dukeleto whiteknight: reading your blog posts about your house hunt gave me moral support :)
18:38 whiteknight dukeleto: my poor wife was exposed to curse words that no mortal should have to be exposed to
18:39 whiteknight there was much weeping and gnashing of teeth
18:41 * benabik had his home purchasing go fairly well, which is why he's happy to not have to do it again.
18:41 whiteknight My wife says we're going to die in this house, since she's so frightened of trying to buy another one
18:48 moritz fwiw in the rm_pasm branch, all those include files are just .pir files the same contents as before
18:49 whiteknight moritz: Do they work with the .include directive like normal?
18:50 moritz whiteknight: well, you have to change the file name in the .include. But apart from that, yes
18:50 whiteknight okay, awesome
18:51 whiteknight Rosella uses a few of those include files, I'll have to update that. I'll also have to make sure winxed can handle a .pir include file
19:03 dalek parrot/pct_winxed: 0dc14b1 | benabik++ | compilers/pct/src/PAST/Compiler. (2 files):
19:03 dalek parrot/pct_winxed: PCT: PAST.Compiler.wrap_handlers in Winxed
19:03 dalek parrot/pct_winxed: review: https://github.com/parrot/parrot/commit/0dc14b19f9
19:03 lucian joined #parrot
19:06 Coke moritz: offline for a bit, will look here before hacking on rm_pasm again.
19:19 whiteknight rm_pasm branch makes me happy
19:19 cotto +1
19:19 whiteknight Coke++, moritz++ for working on it
20:11 schmooster joined #parrot
20:14 moritz Coke: I won't do any more rm_pasm hacking tonight
20:19 dalek nqp/toqast: ea5e3c6 | jnthn++ | src/QAST/Compiler.nqp:
20:19 dalek nqp/toqast: BlockInfo methods to register parameter and variable declarations, tracking the native type and register vs. local.
20:19 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/ea5e3c67dc
20:21 perlite joined #parrot
20:25 lucian joined #parrot
20:39 dalek nqp/toqast: 8ee175e | jnthn++ | src/QAST/Compiler.nqp:
20:39 dalek nqp/toqast: Allocate registers for lexicals at the point of declaration, including params. Also (untested) code gen for lexical and local declarations, including natively typed ones.
20:39 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/8ee175e861
20:47 contingencyplan joined #parrot
21:12 dalek parrot/m0-c-args-fix: 525be62 | cotto++ | src/m0/perl5/m0_interp.pl:
21:12 dalek parrot/m0-c-args-fix: remove a stray newline from the p5 m0 interp
21:12 dalek parrot/m0-c-args-fix: review: https://github.com/parrot/parrot/commit/525be621c6
21:12 brrt joined #parrot
21:14 brrt left #parrot
22:06 whiteknight joined #parrot
22:43 kid51 joined #parrot
23:19 whiteknight joined #parrot
23:20 whiteknight I'm back!
23:20 cotto How do we know you're the real whiteknight?
23:20 cotto You could be his kid or his dog.
23:20 whiteknight ask me a question that requires experience and expertise to get right. The real whiteknight will get it wrong
23:21 whiteknight or better yet, ask me my opinion about IMCC. The real whiteknight has a particular response
23:21 cotto If I had a dog, he'd probably know my opinion of imcc.
23:23 whiteknight everytime he hears that word, he hides under the table
23:55 alvis` joined #parrot
23:55 alvis` left #parrot

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

Parrot | source cross referenced