Camelia, the Perl 6 bug

IRC log for #parrot, 2009-05-14

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:02 dalek parrot: r38762 | chromatic++ | trunk (3 files):
00:02 dalek parrot: [MMD] Added the appropriate namespace name to the multi_func_list structure
00:02 dalek parrot: used to initialize MULTIs defined in PMCs.  This moves yet another bit of
00:02 dalek parrot: runtime initialization to compile-time and speeds up Parrot startup by some 7%.
00:02 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38762/
00:14 bacek_ joined #parrot
00:30 darbelo cotto: ping
00:31 darbelo make all
00:31 darbelo Sorry, wrong window.
00:31 cotto darbelo, make realclean
00:32 cotto i mean pong
00:34 darbelo I have some pmc2c trouble. The generated c produces "error: structure has no member named `ctxt'" on compilation.
00:34 cotto is it committed?
00:35 darbelo no, I wanted to get it working first. I can commit if you want
00:35 cotto you could send me a patch, but there's a certain charm to breaking svn occasionally
00:35 cotto go ahead and commit
00:37 wilig joined #parrot
00:38 dalek decnum-dynpmcs: r31 | darbelo++ | trunk/ (4 files):
00:38 dalek decnum-dynpmcs: Add (non functional) global-context prototype and integrate into makefiles.
00:38 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=31
00:39 darbelo That's a fast dalek.
00:40 cotto yarly
00:40 cotto I haven't seen pmc2c explode quite like that before.  Good job.
00:41 darbelo Oh, yeah. I don't remember if pmc2c will work without the patch I sent to parrot-dev.
00:42 darbelo I have that in my parrot tree, haven't tested without.
00:42 cotto sneaky
00:42 darbelo You can just change the "union blah" to void *
00:42 darbelo more warnings, same thing
00:43 darbelo Oh wait: "ATTR void           *ctxt;" You don't need the patch at all.
00:46 cotto I'm seeing the same explodeyness with that change
00:47 darbelo The change is on decnum.pmc the 'sploding is on decnum2.pmc
00:49 darbelo I'm going out for some food in a few minutes. Be back in about an hour, with a fresh head, a full stomach, and absolutely no idea of why it 'splodes.
00:49 cotto It looks like the problem with pmc2c is that there's no decbase.dump
00:49 cotto ok.  We'll continue then.  I'll see what I can find in the meantime.
00:51 darbelo there should be a dump, from the makefile: decnum2.dump: decnum2.pmc decbase$(O)
00:52 darbelo and in turn that depends on decbase.c and decbase.dump
00:55 dalek rakudo: 1e3683e | tene++ | perl6.pir:
00:55 dalek rakudo: Work around problems caused by not being able to set an HLL on PMCs.
00:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/1​e3683e5e5afae425e3ad423f6c07721067a9a01
00:55 dalek rakudo: d7c7a67 | tene++ | src/parrot/ClassHOW.pir:
00:55 dalek rakudo: Fix another Protoobject HLL failure.
00:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​7c7a67512a4a55aa89b4c85222c8964025e96bf
00:55 darbelo Anyways, going now. Be back later.
00:55 dalek rakudo: 60c2bce | tene++ | src/ (4 files):
00:55 dalek rakudo: Fix a subid issue with list() exposed by HLL migration.
00:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​0c2bce4f27b504face9090c2dd01ab0d0d0c05e
00:55 dalek rakudo: 1b79d4f | tene++ | src/parrot/Protoobject.pir:
00:55 dalek rakudo: More Protoobject HLL fixes.
00:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/1​b79d4f381bf1fe40f5cd0845fa6e2cf1adf8e39
00:55 dalek rakudo: 4a011d6 | tene++ | src/parrot/ (2 files):
00:55 dalek rakudo: Fix metaclass and protoobject HLL bugs.
00:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​a011d64ed1f3de6d3c9a9c9dcbe0c33dbbf508d
00:55 dalek rakudo: 2a4dd87 | tene++ |  (6 files):
00:55 dalek rakudo: Fix several HLL issues.
00:55 dalek rakudo: * Put modifications to parrot;Role in the right place
00:55 dalek rakudo: * Fixes for calling Perl 6 functions from the Parrot HLL namespace
00:55 dalek rakudo: * Assorted fixes for enums
00:55 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/2​a4dd870540a4e05524ed93d9ba7b3b7f757150b
01:04 AndyA joined #parrot
01:08 DietCoke joined #parrot
01:09 Coke
01:09 Coke joined #parrot
01:10 Tene um... dalek reported those in reverse order?
01:11 Tene ?EMIT NI SDRAWKCAB GNIOG UOY ERA  !KELAD OLLAH
01:12 rg tene: did you compare it to the github feed?
01:12 Tene rg: I compared it to when I made the commits.
01:13 Tene http://github.com/feeds/ra​kudo/commits/rakudo/master agrees with me, though
01:16 rg tene: dalek reported the commint in the same order (top to bottom) the feed is listing them.
01:16 Tene ah, right
01:16 Tene ><
01:28 Coke joined #parrot
01:55 kid51 joined #parrot
02:12 davidfetter joined #parrot
02:15 dalek rakudo: bf281cf | pmichaud++ | src/parser/ (2 files):
02:15 dalek rakudo: Add ability to recognize operator subs.  The ability to define
02:15 dalek rakudo: operator subs comes in the next commits.
02:15 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/b​f281cf178c58c023bad0e90ea27476d8673d1ae
02:15 dukeleto joined #parrot
02:18 darbelo joined #parrot
02:18 dalek parrot: r38763 | jkeenan++ | trunk/ext/Parrot-Embed/lib/Parrot (3 files):
02:18 dalek parrot: Correcting 3 copyright statements per discussion 2009-05-13 in
02:18 dalek parrot: https://trac.parrot.org/parrot/ticket/298.
02:18 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38763/
02:21 kid51 Looks like Smolder has been down most of the day and evening (ET).
02:28 darbelo cotto: ping
02:31 dalek decnum-dynpmcs: r32 | darbelo++ | trunk/build/src/pmc/Makefile.in:
02:31 dalek decnum-dynpmcs: Minor corrections to pmc Makefile.
02:31 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=32
02:34 tetragon joined #parrot
02:35 janus joined #parrot
02:36 allison joined #parrot
03:01 darbelo left #parrot
03:01 darbelo joined #parrot
03:20 dalek decnum-dynpmcs: r33 | darbelo++ | trunk/src/pmc/decnum (2 files):
03:20 dalek decnum-dynpmcs: Change "union decQuad *" into "void *".
03:20 purl dalek: that doesn't look right
03:20 dalek decnum-dynpmcs: Put back an PMC * that I accidentatally removed.
03:20 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=33
03:20 donaldh joined #parrot
03:44 dalek decnum-dynpmcs: r34 | darbelo++ | trunk/build/src/pmc/Makefile.in:
03:44 dalek decnum-dynpmcs: Reorder group targets, and correct the linking commands.
03:44 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=34
03:52 tetragon joined #parrot
03:56 dalek parrot: r38764 | petdance++ | trunk/src/packfile.c:
03:56 dalek parrot: simplify calculation a lot
03:56 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38764/
03:59 dalek parrot: r38765 | petdance++ | trunk/src/io/socket_unix.c:
03:59 dalek parrot: localized a variable
03:59 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38765/
04:08 darbelo purl: msg cotto I've found the problem. pmc2c generates "pmc_whatever.h" based on filename but the #include "pmc_whatever.h" directives are generated with the name of the PMC. It was all a header collision issue obscured by my inability to write Makefiles.
04:08 purl Message for cotto stored.
04:12 dalek parrot: r38766 | petdance++ | trunk/src/list.c:
04:12 dalek parrot: use NULL for pointers, not 0
04:12 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38766/
04:39 eternaleye joined #parrot
04:43 dalek decnum-dynpmcs: r35 | darbelo++ | trunk/src/pmc/decnum2.pmc:
04:43 dalek decnum-dynpmcs: Insert workarrounds to a header collision problem.
04:43 dalek decnum-dynpmcs: I don't know if it works yet, but at least it builds.
04:43 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=35
04:55 dalek parrot: r38767 | petdance++ | trunk/config/gen/makefiles/root.in:
04:55 dalek parrot: Allow really big structs in splint
04:55 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38767/
05:11 he joined #parrot
05:11 he_ joined #parrot
05:38 cotto msg darbelo Good job figuring out the makefile issue.
05:38 purl Message for darbelo stored.
05:38 cotto messages
05:42 pmichaud I'm getting test failures in trunk... known?
05:42 Tene pmichaud: the sockets one?
05:43 pmichaud no, something to do with packfiles
05:43 pmichaud I'm re-running the test again
05:43 pmichaud (on two separate machines)
05:43 Tene lemme test here too
05:44 Tene This rakudo slowdown in the perl6 HLL is concerning to me...
05:46 pmichaud have you timed it?  how much slower?
05:47 Tene lemme time a rebuild once parrot is done rebuilding
05:55 pmichaud t/pmc/packfileconstanttable.t    0    11    10   16  3-10
05:55 pmichaud t/pmc/packfiledirectory.t        0    11    21   32  6-21
05:55 pmichaud t/pmc/packfilefixupentry.t       0    11     3    2  3
05:55 pmichaud ... but only on my laptop.
05:55 pmichaud my desktop they pass okay.
05:56 Tene pass for me
05:56 pmichaud yeah... kinda weird.  oh well, I'll run some more tests.
05:57 nopaste "tene" at 98.232.146.13 pasted "time statistics for HLL perl6 and parrot for pmichaud++" (27 lines) at http://nopaste.snit.ch/16544
05:58 pmichaud I wonder what makes the 'perl6' version slower.
05:59 Tene still want me to commit it?
05:59 Tene I remember similar proportional timing on the test suite.
06:00 pmichaud is it just changing 'parrot' to 'perl6' ?
06:00 Tene Yes.
06:00 Tene It would help ensure we don't break that in the future, though.  For example, src/parrot/Role.pir wasn't even included in perl6.pbc.  only the version in src/classes was.
06:00 pmichaud I think I'd like to wait until Friday -- maybe jonathan++ has some ideas about it.
06:01 Tene OK
06:01 pmichaud (Friday is jonathan's rakudo day)
06:01 pmichaud The test suite is already so slow... I'd hate to make it worse.
06:01 Tene also, I should ideally file tickets about the workarounds I put in...
06:02 pmichaud I didn't see any that I thought needed tickets.
06:02 Tene the one with perl6multisub.pmc at least should be documented.
06:03 Tene exporting !JUNCTION_SOMETHING to the parrot HLL namespace
06:03 pmichaud a comment in the code is sufficient; I don't know that we need a ticket.
06:03 Tene OK
06:03 pmichaud eventually we'll want to eliminate all of our parrot mucky-mucks.  :-)
06:03 Tene right, comments... those things that help people...
06:04 Tene maybe I'll be desperate enough to poke around with valgrind tomorrow during class.
06:05 uniejo joined #parrot
06:05 pmichaud anyway, I totally agree we don't want HLL to break now that it's working.  :-)
06:05 pmichaud so, we switch it on Friday, whether it's slow or not.  :-)
06:07 slavorg joined #parrot
06:07 dalek parrot: r38768 | pmichaud++ | trunk/compilers/nqp (3 files):
06:07 dalek parrot: [nqp]:  Port Q:PIR notation from Rakudo.
06:07 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38768/
06:09 Tene make probabilistic_spectest_regression
06:09 Tene runs a random assortment of spectests. :)
06:12 Tene load_bytecode and loadlib are still broken... pasting an example that uses a perl6'd rakudo shortly
06:12 Tene http://gist.github.com/111518
06:20 slavorg joined #parrot
06:20 pmichaud I mentioned that during today's perl 6 design meeting -- we should probably update the tickets with any latest information/examples.
06:21 Tene I'm having trouble reproducing without perl6.pbc
06:21 Tene working on it, though...
06:23 Tene Oh... *that*'s interesting.
06:24 Tene if I load_bytecode something that loadlib's perl6_group, then the pmcs get made in whatever .HLL the load_bytecodeing code is in.
06:24 Tene so a potential workaround is to just always make sure to load_bytecode from .HLL 'parrot'
06:25 NotFound Tene: I think I wrote about such workaround in some ticket
06:25 Tene I have a secret to confess to you, NotFound.
06:26 Tene I... I actually have some trouble dealing with tickets.
06:26 Tene That's my terrible deep dark secret.
06:26 Tene I always mean to actually read the relevant tickets, but never do.
06:26 NotFound Just 'some' ? Don't worry, I have lots ;)
06:27 Tene anyway, the ideal solution is to have a field in PMcs to specify the HLL namespace.
06:27 pmichaud there is one.
06:27 Tene is there?  I thought there was originally, but then someone told me that field was for something else.
06:27 Tene I have a vague memory of hearing something like that!  On IRC!  That's proof!
06:28 pmichaud see src/pmc/perl6str.pmc
06:28 pmichaud hll      Perl6
06:28 pmichaud I don't know if it works, though.
06:28 Tene Yeah, that field.
06:29 Tene anyway, want me to post my minimal example for you?
06:29 NotFound I remember to have added a function outside of .HLL to do the load_bytecode somewhere, but don't remember...
06:30 Tene NotFound: ideally we're going to be asking PCT to do it for us, so...
06:30 Tene might not be a problem anyway.
06:30 NotFound Tene: yeah, but that was to show clearly the problem
06:30 Tene yeah
06:32 Tene anyway, allison++ wanted a minimal example... I'll mail her a link to this:
06:32 Tene http://gist.github.com/111529
06:34 Tene OK, great.
06:36 Tene pmichaud: interested in ideas for handling library loading in PCT?
06:36 pmichaud Tene: yes, but I'm not lucid enough tonight to discuss it :-|
06:36 Tene pmichaud: oh, certainly not tonight
06:36 pmichaud as soon as my spectest run finishes, I'm pushing then heading to bed
06:36 Tene neither am I
06:37 pmichaud okay.  I should be around the next couple of days, though.
06:37 Tene as my earlier attempts at humor demonstrate
06:37 Tene I won't be, during the day.
06:37 Tene no internet at the classroom, unless I route through my phone, which I can rarely get to work.
06:37 Tene but, maybe I can write something up during class.
06:38 pmichaud okay, sounds good
06:38 Tene If you haven't figured out, establishing "Someone is expecting me to get shit done" really helps my motivation.
06:40 Tene That's the reason for me harassing you so much. :)
06:42 pmichaud :-)
06:42 Tene Thanks.
06:45 slavorg joined #parrot
07:01 dukeleto joined #parrot
07:11 mikehh_ joined #parrot
07:16 iblechbot joined #parrot
07:20 donaldh joined #parrot
07:56 dalek rakudo: 8349d75 | pmichaud++ | src/parser/ (2 files):
07:56 dalek rakudo: Add ability to define operator subs.
07:56 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​349d75a321cf52d4e30fafba74bda85f15e558b
07:56 dalek rakudo: ad9e008 | pmichaud++ |  (2 files):
07:56 contingencyplan joined #parrot
07:56 dalek rakudo: Add ability to declare infix: subs.
07:56 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​d9e0081511a86b4b6b341614e0b0701215477e7
07:56 dalek rakudo: 9dcaf47 | pmichaud++ | src/parser/actions.pm:
07:56 dalek rakudo: Update parse table both immediately and in saved code.
07:56 dalek rakudo: Add a simplistic views of prefix: and postfix: ops.
07:56 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/9​dcaf47c5b2736d758355a6ae882effa21c60e55
08:00 cotto msg bacek It looks like pmc2c doesn't bother trying to generate missing dumps, so there's no reason for pmcc to do it either.
08:00 purl Message for bacek stored.
08:15 mikehh smolder is down again
08:26 cotto we should just host it on parrot.org
08:26 cotto it's a joke how much it's been going down recently
08:39 cotto bacek, ping
08:39 cotto clock
08:39 cotto clock?
08:39 purl cotto: LAX: Thu 1:39am PDT / CHI: Thu 3:39am CDT / NYC: Thu 4:39am EDT / LON: Thu 9:39am BST / BER: Thu 10:39am CEST / IND: Thu 2:09pm IST / TOK: Thu 5:39pm JST / SYD: Thu 6:39pm EST /
08:41 dalek rakudo: 1af7e29 | moritz++ | t/spectest.data:
08:41 dalek rakudo: we pass an operator definition/overloading test
08:41 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/1​af7e293c7efe622115bfbe3f2ef42bb565f8579
08:50 bacek_ cotto: pong
08:50 cotto I need something in pmcc to hack on.
08:50 cotto What do you not feel like implementing?
08:51 bacek_ METHOD's :)
08:52 bacek_ Actually, you can overtake VTABLE generation for next couple of days.
08:52 cotto ok.  Where's it at and what needs to be done?
08:52 bacek_ It's not likely that I'll have much time over weekend for work on parrot :/
08:53 bacek_ pmc.pm:get_vtable_func
08:53 bacek_ it can be stolen from Pmc2c/PMC:get_vtable_func
08:53 bacek_ And class_init as well
08:54 cotto That doesn't sound too bad.
08:55 cotto and if pcc_rewiring won't be landing soon, it might be worthwhile to start on METHODs anyway.
08:55 bacek_ Oh.
08:55 cotto I'll have to find out about that
08:56 bacek_ ok.
08:56 bacek_ Anyway, you can take any part of pmcc. When I'll have time I'll just take another part.
08:56 cotto I suppose some of the pmc-specific stuff like object.pm will also need to be implemented
08:57 bacek_ "object.pm"?
08:57 cotto I'll do that and make sure to write useful commit messages.
08:57 cotto pmc2c has some Object PMC-specific stuff.
08:57 bacek_ It's already in place
08:58 bacek_ Check src/emitter/pmc/default.*
08:58 bacek_ So you can throw pmc-specific code easily
08:58 bacek_ into pmcc
08:59 cotto Yup.  I was just noting that we'll probably need some other pmc-specific files there too
08:59 cotto It'll be fun to dive into this more.
08:59 bacek_ Null and ParrotClass probably
08:59 cotto and it'll increase pmcc's bus number
08:59 bacek_ I really dislike how RO handling implemented in pmc2c.
09:00 cotto Is it something that pmcc will have to imitate?
09:01 bacek_ no. We have to handle _ro_ version of VTABLEs.
09:01 bacek_ But it's not necessary to mimic pmc2c
09:01 cotto ok.  it's nice when we don't have to inherit stupid hacks
09:02 cotto nope, as long as it works
09:02 cotto I wonder how tewk's gsoc project is going
09:03 bacek_ which one?
09:04 cotto a shiny new llvm-based jit backend
09:04 cotto well, a prototype version
09:05 moritz cotto: the gsoc projects haven't started yet
09:05 bacek_ Sounds good.
09:05 cotto it's a very ambitious project, but it'll be a big help to Parrot
09:05 moritz it's "community bonding period"
09:05 cotto moritz, yes, but that's only a recommendation
09:05 moritz which is a no-op for tewk :-)
09:06 bacek_ ok. I'm going home now.
09:06 cotto bye
09:06 bacek_ afk # $work !~~ self
09:26 cotto msg darbelo http://www.codinghorror.com​/blog/archives/001266.html may be of interest to you
09:26 purl Message for darbelo stored.
09:45 cotto jonathan, ping
09:49 jonathan pong # but not very much coffee imbiled yet ;-)
09:49 cotto How does Util's pbc_to_exe patch work on windows?
09:49 cotto that shouldn't take much coffee ;)
09:50 jonathan oh, argh, I meant to do that before now...
09:50 jonathan cotto: You have the link to the patch handy?
09:50 jonathan If not I can go find it in the backlog...
09:50 cotto no, but I can nopaste it quickly
09:51 jonathan thanks
09:51 nopaste "cotto" at 96.26.202.243 pasted "util's patch to pbc_to_exe" (264 lines) at http://nopaste.snit.ch/16545
09:52 jonathan Thansk, will try it now.
09:55 rdice joined #parrot
10:03 jonathan cotto: Parrot built, waiting to find out on Rakudo now.
10:04 cotto that's a good sign, since pbc_to_exe uses itself on itself as part of the build
10:05 jonathan fail :-(
10:05 jonathan perl6.c(19200) : fatal error C1076: compiler limit : internal heap limit reached
10:05 jonathan ; use /Zm to specify a higher limit
10:06 cotto too bad
10:07 cotto Util, ping
10:08 gaz joined #parrot
10:09 jonathan Seems it actually has more memory usage than the previous version. Not sure I understand how/why. :-|
10:10 cotto d'oh
10:12 jonathan cotto: btw
10:12 jonathan it declares a
10:12 jonathan const char * const program_code_array[]
10:12 jonathan Which made me think it was going to contain many strings
10:12 jonathan oh, it does
10:12 jonathan oh clever
10:12 jonathan Nice try. :-( But sadly doesn't work. :-(
10:13 jonathan I've set the memory usage allowed as high as I can. And it fails. :-(
10:13 cotto Hmmm.  Could it be misdetecting the compiler?
10:13 cotto and generating the wrong code?
10:15 jonathan cotto: No, I realized
10:15 cotto I guess not.  The gcc version declares that differently
10:15 jonathan It is putting the commas
10:15 jonathan Just every so often.
10:15 jonathan (in big enough chunks)
10:15 jonathan So it's doing the right thing in that sense.
10:16 cotto msg Util It looks like your pbc_to_exe patch doesn't make msvc happy: http://irclog.perlgeek.de/p​arrot/2009-05-14#i_1142271
10:16 purl Message for util stored.
10:16 jonathan Sorry to be bearer of bad news. :-(
10:16 cotto Well, we know a way not to do it.
10:17 cotto That's progress.
10:17 jonathan I've played around a little with it just now (silly things in case they helped), but no luck.
10:33 cognominal joined #parrot
11:00 masak joined #parrot
11:04 dalek parrot: r38769 | bacek++ | branches/pmc_pct/compilers/pge/PGE/Match.pir:
11:04 dalek parrot: [pge] Fix typo in PGE::Match.orig
11:04 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38769/
11:04 dalek parrot: r38770 | bacek++ | branches/pmc_pct/compilers/pmcc/src/builtins.pir:
11:04 dalek parrot: Add substr into builtins.
11:04 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38770/
11:04 dalek parrot: r38771 | bacek++ | branches/pmc_pct/compilers/​pmcc/src/parser/actions.pm:
11:05 dalek parrot: Save pmc's c_header.
11:05 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38771/
11:05 dalek parrot: r38772 | bacek++ | branches/pmc_pct/compilers​/pmcc/src/emitter/pmc.pm:
11:05 dalek parrot: Emit c_header to C-code.
11:05 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38772/
11:14 burmas joined #parrot
11:21 donaldh joined #parrot
11:29 uniejo joined #parrot
11:31 dalek parrot: r38773 | bacek++ | branches/pmc_pct/compilers/pmc​c/src/emitter/pmc/default.pm:
11:31 dalek parrot: Properly propogate .returns to created default's vtable methods.
11:31 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38773/
11:50 cghene joined #parrot
11:50 bacek purl: msg cotto Look at r38774! We (almost) can generate C-code for default.pmc.
11:50 purl Message for cotto stored.
11:51 dalek parrot: r38774 | bacek++ | branches/pmc_pct/compilers/pmc​c/src/emitter/pmc/default.pm:
11:51 dalek parrot: First cut for implementing Parrot_default_get_vtable.
11:51 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38774/
11:55 cotto ooh.  shiny
11:58 cotto bacek++
11:58 cotto sleep++
12:40 rg1 joined #parrot
12:44 burmas left #parrot
13:12 gryphon joined #parrot
13:23 ruoso joined #parrot
13:32 dalek rakudo: 705cb2b | pmichaud++ | src/parser/grammar.pg:
13:32 dalek rakudo: Fix use of � � and << >> in postcircumfix (and operator definitions). moritz++
13:32 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​05cb2b46dc0753f2348d96fd5b10cf50f0bdc85
14:10 flh joined #parrot
14:10 flh hi everyone
14:10 purl Howdy, flh, you fantastic person you.
14:10 flh purl, good girl
14:10 purl thanks flh :)
14:12 flh I have a little question about perl6 regexes for my grammar: I'm trying to parse integers or floats, with a rule like "rule int_or_float { <integer> | <float> }"
14:13 * moritz sees a problem in there
14:13 moritz try { <float> | <integer> } instead
14:13 moritz sorry, I should let you ask your question first ;-)
14:13 flh you've almost guessed it
14:14 flh the integer rule is a subset of the float rule
14:14 flh so in your variant, the <integer> part is useless
14:14 moritz and PGE doesn't implement longest token matching yet
14:15 moritz so you need something more like  { <integer> <float_part>? }
14:15 flh that's a good workaround... since I can distinguish afterwards between the two in the action
14:16 flh does parrot implement <!after...> ?
14:16 Andy joined #parrot
14:17 moritz let me check...
14:17 flh your <float_part> makes me think that I could write <integer><!after <float_part>> (not sure about the syntax however)
14:18 moritz it would be <!before <float_part>>
14:18 moritz and yes, after and before are implemented
14:19 moritz sure you could, at the expense of doing the integer match twice
14:20 flh we agree that it's just a hack until longest match works :)
14:21 moritz aye
14:23 iblechbot joined #parrot
14:24 flh ok, there is another problem with that: I don't know how to convince the engine that <float_part> should not be empty (it is [part1]?[part2]? but there should be at least one)
14:25 moritz I'm not sure I understand
14:26 moritz flh: but you might look at rakudo's number matching, src/parser/grammar.pg lines 941 and onwards
14:27 particle- flh: at least one or both?
14:27 particle- or "one or the other"?
14:27 flh at least one
14:27 purl at least one is probably NO THERE CAN ONLY BE ONE, HIGHLANDER!
14:27 moritz what you could do is 'token number { <integer> <!before \.> | <float> }
14:27 particle- ok, group them with []
14:27 particle- wait... i have it...
14:28 moritz and 'token float { '.' \d+ | \d+ '.' \d* }
14:28 moritz or 'token float { ['.' \d+ | \d+ '.' \d*] <exponential>? }
14:29 particle- ...crap... phone call...
14:29 flh and in this case, I would have <integer><!before <dot_part>><!before <exponential>>
14:30 moritz or so, yes
14:30 moritz and don't be afraid of whitespaces in tokens ;-)
14:30 flh maybe I'd rather just unfold all cases in the float rule, like rakudo seems to do in dec_number
14:31 flh moritz, I know, I just felt a bit lazy here :)
14:31 moritz that seems the least "clever", and thus the most maintainable solution ;-)
14:42 flh moritz++ # thanks for the advice, it works and I could even get rid of a "regex" (my <int_or_float> is now a token)
14:57 davidfetter joined #parrot
15:03 dalek rakudo: 90dbe0b | pmichaud++ | docs/spectest-progress.csv:
15:03 dalek rakudo: spectest-progress.csv update: 388 files, 11258 passing, 1 failing
15:03 dalek rakudo: (failing test in S04-declarations/multiple.t has already been fudged)
15:03 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/9​0dbe0b8bb14b10cfe40ce1a7ba6327993266901
15:11 rdice joined #parrot
15:15 dalek rakudo: 612bcf3 | moritz++ | docs/ChangeLog:
15:15 dalek rakudo: [docs] ChangeLog updates
15:15 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​12bcf3d6f1824bf6b82ba8efc286a62c9c4028f
15:20 donaldh joined #parrot
15:22 eternaleye joined #parrot
15:38 whoppix joined #parrot
15:55 dalek parrot: r38775 | coke++ | trunk/tools/dev/branch_status.pl:
15:55 dalek parrot: Minor updates to report format
15:55 dalek parrot: - change "box" characters
15:55 dalek parrot: - sort components case-insenstively
15:55 dalek parrot: - sort authors by # commits DESC
15:55 dalek parrot: - use "bullet" syntax for Perl6::Form instead of previous hack.
15:55 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38775/
16:05 darbelo joined #parrot
16:06 Theory joined #parrot
16:11 HG` joined #parrot
16:11 darbelo purl messages
16:12 dalek tracwiki: v15 | coke++ | BranchDescriptions
16:12 dalek tracwiki: new report format, plus catch some recent commits.
16:12 dalek tracwiki: https://trac.parrot.org/parrot/wiki/Branc​hDescriptions?version=15&amp;action=diff
16:12 moritz dalek: try 'messages?' in a query
16:15 Infinoid darbelo: you too :)
16:16 darbelo me what?
16:16 purl you are probably Daniel Arbelo Arrocha <mailto:dany.arbelo@gmail.com> or into bonding or mailto:arbelo@gmail.com
16:16 Infinoid darbelo: I think moritz was talking to you
16:16 moritz erm, yes
16:16 moritz I did da<tab>
16:16 moritz and it went wrong :)
16:17 darbelo Ah. I thought you were trying to get some clever response out of dalek or something like that.
16:43 darbelo cotto: ping
16:43 particle1 joined #parrot
16:51 Andy joined #parrot
16:54 wilig joined #parrot
17:15 darbelo purl: msg cotto Can you comment on http://nopaste.snit.ch/16547 ?
17:15 purl Message for cotto stored.
17:33 Infinoid darbelo: Are you unable to add your own #includes in addition to the pmc2c-generated stuff?
17:34 darbelo Nope, that works.
17:34 Infinoid I know I'm not cotto, but I was curious and I don't understand where the bug is :)
17:35 darbelo I have a PMC named bar in a file name foo.pmc.
17:35 darbelo pmc2c generates pmc_foo.h
17:35 Infinoid yeah
17:35 Infinoid oh, hmm
17:35 darbelo but includes pmc_bar.h inside foo.c
17:36 Infinoid I think we've pretty strictly adhered to the idea of 1 pmclass per .pmc file, and I don't think the idea of naming it differently from the file has ever occurred to me before
17:36 NotFound Currently they differ in case.
17:37 darbelo That, on top of my complete inability to write Makefiles, and a name collision caused some serious head scratching for me.
17:38 Infinoid Ok, glad you figured it out
17:38 Infinoid Is there a good reason to name the pmclass differently from the file?  (other than upper/lower caseness, as NotFound said)
17:38 Infinoid If we do want to support that, pmc2c does indeed have a bug
17:38 Infinoid I'm just not sure anyone has tried that before. :)
17:40 Coke (differ in case) there's a ticket for that.
17:40 NotFound Forgot to say: several packfile pmc tests failed for me this morning on amd64 machines
17:40 Coke RT#39142
17:40 NotFound Even worse, they failed differently building with C and with C++
17:41 Coke you guys fixing RT#39313 in pmcc?
17:41 Coke or RT#38896 ? =)
17:41 Infinoid Coke: This is an issue that came up yesterday with some dynpmcs darbelo is making for his gsoc project
17:41 Infinoid It caused much head-scratching.
17:42 Infinoid Apparently there's an undocumented dependency on the pmc file being named the same as the name in the pmclass line
17:43 Infinoid If we want to support that, pmc2c needs fixing.  If not, emitting a big nasty error message might help
17:44 darbelo Documenting it somewhere is good too.
17:45 acajou joined #parrot
17:45 * acajou waves hi.
17:46 darbelo The particular case I ran into is not very common, documenting the dependency is probably enough for most people.
17:46 particle1 joined #parrot
17:46 Infinoid hi acajou
17:47 darbelo afk # phone
17:51 Coke phoen?
17:51 Coke phone?
17:51 * purl ~/ Ring, ring, ring, ring, bananaphone! /~
17:53 szbalint bongophone?
17:53 NotFound (big nasty error message)++
18:05 nopaste "infinoid" at 76.215.211.232 pasted "[PATCH] big nasty error message" (23 lines) at http://nopaste.snit.ch/16548
18:06 Infinoid I won't commit that, because it's conceiveable that some HLL depends on this (rather insane) behavior.
18:07 darbelo I doubt it. The .c won't compile without the header.
18:07 Infinoid Right, which is why it's insane.  But nothing is stopping them from making their own pmc_bar.h header to work around it
18:07 Infinoid So I'd like some parrot designer review before I commit that
18:08 Coke more likely to get that with a post to trac.
18:08 Infinoid I have to run, but I will post a trac later
18:09 Infinoid (this phone convo is taking too long)
18:09 darbelo Infininoid++
18:10 Coke Infinoid++ # spell it right?
18:11 darbelo Sorry, I underuse my tab key.
18:12 NotFound Some people overuse it, there must be some compensation law
18:13 darbelo I'm an over-user myself, but I twisted my tab-finger two days ago.
18:14 darbelo It make using emacs-y editors real fun too.
18:14 particle- just remap it to 6 or something.
18:15 darbelo Nah. It'll be fine by the time I get used to the new map :)
18:19 Infinoid posted that patch as TT #665
18:19 * Infinoid bbl &
18:21 Andy Is anyone else at all interested in splint?
18:25 Coke yes.
18:25 Andy are you running it at all?
18:26 Coke No. I fought with it some time ago on OS X.
18:26 Andy oh, and you're OS X only?
18:26 NotFound $ make splint
18:26 NotFound /usr/bin/perl -MExtUtils::Command -e mkpath /splint
18:26 NotFound mkdir /splint: Permiso denegado at /usr/local/share/perl/5.10.0/ExtUtils/Command.pm line 259
18:27 Coke I have access to other platforms, but it's my primary dev platform.
18:27 NotFound Where does it try to create a directory?
18:27 NotFound At root?
18:28 Andy oh, I bet it's relying on TMP
18:29 NotFound Looks like that, yes.
18:29 Andy well, that's easily addressed
18:29 NotFound Hundreds of messages
18:30 Andy well, yes
18:30 Andy hundreds
18:30 purl well, hundreds is like thousands, only smaller
18:30 Coke Andy: just did a 'make splint' after months of not looking at it.
18:30 Coke endless stream of warnings. =-)
18:30 Andy actually, I've been working on make splint-andy
18:30 NotFound Even millions
18:30 Coke so splint seems to be working.
18:30 Andy well, good
18:31 Andy I'm doing lots of flag clenaup
18:32 Andy an ideal couch exercise.
18:32 Andy splint-andy is only one single file that I focus on, plus some other things i test on.
18:32 NotFound Enough work for me to maintain c++ buildability, I can't even imagine how much work can be to make splint happy
18:33 Coke does 'make splint' save its output, or just dump to std*?
18:33 Andy You don't do it all at once.
18:33 Andy std*, coke
18:33 Andy NotFound: My first fixes are just shutting up the noisiest, and then I hope we get to the real wins, where it tracks who's using pointers where.
18:34 NotFound Andy: that will be great
18:35 Andy I'm hoping so.
18:35 Andy I see great promise.
18:35 Infinoid Andy: Interested in splint, yes.  Used it any time in the last year or so, no
18:36 Andy k
18:36 Infinoid is splint-andy in trunk?
18:36 Coke yes.
18:36 Infinoid awesome.
18:36 Coke (that's the one that makes /splint. =-)
18:37 Andy Yeah, Andy doesn't believe in branches. :-)
18:38 Infinoid hmm, splint won't install on gentoo
18:38 Infinoid * File 'splint-3.1.2.src.tgz': failed integrity checks: Incorrect file size
18:38 Infinoid Must be teh hax0rs.
18:38 Andy there ougtha be a package for it.
18:39 Infinoid on Gentoo, the "package" is a bash script that compiles it from source... kinda like bsd ports.
18:39 dalek parrot: r38776 | coke++ | trunk/config/gen/makefiles/root.in:
18:39 dalek parrot: [docs] add a note to the splint-andy target.
18:39 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38776/
18:45 Andy Holy shit, I just got the Follett Values In Action award for pushing wikis.
18:46 Infinoid Andy++
18:47 Andy Yay for pushing wikis.
18:47 * particle- hates wikis
18:47 * particle- still <3 andy
18:53 Andy For this group that i was pushing, it made lots of sense.
18:54 Infinoid purl, andy?
18:54 purl andy is the man with the feathered broom or mailto:andy@petdance.com or AIM:petdance or OK cat-xeger is BACK or trying to get Sun Studio 12 installed so I can lint lint lint.
18:54 Infinoid andy is also a wiki pusher
18:54 purl okay, Infinoid.
18:54 Andy Andy is also Mr. Perlbuzz
18:54 purl okay, Andy.
19:07 cotto darbelo, pong
19:08 cotto sometimes it's two seconds, sometimes two hours
19:09 darbelo No problem. I forgot to unping you after talking with Infinoid . I was just looking for opinions on pmc2c behavior.
19:10 cotto so you got it figured out?
19:10 cotto or at least got a ticket filed
19:11 darbelo Yeah, the last commit from last night 'fixed' decnum-dynpmcs. Infinoid made a ticket and patch for pmc2c today.
19:11 cotto I'm not sure if there's an easy way to support mismatched names, since the names are used in figuring out inheritance
19:12 cotto pmichaud's recent rakudo work is shiny
19:12 darbelo Infinoid's patch make pmc2c error out on mismatched names. Which is probably TRT.
19:12 cotto I think that's correct.
19:13 darbelo It wan't commited becouse somebody might be relying on the way it works now. Unlikely, but it's better safe than sorry.
19:15 cotto yeah.  Not committing stuff like that until after a deprecation point is annoying, but it's part of trying to make Parrot a more mature proejct.
19:16 Infinoid I'm not really sure it's a deprecation issue, I just want some more opinions on that first
19:16 Infinoid It's TT #665.
19:17 Infinoid (I'm not really sure *why* someone would want to rely on insane behavior, but I can't completely rule it out.)
19:17 darbelo I think that if you rely on that you deserve the breakage :)
19:21 donaldh joined #parrot
19:21 darbelo Also, a PMC witha different name from the PMC file won't build without some rather icky workarrounds (or, in my case, some really unlucky circunstances)
19:24 darbelo cotto: I don't think you saw the error I was getting. I had leftover files from an earlier build and wasn't experiencing the 'no decbase.dump' failure. It was another thing entirely.
19:25 cotto Yeah.  When I manually generated decbase.dump, I got a different error from gcc.
19:25 darbelo Missing struct members?
19:25 cotto I don't recall.
19:26 cotto by the time I got around to digging into it, you'd already fixed it. ;)
19:26 darbelo It doesn't matter anymore. Now it builds, time to get it working :)
19:28 darbelo A possibly unrelated warning: ./decnum2.c:391: warning: implicit declaration of function `Parrot_decbase_ro_update_vtable'
19:30 darbelo I think it might be due to the 'empty' DecBase. Should I worry about it?
19:32 cotto checking...
19:32 purl checking is just different
19:33 cotto I'm not sure what's causing that, but it looks like pmc2c is generating two sets of update_vtable functions; one with "decbase" and one with "DecBase".
19:34 darbelo pmc2c--
19:35 cotto ok.  It looks like the problem is that you say "extend decbase" instead of "extend DecBase" in decnum2.pmc.
19:35 cotto pmc2c should definitely be smarter about that.
19:35 darbelo me--
19:36 cotto nah.  you're just running into unexpected usage scenarios that pmc2c doesn't handle gracefully.
19:36 dalek decnum-dynpmcs: r36 | darbelo++ | trunk/src/pmc/decnum2.pmc:
19:36 dalek decnum-dynpmcs: Parrot_gc_mark_PObj_alive() the correct pointer.
19:36 cotto It works most of the time, but it's fairly fragile in a number of ways.
19:36 dalek decnum-dynpmcs: Add a cast to prevent a warning.
19:36 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=36
19:40 cotto karma pmc2c
19:41 purl pmc2c has karma of -1
19:41 cotto karma pmcc
19:41 purl pmcc has neutral karma
19:41 cotto pmcc+
19:41 cotto pmcc++
19:41 cotto pmcc+++
19:41 darbelo ++pmcc ?
19:41 dalek decnum-dynpmcs: r37 | darbelo++ | trunk/src/pmc/decnum2.pmc:
19:41 dalek decnum-dynpmcs: Use proper capitalization on the 'extends' line.
19:41 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=37
19:43 dalek parrot: r38777 | petdance++ | trunk/config/gen/core_pmcs.pm:
19:43 dalek parrot: Added error checks on close().  Made a standard read-only coda for the generated files.  Turned off unnecessary interpolation.
19:43 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38777/
19:51 dalek decnum-dynpmcs: r38 | darbelo++ | trunk/src/pmc/decnum2.pmc:
19:51 dalek decnum-dynpmcs: Oops. s/DecNum/DecNum2/ in VTABLE signatures.
19:51 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=38
20:02 cotto btw darbelo, you should try to avoid compiler warnings during the build.
20:03 cotto At best they're annoying, but they'll occasionally point to actual bugs that would otherwise take time to find and fix.
20:05 Coke joined #parrot
20:06 cotto s/best/worst/
20:07 Ademan joined #parrot
20:11 Theory joined #parrot
20:18 dalek rakudo: bd9fafc | pmichaud++ | src/builtins/match.pir:
20:18 dalek rakudo: Update make() to give a slightly more useful warning when $/ not set.
20:18 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/b​d9fafce44108da269e352167121dd94ffc90d69
20:19 Eevee joined #parrot
20:24 dalek rakudo: 52d8f28 | jnthn++ | src/builtins/guts.pir:
20:24 dalek rakudo: First crack at applying custom user traits to blocks. Hopefully we can eventually get rid of the special cases. A spectest fails if we blow up on unknown triats, so for now we'll just warn.
20:24 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​2d8f28d4ef0f8380b46f5d014a06665be716657
20:24 dalek rakudo: ce81644 | jnthn++ | src/parser/ (2 files):
20:24 dalek rakudo: Start parsing and emitting trait_auxiliary definitions.
20:24 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c​e81644557cd90ffb2a3f45cf990934234ff1c41
20:33 darbelo cotto: What warnings are you seeing?
20:34 cotto a bunch of casting warnings
20:34 cotto ./decnum2.pmc:105: warning: request for implicit conversion from ‘void *’ to ‘union decQuad *’ not permitted in C++
20:36 darbelo Ah, yeah. I declared number as a 'void *' to avoid patching pmc2c to accept unions.
20:37 particle- void--
20:37 Andy That's so zen.
20:37 Andy Trying to decrement void.
20:37 * cotto ponders
20:38 * cotto has become enlightened
20:38 Infinoid *bing*
20:38 darbelo I could make all the casting explicit, that should please c++.
20:38 Andy I was working on my Just Enough C slides and talking about void
20:39 Andy and casting, and explaining that casting in Perl and PHP and the like are coercions.
20:39 Andy but in C, it's saying "I know what I'm doing, dammit, leave me alone"
20:39 cotto what's that presentation for?
20:39 Andy OSCON
20:41 Andy it's a half-day tutorial.  I did a 45-minute talk last year.
20:41 Andy slides for the latter are on slideshare
20:45 Util purl: msg jonathan (re: pbc_to_exe patch) thanks for trying. I now have access to a MSVC 13.0 compiler, and will try one last technique tonight to resolve the problem. I will replace the string array and the for loop with hundreds of memcpy() and bzero() calls. I will also refine the patch to detect cc=cl instead of just os=win32.
20:45 purl Message for jonathan stored.
20:45 Util cotto++, jonathan++, NotFound++ for the help.
20:45 moritz and Util++ for doing it ;-)
20:48 NotFound Util++
20:55 Coke tcl: puts hi
20:55 Coke perl6: say "hi"
20:55 Coke seen polyglotbot?
20:55 purl polyglotbot was last seen on #parrot 43 days, 23 hours, 19 minutes and 1 seconds ago, saying: OUTPUT[Infinoid-- # it stopped working!␤]  [Mar 31 21:33:40 2009]
20:56 moritz Coke: the vm on which it used to run (feather3) wasn't restarted on last reboot
20:59 Infinoid ... ouch.
20:59 dalek rakudo: fe54884 | moritz++ | t/spectest.data:
20:59 dalek rakudo: test importing of operators
20:59 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​e5488445114a408cad76b4c8912217a4b09a719
21:00 Infinoid the angry ghost of polyglotbot attacks Infinoid for 1hp damage
21:00 rg infinoid: are you sure purl parses her own output?
21:01 cotto rg, I'm pretty sure she doesn't
21:01 rg that would be my guess aswell
21:01 Infinoid heh, good point
21:01 cotto She does parse ours, though.
21:02 moritz purl: do you parse our output?
21:02 purl moritz: wish i knew
21:02 cotto she's playing dumb.  She's an expert at it.
21:03 darbelo purl: seen darbelo?
21:03 purl darbelo was last seen on #parrot 0 seconds ago, saying: purl: seen darbelo?
21:03 Infinoid not easily fooled, that one.
21:04 darbelo If she parsed her own output she should have replied to her own seen darbelo?
21:04 darbelo or maybe not.
21:05 moritz purl: footest is purl--
21:05 moritz karma purl?
21:05 purl purl has karma of 8568
21:05 moritz footest?
21:05 purl moritz: far above the bay; flower ball; forty two; uprushing and away; one color among the rest; it's not a pumpkin; swoosh; broadleaf reflection; i'm surrounded; curving into infinity; leaf on fern; power line in the corner; towering footstool #2; towering footstool #1; _RS16587; shadowy path; below the roots; flowers, flowers everywhere; sprouting in the foreground; is it a cloud or is it a mountain
21:05 moritz wtf?
21:05 darbelo karma foo
21:05 purl foo has karma of 18
21:05 moritz purl: fooalarm is purl--
21:05 moritz karma purl
21:05 purl purl has karma of 8567
21:05 moritz fooalarm?
21:06 moritz it doesn't store it all ...
21:06 jonathan purl, fooalarm is purl--
21:06 darbelo foo++
21:06 moritz purl: fooalarm?
21:06 purl i haven't a clue, moritz
21:06 jonathan heh
21:07 jonathan purl, c++
21:07 not_darbelo seen darbelo?
21:07 purl darbelo was last seen on #parrot 40 seconds ago, saying: foo++
21:07 not_darbelo karma foo
21:07 purl foo has karma of 19
21:07 jonathan I wonder if a line that contains a karma is not then analysed for storage.
21:07 rg looks a lot like it
21:08 not_darbelo There. She doesn't parse her own output.
21:08 darbelo karma-wise
21:09 darbelo Infinoid: The ghost of the polyglobot misses!
21:10 moritz I can send in p6eval
21:10 moritz but the only language it understands is Perl 6
21:13 * Coke works around a stupid unicode bug.
21:14 * Coke wonders why a application meant to run globally isn't using unicode strings in the DB. "sigh"
21:23 dalek rakudo: c223b06 | pmichaud++ | src/builtins/eval.pir:
21:23 dalek rakudo: When reading Perl 6 files, evalfiles needs to assume utf8 encoding.
21:23 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c​223b065072357a5ae21e544fb55d2927934d99d
21:23 dalek rakudo: f7dbcce | pmichaud++ | :
21:23 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
21:23 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​7dbcce271b8ee4c0ba171b242688b87e62d06d6
21:27 mj41 Hi. Another small step on TapTinder road, see test diff http://tinyurl.com/obwo2j Good night from Czech republic :-).
21:29 Infinoid darbelo: Hmm, my #665 patch breaks stuff.  t/tools/pmc2c.t .. PMC filename pmc2c.t_1.pmc does not match pmclass name a!
21:32 cotto Infinoid, if that's the only thing that breaks, then the test probably needs to be fixed or TODO'd.
21:35 dalek parrot: r38778 | chromatic++ | trunk/src/pmc/nci.pmc:
21:35 dalek parrot: [PMC] Avoided an unnecessary STRING copying and creation in NCI's
21:35 dalek parrot: set_pointer_keyed_str VTABLE entry.  If the STRING is already constant, there's
21:35 dalek parrot: no point in creating another constant string (even if we do cache constant
21:35 dalek parrot: STRINGs).  This gets called mostly at initialization time, when initializing
21:35 dalek parrot: MULTI variants from compile-time constants anyway.  This change speeds up
21:35 dalek parrot: Parrot initialization by 2.59%.
21:35 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38778/
21:36 Infinoid Yeah, I'll update the patch
21:38 Infinoid The whole test needs some creative tmpfile handling
21:39 cotto I'm not convinced of its value.
21:40 Infinoid Having pmc2c.t is better than not having it
21:41 cotto It seems very specific to pmc2c rather than testing that it dtrt and generates usable code.
21:44 Infinoid If you want to reappropriate the test for pmcc, I won't stop you
21:44 Infinoid Hmm.  At the point when "make test" runs, parrot itself has already been built, which implies that all the build tools (like pmc2c) have already more or less worked
21:44 cotto pmcc already has its own tests.
21:44 cotto Infinoid, exactly
21:45 dalek parrot: r38779 | chromatic++ | trunk/src (2 files):
21:45 dalek parrot: [MMD] Changed MULTI initialization to delay generating type typles of candidate
21:45 dalek parrot: NCIs until the point of a multi call for which they are valid variants.
21:45 dalek parrot: (There's probably another optimization here.)  This avoids a lot of temporary
21:45 dalek parrot: STRING creation and manipulation for MULTIs which may never get called and
21:45 dalek parrot: improves Parrot's startup time by 14.81%.
21:45 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38779/
21:57 darbelo Infinoid: I checked the test out and the generated files won't build. The test only checks that the files get generated, not that they are buildable.
21:58 darbelo So generate wrong files => pass. Choke on invalid input => fail.
21:59 Infinoid yeah
21:59 Infinoid beautiful, huh?
22:00 darbelo The patch didn't break anything that wasn't broken before. It just exposed it. Thats plus in my book.
22:02 darbelo (Exposing brokenness)++
22:03 cotto darbelo, around here we like to kill the messenger.  Sorry.
22:03 cotto If your code breaks Parrot, your code is clearly doing something wrong.
22:06 darbelo Heh. End users will reverse that argument on you when parrot get more visible, so it evens out in the long run ;)
22:07 cotto We solve that problem by being hostile to end-users.
22:08 cotto It's a very simple and elegant solution.
22:09 darbelo Pfft. I use OpenBSD, you all look like tame kittens to me.
22:10 rg heh, yeah. they haven't met theo ;)
22:10 darbelo "Go use linux, you [REDACTED]"
22:16 acajou left #parrot
22:31 kid51 joined #parrot
22:31 eternaleye joined #parrot
22:35 dalek parrot: r38780 | allison++ | trunk/ports/ubuntu/control.in:
22:35 dalek parrot: [ubuntu] Don't bother with custom Ubuntu section names.
22:35 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38780/
22:53 Theory joined #parrot
23:04 darbelo Speaking of breaking:
23:04 darbelo ../instdir/bin/parrot:/home/darbelo/parrot/in​stdir/lib/1.1.0-devel/dynext/decnum_group.so: undefined symbol 'Parrot_DecBase_class_init'
23:04 darbelo lazy binding failed!
23:04 darbelo Segmentation fault (core dumped)
23:05 tetragon joined #parrot
23:06 whoppix_ joined #parrot
23:06 darbelo Somebody didn't like an empty DecBase.
23:09 * Infinoid thought those weren't supposed to be global/exported any more
23:12 darbelo DecBase is extended by DecNum2 and DecContext. And all three are in the same group.
23:17 Infinoid Are you calling 'Parrot_DecBase_class_init' directly?
23:17 Infinoid Or is it something that was called internally?
23:18 Infinoid (in other words, was it called by parrot or by decnum_group.c?)
23:19 darbelo I think it was parrot. DecBase is an 'empty' abstract PMC. Just one ATTR, no VTABLEs, no METHODs. The other PMCs just inherit it.
23:20 donaldh joined #parrot
23:21 Infinoid I can try to reproduce it here
23:22 darbelo svn checkout http://decnum-dynpmcs.googlecode.com/svn/trunk/ somewhere
23:22 darbelo relevant files are decnum2.pmc, decbase.pmc and deccontext.pmc
23:23 darbelo Or if just need to look at the code: http://code.google.com/p/decnum-dynp​mcs/source/browse/#svn/trunk/src/pmc
23:25 Infinoid nice.
23:25 Infinoid Reading configuration information from ../test/parrot_config
23:25 Infinoid Creating src/pmc/Makefile
23:25 Infinoid Can't open perl script "/usr/local/lib/parrot/1.1.0-de​vel/tools/dev/gen_makefile.pl": No such file or directory
23:25 Infinoid (that probably isn't decnum-dynpmcs's fault)
23:26 darbelo Ah. I forgot about that. I caved in and installed parrot on $(WORKDIR)/../instdir/
23:27 darbelo I blame it on parrot_config not making up it's mind wether it's installed or not.
23:28 Infinoid parrot_config is fine, tools/dev/mk_language_shell.pl hardcodes the installed path
23:29 afk-coke parrot_config is NOT fine. :P
23:29 afk-coke \/nick Coke
23:30 Coke parrot_config is NOT fine. :P
23:30 darbelo A parrot configured with --prefix=/home/darbelo/some/path and installed there doesn't have any references to /usr/local that I noticed.
23:31 Infinoid ok.  but parrot_config isn't the cause of this
23:31 Coke -> reboot
23:31 darbelo Configure.pl is looking for my $build_tool = $config{libdir} . $config{versiondir}  . '/tools/dev/gen_makefile.pl';
23:32 nopaste "infinoid" at 76.215.211.232 pasted "mk_language_shell-depends-​on-installed-parrot.patch" (21 lines) at http://nopaste.snit.ch/16551
23:32 Infinoid darbelo: I applied a similar patch directly to your Configure.pl and now it didn't give me any errors
23:32 Infinoid Of course, it doesn't build either, there are other similar problems
23:33 darbelo Send me the patch and I'll commit it.
23:33 Infinoid Let me make sure I'm going down the right path first
23:34 Coke joined #parrot
23:35 Infinoid ok, it's still depending on installed parrot for pmc2c.pl, the -I lines, and all kinds of other things
23:36 darbelo It's the Makefile.in templates, they all reference @libdir@.
23:36 Infinoid Yeah, I'm backtracking to try to find an easier place to fix it
23:41 Infinoid Ok, that failed
23:43 bacek_ joined #parrot
23:49 dalek decnum-dynpmcs: r39 | darbelo++ | trunk/examples/dec (2 files):
23:49 dalek decnum-dynpmcs: (from /trunk/examples/deccontext.pir
23:49 dalek decnum-dynpmcs:  :35)
23:49 dalek decnum-dynpmcs:   Rename example.
23:49 dalek decnum-dynpmcs:  Fix the loadlib line.
23:49 dalek decnum-dynpmcs: review: http://code.google.com/p/decn​um-dynpmcs/source/detail?r=39
23:51 darbelo If it had worked, you'd be testing the wrong lib. ;)
23:56 darbelo Hmm what arch are you on?
23:57 Infinoid x86-64 linux
23:57 dalek rakudo: b41e13b | tene++ | perl6.pir:
23:57 dalek rakudo: Migrate Rakudo to use .HLL 'perl6'
23:57 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/b​41e13b7810e80288d676167c779a85c892f85ed
23:58 Infinoid darbelo: are you seeing all those C++ warnings?
23:59 darbelo Yes, It's becouse one of the ATTRS is a "void *". So far they've proven harmless.

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

Parrot | source cross referenced