Camelia, the Perl 6 bug

IRC log for #parrot, 2011-04-23

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:09 bbatha left #parrot
00:14 bbatha joined #parrot
00:17 bbatha left #parrot
00:24 Eduardow joined #parrot
00:31 mikehh joined #parrot
00:49 Eduardow left #parrot
00:49 redicaps joined #parrot
00:52 Eduardow joined #parrot
00:54 dalek TT #1230 closed by plobsing++: src/pmc/eval.pmc:  Walk the fixups, locate globals and nullify the Sub PMC
00:54 dalek TT #1230: http://trac.parrot.org/parrot/ticket/1230
01:05 Eduardow left #parrot
01:07 whiteknight joined #parrot
01:09 dalek TT #2100 created by soh_cah_toa++: Automate the release process
01:09 dalek TT #2100: http://trac.parrot.org/parrot/ticket/2100
01:13 Eduardow joined #parrot
01:19 bbatha joined #parrot
01:34 rdesfo joined #parrot
01:39 rdesfo left #parrot
01:39 Eduardow left #parrot
01:39 bbatha left #parrot
01:43 dalek parrot: 1a7e92a | (Gerd Pokorra)++ | docs/parrothist.pod:
01:43 dalek parrot: apply stable identification to 3.3 release
01:43 dalek parrot: review: https://github.com/parrot/parrot/commit/1a7e92a67e
01:44 Eduardow joined #parrot
02:05 whiteknight left #parrot
02:10 petdance joined #parrot
02:11 dafrito left #parrot
02:21 dalek parrot/tt1931-nci-parameters-deprecation: 431a52c | plobsing++ | / (3 files):
02:21 dalek parrot/tt1931-nci-parameters-deprecation: eliminate tests for removed "t" nci signature functionality (or modify to avoid where possible)
02:21 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/431a52ce0c
02:22 dalek parrot/tt1931-nci-parameters-deprecation: a608e9a | plobsing++ | src/nci/extra_thunks. (2 files):
02:22 dalek parrot/tt1931-nci-parameters-deprecation: eliminate deprecated "B" nci signature from extra thunklib
02:22 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/a608e9a768
02:22 dalek parrot/tt1931-nci-parameters-deprecation: d818fb5 | plobsing++ | / (3 files):
02:22 dalek parrot/tt1931-nci-parameters-deprecation: remove support for deprecated "B" nci signature
02:22 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/d818fb5626
02:22 dalek parrot/tt1931-nci-parameters-deprecation: 6c38adc | plobsing++ | / (4 files):
02:22 dalek parrot/tt1931-nci-parameters-deprecation: eliminate unnecessary special treatment of "O" NCI type (handled implicitly by PCC)
02:22 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/6c38adc9b7
02:38 mrwall-e left #parrot
02:51 redicaps left #parrot
03:37 woosley joined #parrot
03:40 soh_cah_toa left #parrot
03:46 dalek parrot: ee53d0b | petdance++ | runtime/parrot/library/Stream/ (2 files):
03:46 dalek parrot: removed embedded tabs
03:46 dalek parrot: review: https://github.com/parrot/parrot/commit/ee53d0bea4
03:46 dalek parrot: 56ed657 | petdance++ | runtime/parrot/library/NCI/Utils.pir:
03:46 dalek parrot: removed embedded tabs
03:46 dalek parrot: review: https://github.com/parrot/parrot/commit/56ed6579a1
03:46 dalek parrot: 68ee5a9 | petdance++ | runtime/parrot/library/ (7 files):
03:46 dalek parrot: Change the search.cpan.org URLs to use the more permanent /dist/-based path, rather than tying them to a specific author
03:46 dalek parrot: review: https://github.com/parrot/parrot/commit/68ee5a9eb4
03:53 ShaneC left #parrot
03:59 hudnix left #parrot
04:13 ShaneC joined #parrot
04:26 bubaflub left #parrot
04:41 woosley left #parrot
04:51 bacek left #parrot
05:01 petdance left #parrot
05:05 jrt4 joined #parrot
05:08 jrt4__ left #parrot
05:17 Khisanth left #parrot
05:19 theory left #parrot
05:29 Khisanth joined #parrot
05:36 jrt4 left #parrot
05:54 cotto ~~
06:12 dukeleto ~~
06:17 jrtayloriv joined #parrot
06:19 redicaps joined #parrot
06:19 redicaps left #parrot
06:20 redicaps joined #parrot
06:20 redicaps left #parrot
07:00 dalek parrot/leto/embed_grant: 254bb2d | dukeleto++ | t/src/extend_vtable.t:
07:00 dalek parrot/leto/embed_grant: [t] Parrot_PMC_defined_keyed
07:00 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/254bb2ddb7
07:01 mj41 joined #parrot
07:02 dalek parrot/leto/embed_grant: 6d018dd | dukeleto++ | t/src/extend_vtable.t:
07:02 dalek parrot/leto/embed_grant: [t] Parrot_PMC_defined_keyed_str
07:02 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/6d018dd524
07:05 dalek parrot/leto/embed_grant: f0346a2 | dukeleto++ | t/src/extend_vtable.t:
07:05 dalek parrot/leto/embed_grant: [t] Parrot_PMC_delete_keyed_str
07:05 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/f0346a2d1b
07:11 bacek joined #parrot
07:15 ShaneC1 joined #parrot
07:17 rblackwe_ left #parrot
07:17 rblackwe joined #parrot
07:18 kthakore left #parrot
07:18 kthakore joined #parrot
07:18 simcop2387_ joined #parrot
07:18 ShaneC left #parrot
07:18 simcop2387 left #parrot
07:18 simcop2387_ is now known as simcop2387
07:27 dalek parrot/leto/embed_grant: 9bb2660 | dukeleto++ | t/src/extend_vtable.t:
07:27 dalek parrot/leto/embed_grant: [t] Parrot_PMC_does_pmc
07:27 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/9bb2660d52
07:31 dodathome joined #parrot
07:33 dalek parrot/leto/embed_grant: 0e4f51f | dukeleto++ | t/src/extend_vtable.t:
07:33 dalek parrot/leto/embed_grant: [t] Parrot_PMC_get_pmc_keyed_str
07:33 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/0e4f51fdca
07:38 dalek parrot/leto/embed_grant: 75e32d3 | dukeleto++ | t/src/extend_vtable.t:
07:38 dalek parrot/leto/embed_grant: [TT ##2098] Use a non-empty hash key to prevent: failed assertion 'key'
07:38 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/75e32d33f9
07:40 atrodo left #parrot
08:18 dalek plparrot: bf9ab0d | leto++ | Makefile:
08:18 dalek plparrot: Grab a sha1 instead of a revision and print it
08:18 dalek plparrot: review: https://github.com/leto/plparrot/commit/bf9ab0d699
08:33 mj41 left #parrot
08:53 mj41 joined #parrot
09:01 mj41 left #parrot
09:37 dodathome left #parrot
09:41 BloodyCoin left #parrot
09:41 BloodyCoin joined #parrot
10:06 woosley joined #parrot
10:15 bacek left #parrot
10:18 lucian joined #parrot
10:21 mj41 joined #parrot
10:27 ambs joined #parrot
10:45 dafrito joined #parrot
10:55 bacek joined #parrot
10:56 bacek left #parrot
10:56 bacek joined #parrot
11:17 whiteknight joined #parrot
11:18 whiteknight good morning, #parrot
11:27 whiteknight http://blog.mozilla.com/dmandelin/2​011/04/22/mozilla-javascript-2011/
11:39 hudnix joined #parrot
11:43 mj41 left #parrot
11:46 tewk joined #parrot
11:51 lucian_ joined #parrot
11:51 ambs left #parrot
11:54 lucian__ joined #parrot
11:56 lucian left #parrot
11:57 Patterner left #parrot
11:57 dalek parrot-linear-algebra: e6263ab | Whiteknight++ | t/testlib/testcontext.nqp:
11:57 dalek parrot-linear-algebra: add in testcontext file, which I forgot
11:57 dalek parrot-linear-algebra: review: https://github.com/Whiteknight/parr​ot-linear-algebra/commit/e6263abad8
11:57 Psyche^ joined #parrot
11:57 Psyche^ is now known as Patterner
11:58 lucian_ left #parrot
12:03 jrtayloriv left #parrot
12:09 ambs joined #parrot
12:15 Patterner left #parrot
12:16 Psyche^ joined #parrot
12:16 Psyche^ is now known as Patterner
12:19 kid51 joined #parrot
12:21 bacek left #parrot
12:24 lucian__ is now known as lucian
12:44 dalek parrot: 7413e30 | jkeenan++ | t/src/extend_vtable.t:
12:44 dalek parrot: Applied to master patch previously applied to
12:44 dalek parrot: leto/embed_grant branch.  Then, patch
12:44 dalek parrot: 'Parrot_PMC_defined_keyed_str' test in the same way other
12:44 dalek parrot: tests had been corrected.  Now all tests PASS on Darwin/PPC.
12:44 dalek parrot: review: https://github.com/parrot/parrot/commit/7413e3082f
13:04 dalek TT #2098 closed by jkeenan++: t/src/extend_vtable.t: test failures on Darwin/PPC with --gc=ms2
13:04 dalek TT #2098: http://trac.parrot.org/parrot/ticket/2098
13:36 kid51 Wow! First PASS on Darwin/PPC in weeks:  http://smolder.parrot.org/app/​projects/report_details/15348
13:36 tadzik oh, kid51
13:37 tadzik ipv6 capabilities are misdetected on my linux box
13:37 tadzik gentoo, amd64
13:37 tadzik dukeleto told me you're the one who wrote the checks
13:38 kid51 Have you file a TT about this?
13:38 kid51 If not, please do so.
13:38 tadzik okay, will do
13:38 kid51 However, in any event, I have no particular knowledge about ipv6.
13:39 kid51 IIRC, someone else wrote (or pasted) the C probe which is the essence of the test.  I probably only write the Perl around it so that the test looked like all other config/auto/*.pm probes.
13:40 kid51 Confirmed:  there's nothing of interest in config/auto/ipv6.pm per se.
13:40 kid51 config/auto/ipv6/test.in is where we have to look.
13:42 kid51 When you create that TT, cc nwellnhof about that.  From git blame, it looks like he wrote the crucial parts of the probe.
13:42 * kid51 added whitespace and a vim coda!
13:47 tadzik I can look into that myself
13:48 dalek Rosella: 3aa3589 | Whiteknight++ | setup.winxed:
13:48 dalek Rosella: fix setup so we can cut an sdist release
13:48 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/3aa358954c
13:48 dalek Rosella: f517965 | Whiteknight++ | / (2 files):
13:48 dalek Rosella: update README to include information about the release. Make sure the winxed library generates winxed.pbc, not winxed_distutils.pbc
13:48 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/f517965691
13:48 dalek Rosella: 0ab2e93 | Whiteknight++ | README.md:
13:48 dalek Rosella: this is Rosella version 1
13:48 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/0ab2e93053
13:50 kid51 tadzik: 'man ipv6' looks like a good place to start
13:51 whiteknight left #parrot
13:52 tadzik kid51: I just examine this C code and it indeed works for my system, getaddrinfo() works with no errors as if everything was fine
13:53 tadzik socket(AF_INET6) however, returns -1 on my machine
13:53 tadzik so I can open a ticket for this, write a new test in a branch and ask everyone to test it, that's the workflow, right?
13:54 kid51 Exactly.
13:54 tadzik the old test is funny, for it prints "OK" disregarding what getaddrinfo() returns
13:54 kid51 As Andy would say, "Patches welcome!"
13:57 kid51 However, as +40 config/auto/ipv6.pm shows, many of our config probes check for both absence of an error message and presence of OK on STDOUT
13:57 kid51 So in test_c.in, the printf of OK probably needs to be made conditional upon the return value of getaddrinfo()
13:59 kid51 'man getaddrinfo' also looks interesting for this
14:02 tadzik getaddrinfo returns 0 anyway, as I described in the ticket
14:02 tadzik socket() returns -1 though, so I'm going to rewrite that test to use socket()
14:03 tadzik okay, so how do I recompile this test.in?
14:03 nopaste "kid51" at 192.168.1.3 pasted "config/auto/ipv6/test.in: Use return value of getaddrinfo()." (18 lines) at http://nopaste.snit.ch/41617
14:03 tadzik not needed it seems
14:04 tadzik auto::ipv6 -          Determine IPV6 capabilities..........................no.
14:04 tadzik achievement unlocked!
14:04 tadzik pushing to a branch
14:04 tadzik kid51: as I said, it returns 0 on my system
14:04 kid51 config/auto/ipv6.pm handles all the C run details
14:05 kid51 which? socket or getaddrinfo
14:05 benabik tadzik: Achievement Unlocked: IPvWhat?  "Nobody'll need more than 4 million addresses anyway."
14:06 dalek TT #2101 created by tadzik++: Broken ipv6 detection on Gentoo linux
14:06 dalek TT #2101: http://trac.parrot.org/parrot/ticket/2101
14:06 tadzik kid51: getaddrinfo(). socket() returns -1
14:06 tadzik lolipushed
14:06 dalek parrot/tadzik/tt-2101-fix: 8b4e11c | tadzik++ | config/auto/ipv6/test.in:
14:06 dalek parrot/tadzik/tt-2101-fix: Rewrite the ipv6 detection test to use socket()
14:06 dalek parrot/tadzik/tt-2101-fix: review: https://github.com/parrot/parrot/commit/8b4e11c3fb
14:06 kid51 Run: perl Configure.pl --verbose-step=auto::ipv6
14:06 tadzik please test if this works for you alright
14:07 tadzik kid51: on which branch?
14:09 kid51 tadzik:  Either.  I'm just pointing out that you can get debugging output for a particular configuration step by calling --verbose-step=auto::ipv6
14:09 tadzik kid51: I'll look into that
14:10 tadzik well, as much as I can read from that the old test is broken indeed
14:11 tadzik anyway, I have no idea how it should work. C has no die() or anything, so that test would print "OK" whatever happens. Unless there is some assert() or something in getaddrinfo() but I highly doubt it :)
14:11 woosley left #parrot
14:12 kid51 tadzik: That patch compiles on my Linux box and detects ipv6.
14:12 tadzik kid51: good. Can you state that in the TT?
14:13 kid51 However, I think we should discuss that with nwellnhof before applying to master.  He obviously was allowing for Win32 differences, etc.
14:14 benabik tadzik: Also appears to work on Darwin/i386
14:14 tadzik those Win32 things seemed to be getaddrinfo() specific, but I don't know much about windowses, so maybe it needs some magic for socket() too
14:14 tadzik benabik: cool. Could you comment that ticket too?
14:14 benabik tadzik: Of course. :-)
14:14 tadzik thanks
14:14 tadzik I'm afk for some time now
14:22 JimmyZ joined #parrot
14:29 kid51 seen nwellnhof
14:29 aloha nwellnhof was last seen in #parrot 8 days 20 hours ago joining the channel.
14:38 kid51 left #parrot
15:18 JimmyZ left #parrot
15:19 JimmyZ joined #parrot
15:21 theory joined #parrot
15:29 JimmyZ left #parrot
16:04 lucian_ joined #parrot
16:08 lucian left #parrot
16:31 rohit_nsit08 joined #parrot
16:50 birdwindupbird joined #parrot
16:58 tadzik I'm back
17:03 rohit_nsit08 left #parrot
17:03 rohit_nsit08 joined #parrot
17:10 rohit_nsit08 left #parrot
17:10 hudnix left #parrot
17:12 rohit_nsit08 joined #parrot
17:14 mj41 joined #parrot
17:39 S_Arms joined #parrot
17:43 BloodyCoin left #parrot
17:49 S_Arms left #parrot
17:57 S_Arms joined #parrot
17:58 soh_cah_toa joined #parrot
18:06 rohit_nsit08 left #parrot
18:08 birdwindupbird left #parrot
18:10 dalek nqp/ctmo: d59b19a | jonathan++ | src/ (3 files):
18:10 dalek nqp/ctmo: Pass along current view of $*GLOBALish to module loader. Needs to be optional param now until we take another trip around the bootstrapper.
18:10 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/d59b19ac5d
18:10 dalek nqp/ctmo: 22efd68 | jonathan++ | src/stage0/ (6 files):
18:10 dalek nqp/ctmo: Update bootstrap.
18:10 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/22efd687c6
18:10 dalek nqp/ctmo: 184a976 | jonathan++ | src/ModuleLoader.pm:
18:10 dalek nqp/ctmo: The dumbest GLOBAL merger that could possibly work (TM). Seems it actually will handle what NQP needs - or at least, it doesn't complain about anything.
18:10 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/184a976c2e
18:10 dalek nqp/ctmo: 2882b8e | jonathan++ | src/ModuleLoader.pm:
18:10 dalek nqp/ctmo: Make sure multiple uses of the same module won't run into issues.
18:10 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/2882b8ef5a
18:10 dalek nqp/ctmo: e46af01 | jonathan++ | src/ModuleLoader.pm:
18:10 dalek nqp/ctmo: A symbol can never conflict with itself.
18:10 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/e46af01858
18:10 dalek nqp/ctmo: 57da2ce | jonathan++ | src/NQP/Actions.pm:
18:10 dalek nqp/ctmo: Extend find_lex, which finds a compile-time known lexical, to find_sym, which knows how to look in packages too.
18:10 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/57da2ce61d
18:10 dalek nqp/ctmo: 772f1f5 | jonathan++ | src/HLL/SerializationContextBuilder.pm:
18:10 dalek nqp/ctmo: Fix a thinko.
18:10 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/772f1f5f2a
18:16 rohit_nsit08 joined #parrot
18:25 Eduardow left #parrot
18:32 theory left #parrot
18:36 ShaneC1 left #parrot
18:47 whiteknight joined #parrot
18:49 ShaneC joined #parrot
18:50 bubaflub joined #parrot
19:10 whiteknight good afternoon, #parrot
19:10 tadzik good evening whiteknight
19:10 whiteknight how are you doing today tadzik ?
19:11 tadzik whiteknight: not bad. Looking around in the Java world
19:11 whiteknight did you ever get a prognosis on your wrist?
19:12 tadzik somewhat. They removed my cast, looked at the hand, "oh, looks fine", and I'm free now
19:12 tadzik it still misses some functionalities (rapid moves, funny angles), but works quite good
19:13 whiteknight okay, that's better than it could be
19:13 whiteknight just treat it gingerly
19:13 rohit_nsit08 left #parrot
19:15 tadzik yeah, I'm taking care
19:19 plobsing whiteknight: does your recent IMCC work fix TT #1610?
19:19 whiteknight plobsing: I don't know, let me take a look
19:20 whiteknight I think that ticket may be invalid now
19:20 whiteknight IMCC doesn't pass errors through that string anymore
19:20 whiteknight exceptions are caught by the next available handler
19:20 dalek parrot-instrument: 5fc6951 | Whiteknight++ | src/dynpmc/instrument.pmc:
19:20 dalek parrot-instrument: initial_pf -> current_pf, following the packfile_wrap merge
19:20 dalek parrot-instrument: review: https://github.com/Whiteknight/pa​rrot-instrument/commit/5fc6951bed
19:23 mj41 left #parrot
19:24 dalek parrot/tt1931-nci-parameters-deprecation: 74b5665 | plobsing++ | / (4 files):
19:24 dalek parrot/tt1931-nci-parameters-deprecation: use positive values for PARROT_DATA_TYPE
19:24 dalek parrot/tt1931-nci-parameters-deprecation:
19:24 dalek parrot/tt1931-nci-parameters-deprecation: Negative values were used to support multi-dispatch. This code smell has been
19:24 dalek parrot/tt1931-nci-parameters-deprecation: moved closer to the source and will eventually be eliminated.
19:24 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/74b5665fb9
19:24 dalek parrot/tt1931-nci-parameters-deprecation: 22c5c84 | plobsing++ | / (3 files):
19:24 dalek parrot/tt1931-nci-parameters-deprecation: add ref_flag to native type system to denote pass-by-reference
19:24 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/22c5c84c53
19:24 dalek parrot/tt1931-nci-parameters-deprecation: f2268bb | plobsing++ | / (7 files):
19:24 dalek parrot/tt1931-nci-parameters-deprecation: eliminate nci_sig_elem_t, unifying NCI and StructView with PARROT_DATA_TYPE specifications
19:24 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/f2268bb49c
19:24 dalek parrot/tt1931-nci-parameters-deprecation: 4e962eb | plobsing++ | src/nci/extra_thunks. (2 files):
19:24 dalek parrot/tt1931-nci-parameters-deprecation: eliminate deprecated pass-by-reference types from extra thunklib
19:24 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/4e962eb248
19:24 dalek parrot/tt1931-nci-parameters-deprecation: 23f7de0 | plobsing++ | src/nci/ (2 files):
19:24 dalek parrot/tt1931-nci-parameters-deprecation: remove support for deprecated "2", "3", "4", and "V" nci signature types
19:24 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/23f7de0848
19:24 dalek parrot/tt1931-nci-parameters-deprecation: 858f6ce | plobsing++ | / (3 files):
19:24 dalek parrot/tt1931-nci-parameters-deprecation: eliminate tests for removed NCI signature types
19:24 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/858f6ce609
19:24 dalek parrot/tt1931-nci-parameters-deprecation: 21f81fb | plobsing++ | tools/dev/nci_thunk_gen.pir:
19:24 dalek parrot/tt1931-nci-parameters-deprecation: remove deprecated types from thunk generator
19:24 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/21f81fb1bc
19:24 dalek parrot/tt1931-nci-parameters-deprecation: cf941a9 | plobsing++ | config/gen/opengl.pm:
19:24 dalek parrot/tt1931-nci-parameters-deprecation: avoid generating unsupported signatures
19:24 dalek parrot/tt1931-nci-parameters-deprecation: review: https://github.com/parrot/parrot/commit/cf941a9e06
19:24 dalek nqp/ctmo: c15d820 | moritz++ | build/Makefile.in:
19:24 dalek nqp/ctmo: [build] fix whitespaces in Makefile.in
19:24 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/c15d820fcc
19:25 theory joined #parrot
19:35 bacek joined #parrot
19:51 wagle left #parrot
19:52 wagle joined #parrot
20:09 dalek nqp/ctmo: da7760a | jonathan++ | src/ (3 files):
20:09 dalek nqp/ctmo: Add a --module-path option so we can make sure we load the correct module during the bootstrap.
20:09 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/da7760a24c
20:09 dalek nqp/ctmo: e67c854 | jonathan++ | build/Makefile.in:
20:09 dalek nqp/ctmo: Build Regex.pbc in the stages, like everything else. Also add a bunch of dependencies to try and get things a bit more honest. May go some way to helping the parallel build also.
20:09 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/e67c854e13
20:19 SHODAN left #parrot
20:20 wagle left #parrot
20:28 dalek Rosella/test_asserter: 6bba47e | Whiteknight++ | src/test/TestFactory.winxed:
20:28 dalek Rosella/test_asserter: fix asserter so it actually works now
20:28 dalek Rosella/test_asserter: review: https://github.com/Whiteknig​ht/Rosella/commit/6bba47e994
20:28 dalek Rosella/test_asserter: 333957d | Whiteknight++ | src/test/Asserter.winxed:
20:28 dalek Rosella/test_asserter: remove debugging statements
20:28 dalek Rosella/test_asserter: review: https://github.com/Whiteknig​ht/Rosella/commit/333957d08c
20:28 dalek Rosella/test_asserter: b64e098 | Whiteknight++ | src/test/Asserter.winxed:
20:28 dalek Rosella/test_asserter: +comments about what Asserter is
20:28 dalek Rosella/test_asserter: review: https://github.com/Whiteknig​ht/Rosella/commit/b64e09826b
20:32 dalek Heuristic branch merge: pushed 200 commits to nqp/match-nom by jnthn
20:33 dalek parrot-instrument: 4e61e4a | Whiteknight++ | src/dynpmc/instrumentgc.pmc:
20:33 dalek parrot-instrument: fix instrument.t to pass tests
20:33 dalek parrot-instrument: review: https://github.com/Whiteknight/pa​rrot-instrument/commit/4e61e4acfa
20:42 whiteknight blah. Somewhere along the line Parrot-Instrument is corrupting the memory pools
20:42 whiteknight and it's not just doing it on GMS, it's also doing it on MS2
20:43 whiteknight so I have no idea what the hell is going on with that
20:49 dalek nqp/match-nom: b39657f | jonathan++ | / (5 files):
20:49 dalek nqp/match-nom: Various twiddles to bring that was done in the original match-nom branch up to date with the latest changes in ctmo.
20:49 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/b39657f91f
20:50 soh_cah_toa whiteknight: yay, gsoc hasn't even begun and already my project has bugs. whoopie!
20:51 theory left #parrot
20:56 whiteknight soh_cah_toa: yeah, we don't want to get your hopes up
20:56 whiteknight soh_cah_toa: if it were easy, there would be no money involved
20:57 soh_cah_toa whiteknight: yeah, i'm prepared for some resistance though
20:57 soh_cah_toa whiteknight: 330 ohms to be exact
20:58 soh_cah_toa whiteknight: all part of the learning process, i suppose
21:12 whiteknight don't worry. One way or another Parrot-Instrument will be fixed and working soon
21:12 dalek nqp/match-nom: 6677389 | jonathan++ | src/Regex/Cursor-builtins.pir:
21:12 dalek nqp/match-nom: Restore some DEBUG capabilities.
21:12 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/6677389462
21:12 dalek nqp/match-nom: e886b7e | jonathan++ | src/Regex/Match.pir:
21:12 dalek nqp/match-nom: Fix a probable copy-pasto. Also toss some useless :vtable declarations - we set those up via the meta-object now.
21:12 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/e886b7e663
21:12 whiteknight I don't have a goat to sacrifice to the gods of debugging yet, but I found an interested seller on craigs list
21:13 jrtayloriv joined #parrot
21:13 whiteknight I've got chickens of course, but the GDB gods don't like poultry as much
21:16 soh_cah_toa i should have included that in my proposal: "week 3 - sacrifice mentor to the gods of debugging"
21:16 ambs left #parrot
21:17 ShaneC left #parrot
21:18 whiteknight blah. I just configured with --no-line-directives, and there are clearly #line directives in the imccompiler.c file
21:18 whiteknight clearly
21:18 whiteknight realclean, reconfigure, rebuild, and they are clearly still there
21:20 whiteknight msg kid51 I just configured with --no-line-directives (realclean, reconfigure, rebuild) and there are many #line directives in src/pmc/*.c on my system
21:20 aloha OK. I'll deliver the message.
21:23 plobsing I hate it when that happens. I've been tempted on more than one such occasion to simply remove #line-directive support from pmc2c
21:24 whiteknight I posted a ticket about it, and the ticket was closed
21:25 whiteknight I would *love* if pmc2c was mangled to remove #line directives
21:25 rohit_nsit08 joined #parrot
21:25 whiteknight they are absolutely useless and even counter-productive when debugging
21:26 rohit_nsit08 whiteknight: hi
21:26 whiteknight hello rohit_nsit08
21:32 whiteknight plobsing: actually, unless you are already in the middle of it, I'm going to make that change right now
21:33 plobsing whiteknight: nah. I'm knee deep in NCI ATM
21:33 whiteknight plobsing: oh, anything fun?
21:33 plobsing well, if you're looking for goodies, I'm implementing a more generic replacement call-by-reference mechanism
21:34 plobsing otherwise, it is mostly rip-out and patch-up
21:35 whiteknight nice, sounds fun
21:35 whiteknight I'm always looking for goodies, and I know you always deliver :)
21:38 theory joined #parrot
21:38 whiteknight plobsing: I want to get to work on some of the serialization needs of Rakudo soon, I don't know what your schedule is
21:38 dalek parrot: 6eb1def | Whiteknight++ | / (19 files):
21:38 dalek parrot: fix conflict
21:38 dalek parrot: review: https://github.com/parrot/parrot/commit/6eb1def92a
21:38 dalek parrot: 327b110 | Whiteknight++ | lib/Parrot/Pmc2c/Emitter.pm:
21:39 dalek parrot: remove #line directives from pmc2c. They serve no positive purpose that I can think of, they make debugging significantly more difficult, and they don't always disappear when I configure with --no-line-directives
21:39 dalek parrot: review: https://github.com/parrot/parrot/commit/327b110f8a
21:39 dalek parrot: 1cd8ab2 | Whiteknight++ | t/src/extend_vtable.t:
21:39 dalek parrot: Merge branch 'master' of github.com:parrot/parrot
21:39 dalek parrot: review: https://github.com/parrot/parrot/commit/1cd8ab2c48
21:39 plobsing whiteknight: I've been out of parrot for a couple of weeks. Has that issue become a pressing one?
21:39 plobsing I was going to cleanup the NCI deprecations and implement some new features, but I can finish this off and move on to that.
21:39 whiteknight plobsing: no more pressing than it has been. There was a thread on the p6 list a few days ago complaining about bytecode size, and some people blamed it on Parrot's inferior serialization technologies
21:40 whiteknight plobsing: what new features?
21:40 dalek nqp/match-nom: 48e3d16 | jonathan++ | src/HLL/Grammar.pm:
21:40 dalek nqp/match-nom: We don't implement the string-returning keyed variants of the v-table yet; just work around that, since the values for now are all stored boxed anyway, so it doesn't matter to much where we unbox.
21:40 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/48e3d16f37
21:40 dalek nqp/match-nom: ad848d0 | jonathan++ | src/ops/nqp.ops:
21:40 plobsing hmmm... I'm not on the p6 list.
21:40 dalek nqp/match-nom: Make sure we really do consider all available Parrot v-table indexes when building the overloads array; we missed some off the end.
21:40 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/ad848d0305
21:40 dalek nqp/match-nom: 8b9383f | jonathan++ | src/pmc/sixmodelobject.pmc:
21:40 dalek nqp/match-nom: Make unshift_pmc and push_pmc overridable.
21:40 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/8b9383f362
21:40 dalek nqp/match-nom: af53a9b | jonathan++ | src/core/NQPCapture.pm:
21:40 dalek nqp/match-nom: Override unshift_pmc and push_pmc in NQPCapture.
21:40 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/af53a9b0b0
21:40 plobsing whiteknight: can you FWD: me the convo?
21:40 whiteknight plobsing: yessir
21:41 jnthn__ I suspect it may be the op stream so much as the object serialization, fwiw.
21:42 plobsing new NCI features: general-purpose call-by-ref, long long, u?int64, long double
21:42 jnthn__ ooh :)
21:42 jnthn__ plobsing++
21:42 whiteknight plobsing: http://www.nntp.perl.org/group/per​l.perl6.users/2011/04/msg1504.html
21:43 whiteknight that's the thread, you can see all the responses
21:43 whiteknight I don't know why the pbc file sizes are so large. I haven't looked into it myself
21:43 whiteknight 10 MB does seem exorbitant
21:43 whiteknight but then again, we aren't optimizing, aren't doing any kind of dead code elimination, etc
21:44 plobsing chromatic did a comparison of runtime sizes of rakudo vs. perl5. once you factor in the added functionality, the disparity decreases.
21:44 plobsing I suspect the on-disk size is much the same
21:44 whiteknight Still, 10MB of bytecode for the Rakudo compiler does seem like a hell of a lot
21:44 whiteknight somewhere along the line, somebody is being wasteful
21:45 whiteknight as much as I would love to blame the rakudo folks and wash my hands of it, I think it would be better to do some due-diligence and explore
21:49 jnthn__ I'm sure Rakudo take some of the blame. OTOH, the fact that the bytecode file doubles in size when you're on a 64-bit machine, or that we have ops that could easily be represented in 16 bits but use 32 or 64 bits for them, is part of the issue, I suspect.
21:50 plobsing there is some cost in the excessive size of ops themselves. If we provided dedicated routines for serialization/deserialization of INTVALS (in stead of depending on sizeof opcode_t == sizeof INTVAL), we could reduce opcode_t to uint16.
21:50 jnthn__ Well, maybe not doubles, but along those lines.
21:50 whiteknight yes, cutting opcode_t down to uint16 would have an immediately beneficial impact on all target machines
21:51 whiteknight would we lose tons of performance doing INTVAL lookups instead of including them directly in the opstream?
21:51 plobsing whiteknight: yes, but not as much as you might think. most of the size of perl6.pbc is locked away in the constants table, which would remain unaffected.
21:51 whiteknight is it really most of the size?
21:51 whiteknight is there an easy way to get size measurements?
21:51 plobsing whiteknight: those dispatches would be branch predicted and effectively cost-free
21:52 plobsing whiteknight: when I reduced the cost of complex object graphs, perl6.pbc reduced in size by 2/3
21:52 plobsing that was *entirely* a consttable improvement
21:53 plobsing every sub, every namespace, every pcc call, they're all constants
21:53 whiteknight oi vey
21:53 whiteknight and I know Rakudo uses three buttloads of subs
21:54 plobsing subs are *very* heavy
21:54 dalek parrot: a4f3037 | petdance++ | src/pmc/boolean.pmc:
21:54 dalek parrot: quiet an unused interp warning
21:54 dalek parrot: review: https://github.com/parrot/parrot/commit/a4f3037400
21:54 dalek parrot: 8906192 | petdance++ | src/pmc/iterator.pmc:
21:54 dalek parrot: quiet an unused interp warning
21:54 dalek parrot: review: https://github.com/parrot/parrot/commit/8906192dd4
21:56 whiteknight jnthn__: I wanted to ask you, why can't the core.pm compilation be broken down into individual files and compiled separately
21:56 whiteknight ?
21:56 whiteknight jnthn__: I don't think that would make the build any faster, but the user would get more progress indication
21:57 plobsing every sub references { a namespace pmc, a multisig pmc, an outer sub pmc, a lexinfo pmc, start offset integer, end offset integer, flags integer, a name string, a method name string, a namespace entry string, an hll id name string, a compilation flags integer, a vtable index, 4 registure use integers, and a subid integer }
21:58 whiteknight oh, okay. So that's clearly a big FAIL in terms of space-efficiency
21:59 plobsing only accounting for the size of the reference (not the backing store for the refered object), that is 18 words (72 bytes 32-bit, 144 bytes 64-bit)
22:00 jnthn__ whiteknight: The issue is that it's not just a module of classes, but rather it forms the outer lexical scope of the program, and needs to be a single lexical scope. It's tricky to find a way to do that when it's multiple compilation units in size.
22:01 jnthn__ s/in size//
22:01 plobsing and then there is the innefficiency of strings storage in PBC. every string is aligned to an opcode_t offset. most strings are less than 8 bytes, so inefficient on 64-bit. if we stored all the strings together, we could pack them much more tightly.
22:02 plobsing in fact, we store almost all of our strings in a single strings-table subsection of the const-table, so we're already mostly there.
22:04 plobsing to make the strings improvement (likely the simplest), I would rewrite PBC serialization to work in terms of ropes in stead of streams.
22:05 plobsing we could eliminate half ot the ImageIO types at the same time.
22:08 wagle joined #parrot
22:08 wagle left #parrot
22:08 dalek nqp/match-nom: af16e75 | jonathan++ | src/core/NQPCapture.pm:
22:08 dalek nqp/match-nom: Implement .list and .hash on NQPCapture.
22:08 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/af16e75423
22:08 dalek nqp/match-nom: 354eff8 | jonathan++ | src/HLL/Grammar.pm:
22:08 dalek nqp/match-nom: Fix an earlier fix. D'oh.
22:08 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/354eff89b7
22:10 wagle joined #parrot
22:10 wagle left #parrot
22:17 plobsing the thing is, though, that this on-disk size cost does not translate significantly into startup time costs or memory-usage costs
22:17 plobsing well the heavy-weight-subs thing also costs in terms of memory, but mostly no
22:18 plobsing we read the PBC in a linear fashion, so any half-smart OS will prefetch the pages. the pages are read-only-clean, and can be shared between arbitrarily many rakudo processes.
22:19 wagle joined #parrot
22:20 sorear how much of the PBC data has to be copied to be used?
22:20 sorear my understanding is that the point of the PBC format was that it *didn't* have to be read on startup *at all*
22:20 dalek nqp/match-nom: 15a19ea | jonathan++ | src/core/NQPCapture.pm:
22:20 dalek nqp/match-nom: Unfortunately, we rely on the semantics of Capture returning PMCNULL; mimic that for now in NQPCapture. This is the last bug that stood in the way of NQP completely building on match-nom. No test regressions either! No speed win, though that's not entirely surprising at this point - there's several known sub-optimalities. moritz++ for most of the work on match-nom.
22:21 dalek nqp/match-nom: review: https://github.com/perl6/nqp/commit/15a19eaf00
22:25 plobsing the object graph needs to get built. there are basically 4 kinds of thing in PBC - integer, float, buffer, and reference. only buffers (mostly strings and bytecode) aren't copied.
22:26 plobsing fortunately, those tend to constitute most of PBC.
22:26 dalek nqp/ctmo: 05aa5ed | jonathan++ | / (117 files):
22:26 dalek nqp/ctmo: Merging ctmo into match-nom.
22:26 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/05aa5ed8d7
22:26 dalek nqp/ctmo: b39657f | jonathan++ | / (5 files):
22:26 dalek nqp/ctmo: Various twiddles to bring that was done in the original match-nom branch up to date with the latest changes in ctmo.
22:26 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/b39657f91f
22:26 dalek nqp/ctmo: 6677389 | jonathan++ | src/Regex/Cursor-builtins.pir:
22:26 dalek nqp/ctmo: Restore some DEBUG capabilities.
22:26 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/6677389462
22:26 dalek nqp/ctmo: e886b7e | jonathan++ | src/Regex/Match.pir:
22:26 dalek nqp/ctmo: Fix a probable copy-pasto. Also toss some useless :vtable declarations - we set those up via the meta-object now.
22:26 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/e886b7e663
22:26 dalek nqp/ctmo: 48e3d16 | jonathan++ | src/HLL/Grammar.pm:
22:26 rohit_nsit08 left #parrot
22:26 dalek nqp/ctmo: We don't implement the string-returning keyed variants of the v-table yet; just work around that, since the values for now are all stored boxed anyway, so it doesn't matter to much where we unbox.
22:26 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/48e3d16f37
22:26 dalek nqp/ctmo: ad848d0 | jonathan++ | src/ops/nqp.ops:
22:27 dalek nqp/ctmo: Make sure we really do consider all available Parrot v-table indexes when building the overloads array; we missed some off the end.
22:27 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/ad848d0305
22:27 dalek nqp/ctmo: 8b9383f | jonathan++ | src/pmc/sixmodelobject.pmc:
22:27 dalek nqp/ctmo: Make unshift_pmc and push_pmc overridable.
22:27 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/8b9383f362
22:27 dalek nqp/ctmo: af53a9b | jonathan++ | src/core/NQPCapture.pm:
22:27 dalek nqp/ctmo: Override unshift_pmc and push_pmc in NQPCapture.
22:27 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/af53a9b0b0
22:27 dalek nqp/ctmo: af16e75 | jonathan++ | src/core/NQPCapture.pm:
22:27 dalek nqp/ctmo: Implement .list and .hash on NQPCapture.
22:27 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/af16e75423
22:27 dalek nqp/ctmo: 354eff8 | jonathan++ | src/HLL/Grammar.pm:
22:27 dalek nqp/ctmo: Fix an earlier fix. D'oh.
22:27 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/354eff89b7
22:27 dalek nqp/ctmo: 15a19ea | jonathan++ | src/core/NQPCapture.pm:
22:27 dalek nqp/ctmo: Unfortunately, we rely on the semantics of Capture returning PMCNULL; mimic that for now in NQPCapture. This is the last bug that stood in the way of NQP completely building on match-nom. No test regressions either! No speed win, though that's not entirely surprising at this point - there's several known sub-optimalities. moritz++ for most of the work on match-nom.
22:27 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/15a19eaf00
22:27 jnthn__ Aww, I didn't write enough patches in the branch to trigger the branch merge heuristic.
22:28 plobsing wouldn't you look for commits with multiple parents (rather than a lot of commits) to detect a branch merge?
22:29 whiteknight it's not a "branch merge" heuristic so much as a "don't flood the damn IRC channel" heuristic
22:29 whiteknight it's just pooly named
22:29 whiteknight poorly*
22:29 plobsing ah
22:32 dalek nqp/ctmo: dccac63 | jonathan++ | src/stage0/ (7 files):
22:32 dalek nqp/ctmo: Update bootstrap.
22:32 dalek nqp/ctmo: review: https://github.com/perl6/nqp/commit/dccac638e2
22:43 rohit_nsit08 joined #parrot
22:51 whiteknight "Since I lost my organ of hearing and my doctors wrote to
22:51 whiteknight me on a paper that I have only few months to live, It is my last wish to see that
22:51 whiteknight the $4.5 Million I have in the bank should be used to build a charity organization
22:51 whiteknight on my name in your Country in order to help the poor and motherless babies."
22:51 whiteknight the spam parrot-dev is receiving is starting to hit the theoretical upper-threshold of maximum sympathy
22:52 whiteknight we're already starting to cross over into the realm of hilarious absurdity
22:54 whiteknight every time a spam filter checks string literals, the spammers find a thesaurus
22:55 whiteknight and then "ear" -> "my organ of hearing" and "orphans" -> "poor and motherless babies"
22:57 whiteknight http://blogs.fedoraproject.org/wp/​sgallagh/2010/03/17/why-you-should​-use-talloc-for-your-next-project/
23:07 hudnix joined #parrot
23:10 lucian_ left #parrot
23:56 soh_cah_toa "my organ of hearing"? that's hilarious
23:57 soh_cah_toa i've always wondered if there are still people out there stupid enough to fall for messages like that
23:59 soh_cah_toa i mean, what are spammers thinking when they are writing stuff like this? "oh yeah. this is good stuff. they are totally gonna fall for this one. suckers..."

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

Parrot | source cross referenced