Camelia, the Perl 6 bug

IRC log for #parrot, 2011-02-21

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:07 whiteknight Coke: I don't know how to reproduce #2022
00:07 whiteknight Coke: I was looking at it earlier but wasn't able to reproduce
00:16 vmspb left #parrot
00:20 bacek_at_work left #parrot
00:29 benabik joined #parrot
00:32 benabik left #parrot
00:42 Kulag left #parrot
00:43 Kulag joined #parrot
01:08 bacek_at_work joined #parrot
01:10 kurahaupo left #parrot
01:27 lucian_ joined #parrot
01:27 lucian left #parrot
01:33 lucian_ left #parrot
01:35 whiteknight kid51: ping
01:38 kurahaupo joined #parrot
01:44 kid51 pong
02:03 nopaste "kid51" at 192.168.1.3 pasted "t/src/extend_vtable.t failure" (21 lines) at http://nopaste.snit.ch/33424
02:07 whiteknight kid51: I ended up solving my own problem
02:07 whiteknight I was trying to figure out how to use POSTMORTEM, but I was forgetting to export
02:08 bubaflub moritz++ for the logging in #cardinal
02:16 kid51 Very strange:  That failure in t/src/extend_vtable.t is inconsistent.
02:17 Tene dukeleto: I don't seem to have admin privs on github.com/parrot/cardinal/ so i can't set dalek up to report cardinal commits to #cardinal
02:17 Tene dukeleto: I'm rpetty sure it was you who imported the cardinal repo into the parrot org?
02:18 whiteknight kid51: I'm having a problem on the whiteknight/imcc_compreg_pmc branch you might be able to help me with.
02:18 whiteknight t/pmc/io_stdin.t uses Parrot::Test and has some PIR tests in it, but isn't outputting PIR temporary files
02:19 whiteknight I've never seen a Perl-based test run PIR code without outputting a temporary file
02:20 whiteknight like, I would expect to see it generate a t/pmc/io_stdin_1.pir , _2.pir, _3.pir file, etc
02:20 kid51 give me a minute to get to that branch. am trying to debug what I just pasted
02:21 whiteknight I assume the behavior may be the same in master
02:23 dalek parrot/kid51/tt1049_make: 1d4c268 | jkeenan++ | config/gen/makefiles/root.in:
02:23 dalek parrot/kid51/tt1049_make: Use MAKE_C instead of MAKE insider Makefile.
02:23 dalek parrot/kid51/tt1049_make: review: https://github.com/parrot/parrot/commit/1d4c26863f
02:27 gbacon joined #parrot
02:28 kid51 whiteknight: Why would you expect temporary files in a test of STDIN?
02:29 whiteknight kid51: how does it execute that PIR code?
02:29 whiteknight For all other tests with PIR code, it outputs the code to a temporary .pir file and executes that
02:29 whiteknight see, for instance, t/pmc/io_status_6.pir, from t/pmc/io_status.t
02:30 whiteknight I don't know how else it would execute that code
02:32 whiteknight when I do "perl t/pmc/io_stdin.t", the tests all segfault for some reason. When I copy that PIR code out to a test file and run it directly, no segfault and the test passes perfectly
02:32 whiteknight so I'm really trying to figure out how that test works
02:32 kid51 Beats me! (I haven't looked at that file before and --dirty secret -- don't know much about testing PIR)
02:33 kid51 But, you are correct in that, in master, no .pir or .pasm files are created while running t/pmc/io_stdin.t
02:34 kid51 But note, in contrast, t/pmc/io.t.
02:34 whiteknight okay. And that's the only Perl-testing-PIR file I've seen which dosen't use that behavior
02:35 kid51 In every stanza there, I see:
02:35 kid51 $P1 = new ['FileHandle']
02:35 kid51 $P1.'open'(temp_file, "w")
02:35 kid51 $P1.'print'("Hello, World!\n")
02:35 kid51 $P1.'close'()
02:35 kid51 ... which suggests to me that there's no magic about the creation of the temporary files.
02:35 kid51 In contrast, I don't see that in io_stdin.t
02:36 bubaflub whiteknight and kid51: looks like it's using a specially written function in lib/Parrot/Test.pm
02:36 bubaflub line 577
02:36 kid51 pir_stdin_output_is
02:37 bubaflub yeah, which eventually calls another function which calls a function in Parrot::Test::Util 'create_tempfile'
02:37 whiteknight right. And as soon as we start looking at Perl code, I go cross-eyed
02:39 whiteknight bubaflub: okay, so it is writing out to a temporary file, just not the same kind of temporary file as all other PIR tests use
02:39 whiteknight awesome
02:39 bubaflub yeah
02:39 bubaflub it's doing some other magic catching the output and piping the input
02:39 bubaflub but not many other places seem to use that
02:39 bubaflub and you're right - if there are PIR or PASM tests in a Perl5 test, they all get generated first
02:39 bubaflub and then run by Parrot
02:40 whiteknight bubaflub, kid51: I have to head to bed now. Thanks for looking at that. Maybe I'll be able to fix that test failure tomorrow
02:40 kid51 Testing STDIN is tricky; I wrote a CPAN module about that about 8 years ago
02:40 whiteknight yeah
02:40 dalek parrot/whiteknight/imcc_compreg_pmc: 2660abe | Whiteknight++ | t/src/extend.t:
02:40 dalek parrot/whiteknight/imcc_compreg_pmc: fix t/src/extend.t failures.
02:40 dalek parrot/whiteknight/imcc_compreg_pmc:
02:40 dalek parrot/whiteknight/imcc_compreg_pmc: These two tests rely on the existence of a PIR compreg. After TT #1967 and TT #1868 we don't assume it is always available, especially not in an embedding or extending situation.
02:40 dalek parrot/whiteknight/imcc_compreg_pmc: review: https://github.com/parrot/parrot/commit/2660abec19
02:40 dalek parrot/whiteknight/imcc_compreg_pmc: 2a317d9 | Whiteknight++ | t/src/embed.t:
02:40 dalek parrot/whiteknight/imcc_compreg_pmc: fix t/src/embed.t
02:40 dalek parrot/whiteknight/imcc_compreg_pmc:
02:40 dalek parrot/whiteknight/imcc_compreg_pmc: Same as the last commit, we don't always have a PIR compreg, so we can't write tests that assume one exists. Either we can remove these tests or we can update them to properly instantiate an IMCCompiler PMC
02:41 dalek parrot/whiteknight/imcc_compreg_pmc: review: https://github.com/parrot/parrot/commit/2a317d902c
02:41 dalek parrot/whiteknight/imcc_compreg_pmc: e319462 | Whiteknight++ | src/pmc/imccompiler.pmc:
02:41 dalek parrot/whiteknight/imcc_compreg_pmc: don't force the HLL namespace to 0. I don't know why old IMCC was doing that, we shouldn't cargo-cult it.
02:41 dalek parrot/whiteknight/imcc_compreg_pmc: review: https://github.com/parrot/parrot/commit/e319462cff
02:41 whiteknight goodnight
02:41 whiteknight left #parrot
02:45 dalek cardinal: f5b5c30 | bubaflub++ | src/classes/Range.pir:
02:45 dalek cardinal: fixes ranges that are exclusive
02:45 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/f5b5c3040f
02:51 contingencyplan left #parrot
02:57 Kulag left #parrot
02:57 Kulag joined #parrot
03:03 dalek cardinal: 4f73472 | bubaflub++ | src/classes/Array.pir:
03:03 dalek cardinal: off by one error, fix Array slices with ranges
03:03 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/4f73472df3
03:04 rdesfo left #parrot
03:06 bacek_at_work dukeleto, was it you who tried likely/unlikely macros for parrot?
03:17 dalek cardinal: 5c9aa2c | bubaflub++ | src/classes/Array.pir:
03:17 dalek cardinal: fix another off by one error with Range and Array slices
03:17 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/5c9aa2c0f0
03:25 atrodo bacek_at_work> ping
03:41 mtk left #parrot
03:46 mtk joined #parrot
03:47 cotto ~~
03:49 dalek cardinal: 0f1b377 | bubaflub++ | TODO:
03:49 dalek cardinal: notice about rewriting object model in 6model
03:49 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/0f1b377912
03:51 bacek_at_work atrodo, pong
03:51 bacek_at_work atrodo, barely here
03:52 atrodo bacek_at_work> Yes, isparrotfastyet is mine
03:52 bacek_at_work atrodo, good. Which test are you using for "perl6-bench"?
03:52 bacek_at_work aloha, isparrotfastyet.com?
03:52 aloha bacek_at_work: I have no idea.
03:52 bacek_at_work aloha, isparrotfastyet.com is owned by atrodo
03:52 aloha bacek_at_work: Okay.
03:53 atrodo bacek_at_work> *.p6 in perl6/bench-scripts
03:54 bacek_at_work atrodo, ah, ok. Is it hard to split it into individual graphs?
03:55 bacek_at_work atrodo, and actually *.pl are also perl6
03:55 Tene I don't see any changes on that graph recently; does it have a data point for the new gc?
03:55 bacek_at_work Tene, it should...
03:56 atrodo I can try to split them.  It was faster at the time to just do the *.p6, since most of the *.pl made the entire test set take entirely too long
04:03 atrodo Yea, I'll try to mess with it tomorrow and see what I can come up with
04:04 atrodo But if anyone has any better tests to run, I'd be glad to add them to the list
04:04 bacek_at_work atrodo, can you also change oofib test to pass something like 30 as argument. Default 24 is too small
04:04 atrodo Sure, I can see how that does
04:18 dalek parrot/origin/kid51/tt1049_make: 929972a | jkeenan++ | config/gen/makefiles/root.in:
04:18 dalek parrot/origin/kid51/tt1049_make: Add an explicit assignment to $MAKE.
04:18 dalek parrot/origin/kid51/tt1049_make: review: https://github.com/parrot/parrot/commit/929972a749
04:18 dalek parrot/kid51/tt1049_make: 929972a | jkeenan++ | config/gen/makefiles/root.in:
04:18 dalek parrot/kid51/tt1049_make: Add an explicit assignment to $MAKE.
04:18 dalek parrot/kid51/tt1049_make: review: https://github.com/parrot/parrot/commit/929972a749
04:21 nopaste "kid51" at 192.168.1.3 pasted "diff of kid51/tt1049_make against its branch point" (75 lines) at http://nopaste.snit.ch/33425
04:24 dalek TT #2025 created by jkeenan++: tools/dev/ops_not_tested.pl: Program no longer runs: libraries missing
04:24 dalek TT #2025: http://trac.parrot.org/parrot/ticket/2025
04:24 dalek cardinal: e875d26 | bubaflub++ | src/classes/Range.pir:
04:24 dalek cardinal: hopefully the last fix for Range and off by one errors
04:24 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/e875d2663f
04:28 nopaste "bacek" at 192.168.1.3 pasted "atrodo, this is "perl6-bench" benchmark on my box." (57 lines) at http://nopaste.snit.ch/33426
04:28 bacek_at_work atrodo, there is few long running tests. E.g. anagram, pick-words.
04:33 kid51 left #parrot
04:34 gbacon left #parrot
04:35 dalek parrot/ptrbuf: 181544b | plobsing++ | lib/Parrot/Pmc2c/P (2 files):
04:35 dalek parrot/ptrbuf: add PMC_HEADER_PREAMBLE section to PMC grammar
04:35 dalek parrot/ptrbuf:
04:35 dalek parrot/ptrbuf: This allows declarations to be inserted before all PMC supporting definitions,
04:35 dalek parrot/ptrbuf: allowing changes in behaviour. An example of where this might be desirable is
04:35 dalek parrot/ptrbuf: user-defined typedefs in attributes.
04:35 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/181544bf60
04:35 dalek parrot/ptrbuf: 48506be | plobsing++ | src/pmc/ptr (3 files):
04:35 dalek parrot/ptrbuf: implement 3 levels of pointer-type objects
04:35 dalek parrot/ptrbuf:
04:35 dalek parrot/ptrbuf: Ptr - baseline pointerish function. big nastygram in description to fight feature creep.
04:35 dalek parrot/ptrbuf: PtrBuf - can also keeps track of size
04:35 dalek parrot/ptrbuf: PtrObj - can also clone and manage memory
04:35 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/48506be984
04:35 dalek parrot/ptrbuf: eafa11a | plobsing++ | include/parrot/datatypes.h:
04:35 dalek parrot/ptrbuf: move bit and nybble handling to unsigned
04:35 dalek parrot/ptrbuf:
04:35 dalek parrot/ptrbuf: bits are unsigned by definition (otherwise they'd just be signed nothingness)
04:35 dalek parrot/ptrbuf: nybbles are hard to do signed (hardware and compiler support are uncommon) and not really all that useful.
04:35 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/eafa11af08
04:35 dalek parrot/ptrbuf: ec609ac | plobsing++ | include/parrot/datatypes.h:
04:35 dalek parrot/ptrbuf: add union type
04:35 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/ec609ace93
04:35 dalek parrot/ptrbuf: 5aeabf5 | plobsing++ | include/parrot/datatypes.h:
04:35 dalek parrot/ptrbuf: eliminate unused type flags for DPOINTER and BIGINT
04:36 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/5aeabf5c31
04:36 dalek parrot/ptrbuf: dd8f285 | plobsing++ | include/parrot/datatypes.h:
04:36 dalek parrot/ptrbuf: add alignment field to data type description
04:36 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/dd8f2850f5
04:36 dalek parrot/ptrbuf: ab0f1b8 | plobsing++ | include/parrot/datatypes.h:
04:36 dalek parrot/ptrbuf: list_new is long gone but the concept of arbitrarily sized object is still useful
04:36 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/ab0f1b81e8
04:36 dalek parrot/ptrbuf: 3357e4f | plobsing++ | compilers/imcc/ (4 files):
04:36 dalek parrot/ptrbuf: allow PMC registers to be used in keys
04:36 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/3357e4f917
04:36 dalek parrot/ptrbuf: cf5ccfb | plobsing++ | / (2 files):
04:36 dalek parrot/ptrbuf: implement StructView PMC to view pointers as struct and union type objects
04:36 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/cf5ccfb846
04:36 dalek parrot/ptrbuf: 15e98d6 | plobsing++ | / (2 files):
04:36 dalek parrot/ptrbuf: add support for explicitly sized types to StructView
04:36 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/15e98d650c
04:36 dalek parrot/ptrbuf: d393725 | plobsing++ | t/pmc/pmc.t:
04:36 dalek parrot/ptrbuf: flag StructView as not possible to init() (only init_pmc() is supported)
04:36 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/d3937253db
04:39 dalek parrot/ptrbuf: f66e491 | plobsing++ | / (132 files):
04:39 dalek parrot/ptrbuf: Merge branch 'master' into ptrbuf
04:39 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/f66e491559
04:48 bubaflub goodnight #parrot
04:48 bubaflub left #parrot
04:54 bacek_at_work seen moritz
04:54 aloha moritz was last seen in #parrot 19 hours 9 mins ago saying "msg bubaflub done, see http://irclog.perlgeek.de/cardinal/today".
04:54 bacek_at_work msg moritz Can I have commit bit to perl6/bench-scripts ?
04:54 aloha OK. I'll deliver the message.
04:59 atrodo bacek_at_work> correct, that's why I trimmed the list a bit
05:00 bacek_at_work atrodo, still only 8-9 minutes to run. Is it running on your box?
05:01 atrodo generally, not a whole lot else
05:13 * bacek_at_work is thinking about buying dedicated hosting for parrot-related projects. E.g. "benchmarking", etc.
05:41 plobsing_ left #parrot
06:14 rurban_ joined #parrot
06:17 rurban left #parrot
06:17 rurban_ is now known as rurban
06:32 dukeleto ~~
06:33 dukeleto bacek_at_work: i will gladly take small donations. I plan on setting up Jitterbug for parrot and HLLs on my new linode, as well as something for benchmarks
06:33 dukeleto bacek_at_work: just haven't had enough JDFI lately
06:34 bacek_at_work dukeleto, ok :)
06:34 dukeleto bacek_at_work: if you need a box to do benchmarks, talk to mj41
06:34 dukeleto bacek_at_work: he has a beefy box that run some of the taptinder clients
06:34 bacek_at_work dukeleto, I'm thinking about "semi-proper speed.pypy.com port to parrot"
06:34 dukeleto bacek_at_work: yes, i have the same thoughts
06:36 bacek_at_work hmm... speed.pypy.org code is available at https://github.com/tobami/codespeed
06:37 dukeleto bacek_at_work: that is quite nice
06:38 dukeleto bacek_at_work: it even had documentation
06:38 dukeleto s/had/has/
06:38 bacek_at_work and samples
06:38 dukeleto bacek_at_work: i am familiar with django, i think i can set that up for parrot
06:39 bacek_at_work I think we can host server next to smolder. With client submitting results from other boxes.
06:39 dukeleto bacek_at_work: you have to be very careful about comparing benchmark data across machines
06:39 dukeleto bacek_at_work: atrodo has isparrotfastyet.com
06:39 bacek_at_work dukeleto, I know :)
06:51 bacek_at_work Wow, codespeed has nice admin interface.
06:51 bacek_at_work And sample how to submit data.
06:51 bacek_at_work We can definitely use it for our benchmarking
06:54 dukeleto bacek_at_work: django comes with that admin interface. I dig it.
06:54 dukeleto # Exception is: type 36 severity 2 message 'remove_role() not implemented in class 'Class''
06:55 dukeleto really? Class doesn't know how to remove roles?
06:55 dukeleto bacek_at_work: does that seem right to you?
06:55 bacek_at_work dukeleto, no. But I don't like our current Class/Object implementation anyway
06:56 bacek_at_work dukeleto, and there is no .remove_role in Class PMC anyway
06:57 bacek_at_work afk # going home
06:59 dukeleto seems like only Object has a remove_role
07:17 moritz msg bacek commit access to perl6/bench-scripts granted
07:17 aloha OK. I'll deliver the message.
07:25 dukeleto cotto: ping
07:32 fperrad joined #parrot
07:45 kurahaupo left #parrot
07:58 theory left #parrot
08:02 cosimo left #parrot
08:16 bacek ~~
08:16 bacek moritz, thanks
08:22 lucian joined #parrot
08:31 jnthn remove_role doesn't make much sense to me, fwiw.
08:31 jnthn Not sure how we ended up with it.
08:31 dip joined #parrot
08:32 dip left #parrot
08:33 dip joined #parrot
08:34 dip left #parrot
08:35 fperrad left #parrot
08:50 dalek parrot/leto/embed_grant: 07377ca | dukeleto++ | t/src/extend_vtable.t:
08:50 dalek parrot/leto/embed_grant: Comment out cmp_pmc test so we can merge to master
08:50 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/07377ca572
08:50 dalek parrot/leto/embed_grant: 4626a1e | dukeleto++ | t/src/extend_vtable.t:
08:50 dalek parrot/leto/embed_grant: [t] Parrot_PMC_(add|remove)_attribute
08:50 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/4626a1ecf1
08:50 dalek parrot/leto/embed_grant: 1106ad2 | dukeleto++ | t/src/extend_vtable.t:
08:50 dalek parrot/leto/embed_grant: [t] Parrot_PMC_(add|remove)_method
08:50 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/1106ad2386
08:50 dalek parrot/leto/embed_grant: c668feb | dukeleto++ | t/src/extend_vtable.t:
08:50 dalek parrot/leto/embed_grant: [t] Parrot_PMC_(add|remove)_parent
08:50 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/c668feb58e
08:50 dalek parrot/leto/embed_grant: cdf2e76 | dukeleto++ | t/src/extend_vtable.t:
08:50 dalek parrot/leto/embed_grant: [t] Parrot_PMC_add_role
08:50 dalek parrot/leto/embed_grant:
08:50 dalek parrot/leto/embed_grant: The Class PMC has the add_role vtable but not the remove_role vtable.
08:50 dalek parrot/leto/embed_grant: This seems broken.
08:50 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/cdf2e769bd
08:50 dalek parrot/leto/embed_grant: 612ec78 | dukeleto++ | src/pmc/pmcproxy.pmc:
08:50 dalek parrot/leto/embed_grant: Make PMCProxy invalid type error more useful
08:50 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/612ec787dc
08:58 JimmyZ joined #parrot
09:44 ShaneC left #parrot
09:49 preflex left #parrot
09:51 contingencyplan joined #parrot
09:53 preflex joined #parrot
09:55 Kulag left #parrot
09:56 Kulag joined #parrot
10:13 JimmyZ left #parrot
10:20 lucian left #parrot
11:42 dalek parrot/opsc_full_parse: 83f0ce9 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
11:42 dalek parrot/opsc_full_parse: Break grammar. Start implementing "C" parsing.
11:42 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/83f0ce9957
11:42 dalek parrot/opsc_full_parse: 0f30979 | bacek++ | t/compilers/opsc/01-parse-body.t:
11:42 dalek parrot/opsc_full_parse: Add op body parsing test.
11:42 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/0f30979348
11:42 dalek parrot/opsc_full_parse: 04917a9 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
11:42 dalek parrot/opsc_full_parse: Parse simple variable declarations
11:42 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/04917a9214
11:42 dalek parrot/opsc_full_parse: 987367a | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
11:42 dalek parrot/opsc_full_parse: Use EXPR magic for parsing
11:42 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/987367a2d4
12:01 dalek parrot/opsc_full_parse: b3d8b5e | bacek++ | / (2 files):
12:01 dalek parrot/opsc_full_parse: Add more grammar. 'Inspired' by NQP and Squaak
12:01 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/b3d8b5e5d3
12:01 dalek parrot/opsc_full_parse: d3dbf7d | bacek++ | t/compilers/opsc/01-parse-body.t:
12:01 dalek parrot/opsc_full_parse: Add more tests.
12:01 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/d3dbf7d081
12:01 dalek parrot/opsc_full_parse: 39ab83b | bacek++ | / (2 files):
12:01 dalek parrot/opsc_full_parse: Implement infix:,
12:01 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/39ab83bfbb
12:11 lucian joined #parrot
12:23 dalek parrot/opsc_full_parse: f67b3f1 | bacek++ | t/compilers/opsc/01-parse-body.t:
12:23 dalek parrot/opsc_full_parse: Reogrinze test slightly.
12:23 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/f67b3f1183
12:23 dalek parrot/opsc_full_parse: d644f6a | bacek++ | / (2 files):
12:23 dalek parrot/opsc_full_parse: Convert 'old' macro handling to new style
12:23 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/d644f6a066
13:02 dalek parrot/opsc_full_parse: 961efe1 | bacek++ | t/compilers/opsc/01-parse-body.t:
13:02 dalek parrot/opsc_full_parse: Add test for if-else
13:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/961efe172c
13:02 dalek parrot/opsc_full_parse: 07832ac | bacek++ | / (2 files):
13:02 dalek parrot/opsc_full_parse: Implement casting
13:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/07832ac66f
13:02 dalek parrot/opsc_full_parse: 6b1dcb9 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
13:02 dalek parrot/opsc_full_parse: Add more infix/prefix tokens.
13:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/6b1dcb9882
13:02 dalek parrot/opsc_full_parse: 44d75c8 | bacek++ | t/compilers/opsc/01-parse-body.t:
13:02 dalek parrot/opsc_full_parse: Add test for bin ops
13:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/44d75c8e41
13:02 dalek parrot/opsc_full_parse: ac4a7a1 | bacek++ | t/compilers/opsc/01-parse-body.t:
13:02 dalek parrot/opsc_full_parse: Add commented out final big test
13:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/ac4a7a1a00
13:02 dalek parrot/opsc_full_parse: 4dfb10a | bacek++ | / (2 files):
13:02 dalek parrot/opsc_full_parse: Fix pointer access
13:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/4dfb10aae1
13:02 dalek parrot/opsc_full_parse: d65d6b9 | bacek++ | t/compilers/opsc/01-parse-body.t:
13:02 dalek parrot/opsc_full_parse: Add more tests.
13:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/d65d6b9a0b
13:02 dalek parrot/opsc_full_parse: 87542e1 | bacek++ | t/compilers/opsc/01-parse-body.t:
13:02 dalek parrot/opsc_full_parse: Add tests for bin assignement
13:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/87542e1137
13:15 bluescreen joined #parrot
13:16 dalek parrot/opsc_full_parse: 9b37fe4 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
13:16 dalek parrot/opsc_full_parse: Add (untested) while and for
13:16 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/9b37fe4b39
13:16 dalek parrot/opsc_full_parse: af258e5 | bacek++ | t/compilers/opsc/01-parse-body.t:
13:16 dalek parrot/opsc_full_parse: Add (failing) test for space between function name and arguments.
13:16 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/af258e5e6d
13:16 dalek parrot/opsc_full_parse: dc47ac7 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
13:16 dalek parrot/opsc_full_parse: Consume funcall args as term:identifier
13:16 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/dc47ac7c0c
13:16 dalek parrot/opsc_full_parse: 1fec042 | bacek++ | t/compilers/opsc/01-parse-body.t:
13:16 dalek parrot/opsc_full_parse: Uncomment "Final Big Test". It's passing now.
13:16 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/1fec042f06
13:17 dalek parrot: 359f1d0 | (Gerd Pokorra)++ | config/gen/makefiles/root.in:
13:17 dalek parrot: change the build order
13:17 dalek parrot: review: https://github.com/parrot/parrot/commit/359f1d05fb
13:31 dalek parrot/opsc_full_parse: de0e293 | bacek++ | t/compilers/opsc/01-parse-body.t:
13:31 dalek parrot/opsc_full_parse: Add more tests.
13:31 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/de0e2931e0
13:31 dalek parrot/opsc_full_parse: f7f45b3 | bacek++ | / (2 files):
13:31 dalek parrot/opsc_full_parse: Add ternary op
13:31 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/f7f45b3e8c
13:31 dalek parrot/opsc_full_parse: 215a73b | bacek++ | / (2 files):
13:31 dalek parrot/opsc_full_parse: Implement circumfix:() to handle casting properly
13:31 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/215a73b445
13:32 whiteknight joined #parrot
13:33 plobsing joined #parrot
13:35 Hackbinary good afternoon #parrot
13:41 dalek parrot/opsc_full_parse: 4aaa21e | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
13:41 dalek parrot/opsc_full_parse: Comment out DEBUG
13:41 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/4aaa21e657
13:41 dalek parrot/opsc_full_parse: 025da50 | bacek++ | / (2 files):
13:41 dalek parrot/opsc_full_parse: Blockoid finish statement
13:41 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/025da5076e
13:42 whiteknight good morning, Hackbinary
13:42 whiteknight and good morning, #parrot
13:42 bacek msg cotto I created skeleton for semantic parsing of body ops. Feel free to finish it :)
13:42 aloha OK. I'll deliver the message.
13:42 bacek Good night, humans.
13:42 gbacon joined #parrot
13:43 Hackbinary good night bacek
13:53 dalek TT #615 closed by whiteknight++: portable runtime
13:53 dalek TT #615: http://trac.parrot.org/parrot/ticket/615
13:53 dalek TT #620 closed by whiteknight++: optimization language (past-level)
13:53 dalek TT #620: http://trac.parrot.org/parrot/ticket/620
13:55 kid51 joined #parrot
14:09 dalek TT #617 closed by jkeenan++: embedded device version, nanoparrot
14:09 dalek TT #617: http://trac.parrot.org/parrot/ticket/617
14:09 dalek TT #614 closed by whiteknight++: llvm jit backend
14:09 dalek TT #614: http://trac.parrot.org/parrot/ticket/614
14:09 dalek TT #613 closed by whiteknight++: JIT
14:09 dalek TT #613: http://trac.parrot.org/parrot/ticket/613
14:09 kid51 Good morning #parrot
14:10 kid51 whiteknight, bacek Thanks for looking at those tickets
14:13 mikehh getting failures with t/src/extend_vtable.t test 2 - it is inconsistent - ran prove a bunch of times, failed about a half  the time)
14:14 rurban_ joined #parrot
14:17 rurban left #parrot
14:17 rurban_ is now known as rurban
14:17 kid51 mikehh: I was getting that last night.  But I was getting it in a branch and I thought it was due to something I was doing in the branch.
14:17 kid51 Are you getting it in master?
14:17 kid51 If so, then that's a real bug.  I didn't appear to be getting it in master.
14:18 mikehh kid51: I see gerd++ modified the test since I pulled - let me check that
14:19 kid51 See http://trac.parrot.org/parrot/ticket/1049 for where I was encountering it
14:22 whiteknight kid51: Thanks for bringing some of them to my attention
14:23 kid51 whiteknight: Can I nudge you toward a look at http://trac.parrot.org/parrot/ticket/1948 ?
14:25 dalek parrot: 875f5bc | mikehh++ | src/gc/gc_gms.c:
14:25 dalek parrot: remove some warnings (in both gcc/g++)
14:25 dalek parrot: review: https://github.com/parrot/parrot/commit/875f5bc99b
14:27 whiteknight kid51: Yeah, I'll have to do some tests
14:27 whiteknight I may be mistaken in that regard
14:28 nopaste "kid51" at 192.168.1.3 pasted "t/src/extend_vtable.t: Non-deterministic results" (71 lines) at http://nopaste.snit.ch/33505
14:29 kid51 mikehh: Confirmed:  Results inconsistent and mostly bad.
14:31 whiteknight awesome
14:31 kid51 Am opening TT
14:35 kid51 Assigning to dukeleto 'cause he's been working on these.  His inline comments suggest that the tests are NQRFPT.
14:39 mikehh I am not quite sure I follow the test - it tests for > 0 (should it be 42?) to pass
14:40 mikehh thats == 42 I think
14:40 kid51 I don't either, but it's the same approach he took for several tests
14:41 kid51 I played around with it last night.  The value of 'integer' changes from one run to the next.
14:41 kid51 Usually it's very large.
14:41 whiteknight can you nopaste the code for that test?
14:41 whiteknight ( I can't look at it locally right now)
14:42 dalek TT #2026 created by jkeenan++: t/src/extend_vtable.t: Non-deterministic results
14:42 dalek TT #2026: http://trac.parrot.org/parrot/ticket/2026
14:42 nopaste "kid51" at 192.168.1.3 pasted "t/src/extend_vtable.t" (1199 lines) at http://nopaste.snit.ch/33506
14:43 whiteknight okay, which one of those tests is failing?
14:43 kid51 lines 165++
14:44 kid51 The most frequently observed failure is that only "Done" gets printed -- not "Got hash"
14:45 plobsing how do I get checkdepend.t to stop complaining about grandparent-PMC header inclusion?
14:45 whiteknight okay, that test is wrong
14:46 whiteknight the hashvalue of a PMC is not necessarily related to it's contents. It's not really something that we can test, other than to prove that we get *a* value and that it doesn't throw an exception or segfault
14:46 whiteknight but if integer is an INTVAL instead of a UNINTVAL, it could easily be negative
14:47 kid51 Last night I played around with a Parrot_printf call to report the value of 'integer'.  I mostly got large unsigned positive values, but once got a large signed negative value.
14:47 whiteknight that number is going to change because the interp hash seed changes
14:48 whiteknight the variable "integer" in that test is an INTVAL, I think. Not a UINTVAL
14:48 plobsing pmc hashing depends on the hash seed? I thought that was just for strigns.
14:48 whiteknight plobsing: look at src/pmc/default.pmc:hashvalue
14:48 whiteknight it takes the string representation of the PMC and hashes that
14:48 plobsing ah. it all makes sense now.
14:49 whiteknight I won't say that "this is stupid". I will imply it loudly
14:49 plobsing that seems like a silly way for most objects to hash themselves.
14:49 whiteknight not seems like
14:49 whiteknight "is"
14:50 whiteknight considering that distinct PMCs with different data but the same string value suddenly have the same hash value
14:50 plobsing integer, for example, could bit-manipulate based on a random source
14:50 plobsing simplest being xor, although that might have some weak hash properties
14:51 whiteknight a general hashing algorithm would probably hash the contents of the PMC* structure and also the Parrot_*_attributes structure
14:52 whiteknight and since the size of the attributes structure is stored in the vtable, that's simple to do
14:52 plobsing whiteknight: not true.
14:52 plobsing manual_attrs
14:52 whiteknight no, that's true. In those cases the user should supply a hashvalue override, or live with a weaker hash
14:53 whiteknight but if we had a hashing function that took a seed, a pointer, and a size, we could make hashing easy and better than it currently is
14:53 whiteknight let the users sort it out themselves
14:54 plobsing they can already. it's a bit of a PITA, but you can take a pointer+length, turn it into a binary string, and hash that.
14:54 plobsing or roll your own hash algo
14:54 plobsing in fact, the later is probably easier
14:55 PacoLinux joined #parrot
15:02 whiteknight Do we want to require the use of strings for general hashing?
15:03 whiteknight it seems like a waste to have to create a string temporary for every value we want to hash
15:03 whiteknight and if we need to perform multi-stage hashing of values with multiple pointers, that becomes an even bigger expense
15:03 plobsing no. we conflate buffer-like with string too much already. immutable strings make horrible buffers
15:03 whiteknight right. So we shouldn't be telling people to turn data into binary strings for hashing
15:04 plobsing I'm not so sure about recursing down pointers. Hashing should be shallow by default.
15:07 whiteknight plobsing, you would only recurse as far as the user specified.
15:08 whiteknight for an RPA, for instance, we would probably want to hash the PMC*, the PMC->data*, and the PMC->data->array* portions, because any of those things could reasonably change and change the hash value
15:08 whiteknight but we wouldn't want to chase pointers any further than that
15:08 whiteknight so we wouldn't want to hash the individual data pmcs in the array or anything
15:09 plobsing but PMC->data->array is unique to the RPA. those aren't shared. you get as much value from hashing that as you would from just hashing the address of the PMC.
15:10 plobsing *assuming no copying collector
15:11 whiteknight well, it depends what we want the hash to be
15:12 whiteknight is it an identifier of a unique PMC, or a representation of that PMC's current data
15:12 plobsing If the user has to specify what to hash and how to recurse, why not provide a shallow buffer-hashing function and let them do the recursion. KISS.
15:12 lucian left #parrot
15:13 plobsing whiteknight: IMO, a custom hashing override allows value-ish types to collide with equivalently valued types of the same kind (intentionally of course). most types are references and are unique compared to all other instances.
15:14 whiteknight if we're interested in getting a unique value for each PMC that fits into an integer, it seems like we could just take the value of it's PMC *
15:14 whiteknight it's a strategy that gives us unique values for each PMC, at least until we all get quantum memory
15:14 plobsing yes, that's what I'm beginning to think should be the default
15:15 whiteknight so default:hash_value is "return (INTVAL)SELF"?
15:15 plobsing return interp->hash_seed ^ (INTVAL)SELF
15:15 whiteknight even better
15:16 plobsing return Parrot_hash_buffer(INTERP, &SELF, sizeof (PMC *))
15:16 whiteknight The benefit there is that not only is the hash more sane and less prone to collisions for PMCs with equivalent data, but it's much much faster
15:16 whiteknight we have that?
15:16 whiteknight (Parrot_hash_buffer)?
15:17 plobsing hypothetical shallow buffer-hashing function
15:17 lucian joined #parrot
15:18 plobsing it would not be hard to write.
15:19 plobsing just factor it out of fixed8_hash
15:22 whiteknight I think that would be a very valuable tool for us to have, long-term
15:23 whiteknight and has the benefit that if we pull it out into a single function, it becomes trivial to plug in new hash-engines
15:32 cotto_work ~~
15:36 cotto_work dukeleto: pong
15:54 JimmyZ joined #parrot
16:02 dalek parrot: adafa9f | (Gerd Pokorra)++ | tools/dev/nci_thunk_gen.pir:
16:02 dalek parrot: change to new JSON language API
16:02 dalek parrot: review: https://github.com/parrot/parrot/commit/adafa9f7d8
16:05 ttbot Parrot adafa9f7 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25766
16:06 JimmyZ Gerd Pokorra, you changed it and reverted it yesterday
16:07 cotto_work seen gerd
16:07 aloha gerd was last seen in #parrot 5 days 20 hours ago saying "it is:  ...@perl.org".
16:11 ttbot Parrot adafa9f7 darwin-thread-multi-2level make error http://tt.taptinder.org/cmdinfo/25786
16:11 ttbot Parrot adafa9f7 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25795
16:12 plobsing looks like that new JSON API isn't quite ready yet
16:12 plobsing or possibly we need some makefile dependancies there
16:14 cotto_work Did that get a mention on parrot-dev or in here?
16:17 Patterner left #parrot
16:17 Psyche^ joined #parrot
16:17 Psyche^ is now known as Patterner
16:18 dalek parrot/ptrbuf: 761c9a9 | plobsing++ | t/codingstd/c_macro_args.t:
16:18 dalek parrot/ptrbuf: expand macro-argument type loophole to include ALIGN_OF
16:18 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/761c9a95d3
16:18 dalek parrot/ptrbuf: 2ab64cf | plobsing++ | include/parrot/datatypes.h:
16:18 dalek parrot/ptrbuf: [codingstd] c_indent
16:18 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/2ab64cf3ab
16:18 dalek parrot/ptrbuf: c264306 | plobsing++ | include/parrot/datatypes.h:
16:18 dalek parrot/ptrbuf: [codingstd] trailing_space
16:18 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/c264306ed9
16:18 dalek parrot/ptrbuf: 55c4db2 | plobsing++ | MANIFEST:
16:18 dalek parrot/ptrbuf: mk_manifest_and_skip
16:18 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/55c4db22d0
16:18 dalek parrot/ptrbuf: 2ac830f | plobsing++ | MANIFEST.generated:
16:18 dalek parrot/ptrbuf: add newly created PMCs to installation list
16:18 dalek parrot/ptrbuf: review: https://github.com/parrot/parrot/commit/2ac830f0fe
16:22 whiteknight plobsing: how is that ptrbuf work going?
16:26 plobsing 4 new types: Ptr, PtrBuf, PtrObj, and StructView
16:27 plobsing Ptr is basic pointer. supports an efficient "thin" representation using manual_attrs. PtrBuf is still pretty small but keeps track of length. PtrObj has hooks for GC and cloning.
16:28 plobsing StructView can be used to look into any pointer-ish object. It supports struct-layout, union-layout, and custom-layout.
16:29 plobsing Layouts are specified using array-ish integer aggregates (FIA recommended but not required)
16:30 plobsing elements in the viewed pointer are looked up by index, no named lookup is builtin (but can be built on top)
16:30 plobsing to get/set a value, keyed-lookup is used
16:30 plobsing the general pattern StructView[PointerPMC; Index]
16:31 plobsing thus, the representation is decoupled from the pointer
16:32 JimmyZ left #parrot
16:32 plobsing bounds-checking is planned but not yet implemented
16:33 whiteknight okay, that's very nice
16:33 whiteknight so are we going to get rid of UnmanagedStruct, ManagedStruct, Pointer, and other garbage soon?
16:34 plobsing those require a dep cycle.
16:35 plobsing when I'm "done" the branch, I'll put out an RFC. If all goes well, we'll lose those in 3.4.
16:35 whiteknight here's hoping all goes well
16:35 NotFound C cover results looks great on a table in vertical position.
16:37 plobsing my current obstacle is that checkdepends/makefile-generation does not handle more than one level of inheritance, and so the checkdepend test fails.
16:38 plobsing PtrObj inherits from PtrBuf which inherits from Ptr
16:39 whiteknight I hate that checkdepend test
16:39 whiteknight absolutely hate it
16:40 cotto_work whiteknight: why?
16:40 cotto_work It's helped the build, even if it's excessively picky.
16:41 fperrad joined #parrot
16:43 plobsing cotto_work: you've been following jnthn's nom work. do you think that the StructView I just described is suitable for use for handling REPRs?
16:44 plobsing oh hey, jnthns online too.
16:44 plobsing jnthn: ^^
16:44 kid51 left #parrot
16:45 jnthn plobsing: o/
16:45 jnthn plobsing: Are these being build for M0, ooc?
16:45 jnthn plobsing: Or for general use?
16:46 * jnthn reads back a bit to check he understands the StructView thing correctly...
16:46 plobsing they're for whatever uses them. they're going to land well before Lorito and are intended to make C-interfacing less painful.
16:46 theory joined #parrot
16:47 jnthn They look lovely for doing better NCI :)
16:48 plobsing what about native attributes? are they suitable? if not, what do they need?
16:48 jnthn I think they may well be applicable there too.
16:49 jnthn It's the same problem space, pretty much.
16:49 jnthn brb
16:54 jnthn back
16:54 jnthn plobsing: I can imagine that it'd be possible to implement reprs in terms of those PMCs.
16:55 whiteknight jnthn: I think I may be misunderstanding what 6model provides. I thought 6model provided parametric roles and class composition
16:55 whiteknight or am I conflating 6model with the things that are using 6model?
16:55 jnthn whiteknight: The latter, though I've not broken things out all that cleanly yet in the coe base either.
16:55 jnthn *code
16:57 whiteknight jnthn: If I want to read through the 6model code right now, where's the best place to do that? It's been a while since I read it, and I've lost my bearings
16:57 whiteknight perl6/nqp/src/pmc/*?
16:57 whiteknight or is there a different repo I should be staring at?
16:59 whiteknight perl6/nqp/src/metamodel/*?
16:59 jnthn whiteknight: First, read https://github.com/jnthn/6mo​del/blob/master/overview.pod
16:59 jnthn whiteknight: Ignore the rest of that repo, but that doc is useful.
16:59 whiteknight ok
16:59 jnthn whiteknight: Best is to start in src/metamodel/rakudoobject.h
16:59 whiteknight ok
16:59 jnthn (Which is going to be renamed.)
17:00 jnthn I dunno what to call the thing. :)
17:00 atrodo magicobject?
17:00 jnthn NQPObject makes it too...NQP-specific.
17:00 whiteknight parrotobject.h :)
17:00 jnthn SMObject sounds too painful...
17:00 dalek parrot: 843d7c6 | NotFound++ | t/pmc/fixedpmcarray.t:
17:00 dalek parrot: more test coverage for cannot autovivify
17:00 dalek parrot: review: https://github.com/parrot/parrot/commit/843d7c6841
17:00 jnthn 6MObject isn't a valid identifier. :)
17:00 atrodo SixMObject?
17:01 jnthn Oh, that could work.
17:01 atrodo Object6M?
17:01 jnthn Or that. :)
17:01 jnthn Well, it's just a bit of renaming at some point, anyways.
17:01 jnthn But there's nothing Rakudo-specific - or even close - to rakudoobject.h. The name comes from an initial research prototype.
17:03 ttbot Parrot 843d7c68 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25833
17:04 whiteknight jnthn: So if I'm reading this code correctly, the REPRCommonalities structure basically replaces the VTABLE we have in Parrot right now
17:04 jnthn whiteknight: Well, apart from it only has one pointer in it. ;)
17:05 whiteknight the REPRCommonalities I am looking at in rakudoobject.h has about two dozen function pointers
17:05 jnthn Oh, REPR!
17:05 jnthn Sorry, I mis-read :)
17:06 jnthn REPR is only concerned with representation/storage issues.
17:06 ttbot Parrot 843d7c68 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25844
17:06 jnthn It doesn't have any responsibility related to method dispatch, for example.
17:06 jnthn You could see it as a partial replacement for some of the things in the Parrot v-table.
17:06 whiteknight okay, so the combination of REPRCommonalities and STable are equivalent to VTABLE?
17:06 whiteknight minus the mass amounts of crft
17:06 whiteknight cruft
17:06 jnthn That's closer, yeah.
17:07 lucian left #parrot
17:07 jnthn The splitting up of those two bits is what allows for representation polymorphism.
17:11 whiteknight okay, what I'm not seeing is how we initialize a repr PMC, or a rakudoobject PMC
17:11 whiteknight neither of those types appear to use PMC inheritance and neither override VTABLE_init
17:12 jnthn whiteknight: Correct. See ops.nqp, especially instance_of. But the short answer is that it just calls REPR->instance_of
17:12 whiteknight okay, so where does a new repr come from?
17:13 jnthn moment, phone call...
17:15 NotFound_b joined #parrot
17:15 ttbot Parrot 843d7c68 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25864
17:18 gbacon left #parrot
17:24 dukeleto ~~
17:27 jsut_ joined #parrot
17:28 cotto_work dukeleto: pong
17:31 jsut left #parrot
17:38 jnthn whiteknight: Back. The reprs are initialized at startup time, there's just a simple registry of them. They're not something one would tend to write very often, unlike meta-objects. Since there's not that many conceivable, desirable storage strategies.
17:38 whiteknight okay. Where does that startup initialization happen?
17:38 whiteknight I'm just trying to get a sense of how things happen end-to-end
17:39 jnthn whiteknight: Initialization is currently triggered by a dynop, which in turn calls RakudoObject_initialize(PARROT_INTERP)
17:39 jnthn In rakudoobject.c
17:39 jnthn It calls a few other things.
17:39 jnthn One is to set up the REPR registry
17:39 jnthn The other is to bootstrap the one core meta-object.
17:40 dukeleto cotto_work: have you taken a look at my m0-spec recent additions?
17:41 lucian joined #parrot
17:41 lucian left #parrot
17:42 lucian joined #parrot
17:43 cotto_work dukeleto: only briefly.  Yesterday was nuts.
17:43 cotto_work On my todo list is to troll through that conversation we had Saturday evening and make sure that everything gets added to the pdd.
17:44 mtk left #parrot
17:46 dalek parrot/whiteknight/imcc_compreg_pmc: 38e910c | Whiteknight++ | compilers/imcc/imc (2 files):
17:46 dalek parrot/whiteknight/imcc_compreg_pmc: pass imcc instead of imcc->interp to IMCC_fataly. This fixes a test segfault, but the test in question (t/compilers/imcc/syn/file.t) still fails for an unknown reason
17:46 dalek parrot/whiteknight/imcc_compreg_pmc: review: https://github.com/parrot/parrot/commit/38e910c9aa
17:47 dukeleto cotto_work: i think just about everything we talked about made it into there
17:47 dukeleto cotto_work: i feel like we are getting close to something tangible
17:49 cotto_work dukeleto: great.  I just want to double-check.  If nothing else, it'll give me another chance to think on it.
17:50 mtk joined #parrot
17:57 dukeleto cotto_work: wfm
17:57 NotFound_b left #parrot
17:58 NotFound_b joined #parrot
17:58 NotFound_b left #parrot
18:00 cotto_work dukeleto: did you check if that trac thing was really a bug?
18:01 PerlJam Who is doing work related to threads in parrot these days?  I just found a link that looks interesting: http://swtch.com/~rsc/talks/threads07/
18:04 Hackbinary left #parrot
18:07 sorear PerlJam: threads in Parrot are not currently being worked on by anyone
18:10 dukeleto PerlJam: very interesting, thanks for the heads up
18:11 dukeleto PerlJam: stealing good ideas from Plan 9 seems like a good idea.
18:12 PerlJam there are lots of links in that presentation.  Many of them to papers by Doug McIlroy.  That guy has been thinking about these issue since before the birth of Unix.
18:18 atrodo cotto_work, dukeleto, I've got a few m0-spec questsions.  Should I add questions to m0-spec or just ask out load in here?
18:21 cotto_work atrodo: do it here since we're here to discuss them
18:22 atrodo That's what I was thinking.
18:22 whiteknight PerlJam: I'm definitely thinking about threads. Not doing actual work on them right now though
18:22 atrodo It's strange.  It seems like I have a lot of questions, but having a hard time conceptualizing them.
18:24 cotto_work atrodo: if you can't form a coherent question, try hitting your keyboard with a banana for a minute or two.
18:24 atrodo wfm
18:24 atrodo m0-spec question> Will objects be able to install their own MOP, or must all objects use the same MOP
18:24 atrodo wow, strangely coherent for random typing
18:25 cotto_work bananas are powerful
18:25 PerlJam atrodo: seems to me that if they must all use the same MOP that might hinder inter-language operability.
18:25 cotto_work That's an interesting question, but I don't think it's one M0 needs to care about.
18:25 sorear ultimately, I think any approach to threading that starts at "no shared state" is a no-go for Parrot
18:26 sorear unless we *want* to not support languages that require shared-memory multiprocessing
18:26 Hackbinary joined #parrot
18:27 PerlJam cotto_work: M0 is "below" the MOP ?
18:27 sorear atrodo: What does your "MOP" stand for?
18:27 atrodo Method Object Protocol.  6model
18:28 sorear "Protocol" is your answer there
18:28 cotto_work PerlJam: correct
18:29 PerlJam good.  that means my mental model is still valid :)
18:29 cotto_work M0 should occupy the same niche that C currently does.
18:29 atrodo Then maybe the question moves up a level and it's a Lorito question
18:29 cotto_work atrodo: yup
18:29 dukeleto atrodo: M0 doesn't know what a MOP is
18:30 cotto_work Creating a new class will require accessing a meta-object.  There's no reason that more than one meta-object can't coexist.
18:30 cotto_work If it's a good idea is left as an exercise for the reader.
18:30 sorear the MOP, as I understand it, is the minimum set of common features that every PMC* has regardless of linguistic origin
18:30 dukeleto "Homework will be collected at the end of the semester"
18:30 sorear it is common by definition
18:31 sorear "create a new MOP" is something you do with a text editor; it cannot be automated
18:33 dukeleto sorear: meh.
18:33 dukeleto sorear: it comes down to semantics
18:33 dukeleto sorear: a sufficiently advanced MOP allows changing every part of it, so I agree with you. But in essence, there are an infinite number of isomorphic MOPs.
18:34 dukeleto sorear: :)
18:34 cotto_work dukeleto: I'm calling mine "Jimbo"
18:34 dukeleto cotto_work: mine is named "Joey Bagadonuts"
18:35 NotFound Gotcha them all!
18:35 Hackbinary left #parrot
18:35 atrodo I'm calling my Joebu
18:35 cotto_work I love the smell of progress in the morning.
18:35 atrodo Except when it's the afternoon
18:36 atrodo But maybe that's just me
18:37 ShaneC joined #parrot
18:40 atrodo m0-spec question> I'm going to see if I understand how to call functions correctly, in pseudo code
18:40 atrodo Ask the current context for a new context (the result is a PMC?)
18:41 atrodo Set the context's bytecode segment to the destination segement
18:41 atrodo Set the PC of the new context to the start of the function you want to call
18:42 atrodo manipulate the registers of the new context with passed arguments, including return location (1 int, 1 pmc of the current context?)
18:43 atrodo change the current context to the new context and let it take over
18:43 dukeleto atrodo: sounds roughly correct to me
18:43 dukeleto atrodo: a PMC is just a blob of memory which can be indexed into, as far as M0 knows
18:43 dukeleto cotto_work: what do you know about the hashvalue vtable?
18:44 dukeleto cotto_work: is 0 a valid hashvalue ?
18:44 dukeleto cotto_work: i am looking to understand: What is the set of possible hashvalues? What is not a valid hashvalue ?
18:46 dukeleto cotto_work: i think 0 is not a valid hashvalue, but the yak hole is deep
18:46 NotFound Are we going tointroduce NaHV ?
18:47 dukeleto NotFound: what now?
18:47 NotFound Not a Hash Value.
18:48 dalek parrot: 6786a80 | dukeleto++ | t/src/extend_vtable.t:
18:48 dalek parrot: [TT #2026] Hopefully fix intermittently failing test, which assumed positive hashvalues
18:48 dukeleto NotFound: ah.
18:48 dalek parrot: review: https://github.com/parrot/parrot/commit/6786a80460
18:49 cotto_work sorry, distracted for a minute
18:51 dukeleto cotto_work: i think i fixed it.
18:51 dukeleto cotto_work: if not, I blame you.
18:51 ttbot Parrot 6786a804 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25900
18:52 dukeleto blarg.
18:52 dukeleto "load_language" couldn't find a compiler module for the language 'JSON'
18:53 * dukeleto is glad he didn't break master
18:53 cotto_work dukeleto: looking now
18:54 ttbot Parrot 6786a804 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25911
18:54 gbacon joined #parrot
18:54 sorear how much does M0 know about PMCs?  Are they just addresses?
18:55 sorear how much does M0 differ from C--?
18:55 cotto_work dukeleto: that strikes me as a historical leftover.  Nothing seems to be using it.
18:55 cotto_work sorear: it knows as little as possible
18:58 cotto_work I haven't looked much as c--, but the goals seem to be similar
19:01 dukeleto sorear: PMCs are just regions of memory in M0, which have slots that M0 knows about
19:01 cotto_work It looks pretty researchy.  Is it used in production?
19:01 dukeleto sorear: i am not very familiar with c--
19:02 dukeleto cotto_work: there are no tests for it in parrot core, or use of it, but that doesn't mean a HLL isn't using it
19:03 dukeleto cotto_work: should we mark hashvalue as deprecated and set it up for removal?
19:03 cotto_work dukeleto: that sounds like a good idea unless we find a user making use of it
19:03 dukeleto cotto_work: if we verify that no currently-working HLL is using it, then I am fine with removing it sooner, but I think that is something that is good to keep track of in api.yaml
19:04 dukeleto cotto_work: so that automated tools will know all api changes
19:04 cotto_work dukeleto: I want to stick with the deprecation policy unless we have an extremely good reason not to.
19:04 tewk joined #parrot
19:04 Hackbinary joined #parrot
19:06 dukeleto cotto_work: i agree. no one is hurting because hashvalue hasn't been deleted yet. There is no rush.
19:06 cotto_work exactly
19:06 cotto_work gen_gc would be a good enough reason in my eyes, but we have a way around that.
19:07 dukeleto cotto_work: is there any "upgrade path" for hashtable needed?
19:07 dukeleto cotto_work: no one seems to use it, so do we need one?
19:08 cotto_work dukeleto: There's no need for an upgrade path, but if someone really likes it, it can be reimplemented as a dynpmc method.
19:08 sorear cotto_work: C--, like M0 will be, has exactly one real user
19:08 tewk Preliminary select support for parrot: https://github.com/tewk/parrot-select
19:08 sorear (Glasgow Haskell specifically)
19:09 cotto_work ghc is pretty great
19:09 cotto_work having one user means a lot more than having 0
19:11 dalek parrot: 79e2fe8 | dukeleto++ | api.yaml:
19:11 dalek parrot: [TT #2027] Add deprecation of hashvalue vtable to api.yaml
19:11 dalek parrot: review: https://github.com/parrot/parrot/commit/79e2fe8bad
19:11 dukeleto tewk: welcome back, stranger!
19:12 bluescreen left #parrot
19:14 ttbot Parrot 79e2fe8b i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25968
19:14 dukeleto quite an exciting day already...
19:15 cotto_work if by exciting, you mean build-breaking
19:15 dukeleto looks like gerd++ broke master with some JSON changes
19:15 dukeleto cotto_work: yes, that is what I meant
19:15 dukeleto i guess i should say gerd--
19:15 cotto_work I'd have fixed it if I could repro.
19:16 dukeleto cotto_work: could be a -j issue
19:18 tewk ERROR: Permission to parrot/parrot.git denied to tewk.
19:18 tewk Am I on the github commit list?
19:19 ttbot Parrot 79e2fe8b i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26002
19:19 dukeleto tewk: did you ever submit a parrot CLA? I think so, correct?
19:19 dukeleto tewk: your commit bit might not have been migrated in the Great Bit Migration
19:19 tewk I long time ago.  I had a commit bit to svn
19:19 tadzik oh, that reminds me of mine
19:19 tadzik dukeleto: did mine arrive?
19:19 dukeleto tewk: /me will fix right now
19:20 dukeleto tadzik: did you send it? ;) particle is the One Who Receives CLAs
19:20 ttbot Parrot 79e2fe8b i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/25979
19:20 ttbot Parrot 79e2fe8b darwin-thread-multi-2level make error http://tt.taptinder.org/cmdinfo/25994
19:20 tewk Is this the right syntax to push a branch to parrot github: git push origin tewk/select:tewk/select
19:20 tadzik dukeleto: yeah, looks hell like "more than a month ago" now. Shall I send a scanned one?
19:21 dukeleto tadzik: sure, email it to legal@parrot.org
19:21 dalek TT #2027 created by dukeleto++: Deprecate hashvalue vtable
19:21 dalek TT #2027: http://trac.parrot.org/parrot/ticket/2027
19:21 tadzik dukeleto: that's a Parrot CLA or a PF CLA?
19:21 tadzik dukeleto: I've sent one to the Perl Foundation
19:22 dukeleto tadzik: now you have me confused
19:22 dukeleto tewk: your bit is minty fresh!
19:22 dukeleto tewk: can you make a branch for your select pmc ?
19:23 tewk 12:15 <@tewk> Is this the right syntax to push a branch to parrot github: git push origin  tewk/select:tewk/select
19:23 dukeleto tewk: these may interest you: https://github.com/parrot/parrot/blob​/master/docs/project/git_workflow.pod
19:23 dukeleto tewk: nope, not the right syntax. But the above link should tell you all that you need.
19:23 dukeleto tewk: and if you have questions, definitely let me know
19:23 tadzik dukeleto: I've never sent a Parroc CLA. I've sent a Perl Foundation CLA to the Perl Foundation around a month ago
19:24 dukeleto tadzik: ah, well, I am the wrong person to ask about that :)
19:24 tadzik dukeleto: should I send one to PaFo?
19:24 dalek parrot/tewk/select: 2fc8fad | tewk++ | src/pmc/hash.pmc:
19:24 dukeleto tewk: right now, I think you want to clone parrot.git, then a branch, and put your select pmc commits in there
19:24 dalek parrot/tewk/select: Hash pmc gets set_pmc_keyed_int and delete_keyed_int
19:24 dalek parrot/tewk/select: review: https://github.com/parrot/parrot/commit/2fc8fadb4f
19:24 dalek parrot/tewk/select: 6df2ffa | tewk++ | / (9 files):
19:24 dalek parrot/tewk/select: Select PMC
19:24 dalek parrot/tewk/select: review: https://github.com/parrot/parrot/commit/6df2ffa971
19:24 dukeleto tadzik: sure, if you want a commit bit :)
19:25 tadzik well, another one? :P
19:25 dukeleto tadzik: can't have too many, is my philosophy
19:25 tewk dukeleto: its the right syntax, just verbose :)
19:25 tadzik how many do I have to have to win a toaster? :)
19:25 dukeleto tewk: ah, I stand corrected :) I'd never used that full syntax before
19:25 NotFound Someone needs github superpowers?
19:25 tadzik dukeleto: no, but would it be nice and legal for me to send one?
19:25 dukeleto tadzik: MAXINT
19:26 dukeleto NotFound: i just found tewk++'s commit bit under the couch cushion
19:26 NotFound I see it now.
19:27 dukeleto tewk: if you could send a quick email to parrot-dev describing what your select PMC branch does, that would be awesome. Many parrot hackers are allergic to IRC.
19:27 bluescreen joined #parrot
19:28 NotFound Or a blog post, looks more fashion these days.
19:29 tewk dukeleto: already sent.
19:31 tewk I didn't really say what it does, besides nonblocking IO.  It just adds Perl5 IO::Select like functionality
19:37 cotto_work I figured.  That sounds like a welcome addition.
19:40 whiteknight holy crap! tewk out of nowhere!
19:42 whiteknight and with a fully-formed Select PMC too, no less
19:43 lucian that plan9 thing is pretty much erlang OTP
19:44 tadzik huh?
19:45 lucian and they implement it in terms of threads anyway
19:48 bluescreen left #parrot
19:49 dukeleto lucian: OTP = ?
19:49 lucian dukeleto: erlang's VM
19:49 lucian in fact, otp is in some ways better than pike&all's thing, which appears to have evolved into go
19:51 lucian in the end, parrot will need to provide shared-memory threads
19:51 lucian otherwise HLLs won't be able to implement other things on top
19:51 tadzik dukeleto: so, should I send my CLA or not?
19:53 Hackbinary left #parrot
19:59 dukeleto tadzik: yes!
20:00 tadzik dukeleto: where is the form?
20:01 whiteknight Coke: ping
20:01 whiteknight actually, nevermind. Coke unping
20:02 tadzik dukeleto: o'right, I found it
20:02 tadzik dukeleto: am I requested to complete Schedule I?
20:02 dalek Rosella: 6999eae | Whiteknight++ | query/ (4 files):
20:02 dalek Rosella: Some prototype files for a new object-query library. Think .NET Linq, with the same bad performance but now it's on Parrot
20:02 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/6999eae971
20:03 gerd joined #parrot
20:06 gerd dukeleto: I can not reproduce the JSON error, but I do not know anything about taptinder
20:08 dukeleto gerd: i think it is something to do with parallel builds
20:08 dukeleto gerd: can you try compiling with "make -j 2" ?
20:08 dukeleto tadzik: you don't need the schedule I
20:08 gerd I will try it.
20:11 dalek TT #2014 closed by doughera++: t/tools/mk_language_shell.t might use an old installed parrot
20:11 dalek TT #2014: http://trac.parrot.org/parrot/ticket/2014
20:13 gerd dukeleto: a fresh checkout, perl Configure and make -j 2, builds fine at my host
20:14 lucian_ joined #parrot
20:15 lucian left #parrot
20:23 vmspb joined #parrot
20:29 gerd left #parrot
20:31 Hackbinary joined #parrot
20:37 Hackbinary left #parrot
20:48 Hackbinary joined #parrot
20:54 Hackbinary left #parrot
21:03 cognominal left #parrot
21:10 mj41 Fixed (html escaped) TapTinder error output http://tt.taptinder.org/cmdinfo/25763
21:15 tadzik dukeleto: cla sent
21:16 mikehh there is definately a dependency problem with make world
21:21 mikehh "load_bytecode" couldn't find file 'P6Regex.pbc' - called from Sub 'gen_sigtable' pc 1920 (tools/dev/nci_thunk_gen.pir:927)
21:22 cotto_work mikehh: how easily can you repro that?
21:22 cotto_work er, reliably
21:22 mikehh hit it a few times now
21:23 whiteknight tadzik: we've received your CLA. Thanks for the submiss
21:23 whiteknight submission
21:23 tadzik and, how do I generate html docs like those on docs.parrot.org?
21:24 tadzik whiteknight: thank you
21:24 cotto_work tadzik: make html
21:24 cotto_work it'll be in docs/html and docs/resouces
21:24 whiteknight tadzik: Process basically goes like this: At the next #ps you can be nominated. If there's a vote and we all like you, you win
21:24 cotto_work *resources
21:24 tadzik oh, I'm stupid. Thanks cotto_work
21:24 whiteknight tadzik: otherwise, you must enter the "trials". In that case you some make sure you know a good physician, and maybe a good lawyer
21:24 tadzik whiteknight: nominated to what? Win what? :)
21:24 whiteknight s/some/should/
21:25 whiteknight tadzik: nominated to be a contributor
21:25 whiteknight and win a commit bit
21:25 dalek parrot: cbdce42 | tadzik++ | examples/languages/squaak/d​oc/tutorial_episode_5.pod:
21:25 dalek parrot: Fix formatting in Squaak tutorial, episode 5
21:25 dalek parrot: review: https://github.com/parrot/parrot/commit/cbdce424a1
21:25 tadzik whiteknight: I alredy have one :)
21:26 tadzik dalek: thanks, Justin Time
21:26 whiteknight tadzik: already have one? Then why did you send in a CLA?
21:26 Hackbinary joined #parrot
21:26 tadzik whiteknight: dukeleto told me it was The Right Thing To Do
21:26 tadzik and I felt like it'd be fair
21:27 whiteknight okay then. I guess you already win
21:29 ttbot Parrot cbdce424 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26033
21:29 whiteknight left #parrot
21:30 ttbot Parrot cbdce424 darwin-thread-multi-2level make error http://tt.taptinder.org/cmdinfo/26036
21:31 ttbot Parrot cbdce424 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26045
21:34 tadzik how do you find the following deprecation detection syntax for api.yaml? http://wklej.org/id/480196/
21:35 dalek parrot/opsc_full_parse: 1cf8605 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
21:35 dalek parrot/opsc_full_parse: Add boolean && and ||
21:35 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/1cf86054b5
21:35 dalek parrot/opsc_full_parse: ad36014 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
21:35 dalek parrot/opsc_full_parse: Add shift infix
21:35 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/ad36014d33
21:35 dalek parrot/opsc_full_parse: bc4160f | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
21:35 dalek parrot/opsc_full_parse: Add '.' and prefix:&
21:35 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/bc4160f7ae
21:35 dalek parrot/opsc_full_parse: 9a335e9 | bacek++ | t/compilers/opsc/01-parse-body.t:
21:35 dalek parrot/opsc_full_parse: Add tests for (expr|goto) macros.
21:35 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/9a335e9cc4
21:35 dalek parrot/opsc_full_parse: 9a27651 | bacek++ | / (2 files):
21:35 dalek parrot/opsc_full_parse: op_macro is term, not statement
21:35 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/9a27651492
21:36 luben dukeleto cotto, if the discussion is about VTABLE_hashvalue it is used in the hash-tables. When using PMC keys we get PMC's hashvalue. Every PMC could override the default implementation in order to provide faster or more appropriate hashing.
21:38 luben Removing hashvalue vtable will give us more speed (because of less indirection) but also less flexibility
21:40 cotto_work luben: you're right.  I missed that when digging around.
21:42 cotto_work tadzik: what's the difference?
21:42 cotto_work luben: can you quickly add that to dukeleto's ticket?
21:42 luben ok
21:44 tadzik cotto_work: the regex: part is supposed to be handled by a script which checks files for possible deprecations
21:44 perlite_ joined #parrot
21:44 tadzik that'll possibly contain different regexes for different code files (pir, pasm, nqp, etc)
21:47 tadzik any idea how to access command-line arguments from nqp?
21:47 cotto_work That makes sense.  I'd make the mechanism more general, or at least be more explicit that the regex is intended to detect uses of the deprecated thing.
21:48 cotto_work you have to do some fakery with q:pir iirc.
21:48 perlite left #parrot
21:48 perlite_ is now known as perlite
21:49 vmspb left #parrot
21:49 tadzik well, my newest plan is to make it a module and run it from pir
21:49 tadzik cotto_work: what do you mean by "more general"?
21:49 cotto_work support more than one way of detecting deprecated things
21:50 tadzik so a section like detection/regex/pir?
21:50 cotto_work I'm not sure what those other detection methods would look like though, so it might be premature.
21:50 cotto_work yes
21:51 tadzik well, the idea can be abandoned if wrong. I'll try to work out something to present at #ps tomorrow
21:51 tadzik or even before
21:51 cotto_work Thanks.
21:51 cotto_work My first inclination would be inline code, but that's not ideal.
22:00 Hackbinary left #parrot
22:07 dalek nqp: 9a7d4a9 | moritz++ | src/HLL/Compiler.pm:
22:07 dalek nqp: move some code in HLL::Compiler.compile from PIR to NQP
22:07 dalek nqp: review: https://github.com/perl6/nqp/commit/9a7d4a9a92
22:07 dalek nqp: 05b3461 | moritz++ | src/HLL/Compiler.pm:
22:07 dalek nqp: rewrite method compile in NQP. A bit shorter now :-)
22:07 dalek nqp: review: https://github.com/perl6/nqp/commit/05b3461477
22:07 dalek nqp: e659566 | moritz++ | src/stage0/ (4 files):
22:07 dalek nqp: update bootstrap
22:07 dalek nqp: review: https://github.com/perl6/nqp/commit/e659566f02
22:14 rurban_ joined #parrot
22:17 rurban left #parrot
22:17 rurban_ is now known as rurban
22:25 Hackbinary joined #parrot
22:35 plobsing left #parrot
22:35 Hackbinary left #parrot
22:35 plobsing joined #parrot
22:40 dalek parrot: 40c0d36 | fperrad++ | runtime/parrot/library/TAP/Parser.pir:
22:40 dalek parrot: [TAP] use encoding utf8
22:40 dalek parrot: review: https://github.com/parrot/parrot/commit/40c0d36d97
22:42 lucian joined #parrot
22:43 lucian_ left #parrot
22:43 cosimo joined #parrot
22:43 ttbot Parrot 40c0d36d i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26098
22:47 ttbot Parrot 40c0d36d i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26110
22:48 tadzik bacek: you around?
22:48 bacek_at_work tadzik, barely
22:49 tadzik alright, will poke you tomorrow
22:50 ttbot Parrot 40c0d36d i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26123
22:50 bacek_at_work tadzik, just ask. I'll try to answer. Probably with little bit of latency
22:50 NotFound ./runtime/parrot/languages/JSON/JSON.pir is not deleted by make realclean.
22:50 NotFound That explain why we are not seeing the problem.
22:51 dukeleto NotFound: nice catch!
22:52 cotto_work the makefile rules around that file weren't very carefully written
22:52 cotto_work NotFound: thanks for finding that
22:53 NotFound Avec plaisir
22:56 NotFound Now I can't build parrot :D
23:00 Hackbinary joined #parrot
23:00 NotFound make runtime/parrot/languages/JSON/JSON.pir # does it, as expected
23:00 mikehh t/pir/pbc_fallback_1.pbc is untracked by git status and not removed by make realclean (after fulltest)
23:02 fperrad left #parrot
23:03 Hackbinary left #parrot
23:03 NotFound There is a dependence on DATA_JSON_LIB_PBCS but I don't see were is this var defined.
23:03 mikehh oh I got:
23:04 bacek_at_work NotFound, nowhere.
23:04 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#10564) fulltest) at 3_1_0-211-g79e2fe8 - Ubuntu 10.10 i386 (gcc-4.5)
23:04 NotFound Good place, there are lots of interesting things there.
23:04 mikehh but I had to run make -j world twice
23:05 * NotFound plays 'Nowhere man'
23:06 Hunger left #parrot
23:07 NotFound Same thing with JSON_LANG
23:09 whiteknight joined #parrot
23:09 kid51 joined #parrot
23:10 Hunger joined #parrot
23:11 cotto_work NotFound: compilers/data_json/Defines.mak
23:12 dalek TT #997 closed by jkeenan++: [BUG] Segmentation fault by building TGE on ppc64
23:12 dalek TT #997: http://trac.parrot.org/parrot/ticket/997
23:18 tadzik bacek_at_work: please take a look at https://github.com/tadzik/p​arrot-deprecation-detector it fails due to some YAML::Tiny error, as described in README. Help will be very welcome. It's possibly some error on my side too
23:22 NotFound The lack of dependance on JSON_LANG seems to be the main problem.
23:23 NotFound BTW, there is some reason for using a .pir file instead of a .pbc? This is against the goal of not compiling pir during load_bytecode
23:28 bacek_at_work tadzik, did you check tools/dev/resolve_deprecated.nqp ?
23:28 bacek_at_work tadzik, or I don't understand purpose of your module totally?
23:32 dalek parrot: 0c91dd2 | mikehh++ | t/src/extend_vtable.t:
23:32 dalek parrot: test needs a cast to run with g++
23:32 dalek parrot: review: https://github.com/parrot/parrot/commit/0c91dd2ad6
23:33 dalek parrot: 0986ee3 | nwellnhof++ | t/dynpmc/os.t:
23:33 dalek parrot: Skip bad cwd test on anything but Linux
23:33 dalek parrot:
23:33 dalek parrot: By suggestion from doughera++. Should fix TT #1951.
23:33 dalek parrot: review: https://github.com/parrot/parrot/commit/0986ee3495
23:34 ttbot Parrot 0c91dd2a i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26170
23:37 ttbot Parrot 0986ee34 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26190
23:39 ttbot Parrot 0986ee34 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26215
23:41 kid51 I just got that same build failure. on linux/i386 with g++ build.  Built successfully moments before that.
23:41 cotto_work NotFound: it should use a pbc
23:45 ttbot Parrot 0986ee34 i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/26240
23:47 tadzik bacek_at_work: turns out you didn't. If you check out the api.yaml in the repo, you will see the new section 'detection', or sth like this. Inside there is a regex section, with a regex for pir code. The script I'm writing will use this regex to check for deprecated constructs in pir code
23:47 bacek_at_work tadzik, ah, ok. I'll look at it closer tonight.
23:47 Andy left #parrot
23:48 tadzik thanks
23:52 dalek parrot/kid51/tt1049_make: c8ff9ee | jkeenan++ | / (2 files):
23:52 dalek parrot/kid51/tt1049_make: Apply patch contributed by doughera++ in TT #1049, then fix some tests to work with that patch.
23:52 dalek parrot/kid51/tt1049_make: review: https://github.com/parrot/parrot/commit/c8ff9eed5a
23:56 nwellnhof joined #parrot
23:57 nwellnhof ~
23:58 tadzik hello

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

Parrot | source cross referenced