Camelia, the Perl 6 bug

IRC log for #parrot, 2009-04-25

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:03 wayland76 indeed
00:04 cotto darbelo, using something like perl tools/dev/mk_language_shell.pl --with-pmc foo /usr/src/decnum-dynpmc will take care of all those kinds of details.
00:05 darbelo Hmm. The Configure.pl generated by mk_language_shell can't find my parrot_config.
00:07 cotto Is it in your $PATH?
00:07 Infinoid that Configure.pl should support --parrot_config=<path_to_parrot>
00:09 AndyA joined #parrot
00:10 darbelo I looks like it needs an installed parrot: Can't open perl script "/usr/local/lib/parrot/1.1.0-de​vel/tools/dev/gen_makefile.pl"
00:11 NotFound Please look at the logs, we were talking about that some hours ago
00:11 Infinoid NotFound++ # I was just thinking this sounded familiar
00:12 davidfetter HAI
00:12 Infinoid ohai davidfetter
00:13 davidfetter i'm confused about version numbers. is 1.1.0 a new major version, as in the packagers should take notice?
00:13 Infinoid the .0 is just there in case we screw up something so badly that we have to immediately release a fixed version
00:13 Infinoid otherwise, our versioning is intended to be as linear as possible.
00:15 davidfetter um, in the sense of being a major upgrade from 1.0.0
00:16 Infinoid from a distro perspective, 1.1.0 is definitely worth paying attention to because the latest rakudo needs it
00:16 Infinoid otherwise, 1.1.0 is just the latest development release; 1.0.0 is still the latest "supported" one
00:17 davidfetter hrm
00:17 darbelo The problem is that the generated Configure.pl tries to use "$config{libdir} . $config{versiondir} . '/tools/dev/gen_makefile.pl';" .
00:17 davidfetter is there a fixed number for the next "supported" release?
00:17 Infinoid yes, 1.4.0
00:17 davidfetter k
00:18 Infinoid the version number just indicates another month has gone by, that's all.  if you're lazy, just package 1.0 and 1.4 (the longterm-supported releases), otherwise I think they're all worth paying attention to
00:18 wayland76 And a fixed date too
00:18 wayland76 it's in the roadmap
00:18 davidfetter k
00:19 wayland76 https://trac.parrot.org/parrot/wiki/ParrotRoadmap
00:20 wayland76 I've found that Rakudo doesn't package properly yet
00:20 darbelo Why is $config{libdir} expanding to something inside /usr/local for a parrot that has never left my $HOME dir?
00:20 Whiteknight hello all
00:20 purl It's a crazy world, but hello to you too!
00:20 Whiteknight hello purl
00:21 Infinoid hai Whiteknight
00:21 wayland76 So my suggestion for distros would be to leave the Parrot 1.0.0 package until Rakudo packages properly, and then release an updated Parrot at the same time
00:21 davidfetter thginketihW pus'
00:22 Infinoid yeah.  most people are just interested in rakudo or other HLLs, and can safely pretend parrot doesn't even exist
00:22 Infinoid (ideally)
00:23 wayland76 (Well, when I say "until Rakudo packages properly", I probably should have put in "or some other HLL that needs a higher Rakudo")
00:23 wayland76 That's the plan, but I think until Christmas, Rakudo is going to be tracking Parrot pretty closely
00:23 Infinoid yep.  fperrad++ has done an incredible job of this for win32 so far, on his http://parrotwin32.wiki.sourceforge.net/ site
00:24 Infinoid he's already updated all the HLL plugins except "fun"
00:25 davidfetter better him than me
00:25 davidfetter (re: windows)
00:25 wayland76 Question -- is the plan to remove all Perl5 from Parrot sometime soon?
00:25 NotFound For some values of 'soon'
00:25 cotto wayland76, eventually, but it's a big project
00:25 Infinoid sometime, yes.  I think the plan is 2.0 or after
00:25 davidfetter are we talking cosmologic soon? geologic?
00:26 wayland76 Does that include the build processes too?
00:26 NotFound Before the conjuction of the million of spheres
00:26 Infinoid yes.  and I was wrong, it's the 3.0 plan
00:26 Infinoid see also https://trac.parrot.org/parro​t/wiki/ParrotLongTermRoadmap
00:26 wayland76 Ok.
00:27 cotto ideally it'll be before the sun goes out
00:27 Infinoid That would be nice.
00:27 NotFound Yeah, programming in obscurity is bad for the eyes
00:29 darbelo I think the sun will go out brightly enough that you won't have to worry about obscurity anymore.
00:29 wayland76 So probably not something for me to worry about until 2010 anyway
00:30 Infinoid yeah, we'll ping you about it then
00:30 NotFound I remember an olf joke about windows nt and the end of world...
00:30 cotto wayland76, if you want to help now, it'll be welcome.
00:30 wayland76 No, I'm just thinking of making the Rakudo build system depend on some of the Parrot P5 modules
00:30 cotto Converting Perl PIR tests to pure PIR is a good incremental change you can work on now.
00:31 cotto oic
00:31 wayland76 So let me ask a different question -- what should the build frameworks for HLLs be written in?
00:32 NotFound I'm toying with the idea of making at least one HLL build process based only in parrot
00:32 wayland76 Or should they just be written in the HLL, but then precompiled into PIR before distribution?
00:33 NotFound wayland76: that can be difficult, because the generated pir may depend of other parts of the hll
00:34 Infinoid It's an interesting idea, though.  If you could compile rakudo down to a simple perl6.pir, then you can treat the parrot-dev package the way we currently treat bison/flex; you only need it if you're hacking on it.
00:34 wayland76 Good point.  So unless the HLL has some --compile-as-static type option, the build system would have to be in PIR or something
00:34 Infinoid NotFound: Are you thinking of the dynpmcs?
00:35 Infinoid We'd probably need parrot-dev for dynpmcs/dynops anyway.
00:35 NotFound Infinoid: for example
00:35 NotFound Ah, yes I mean parrot-dev, not pure parrot
00:37 NotFound wayland76: nqp can be used as higher level approach than pir
00:38 wayland76 Ok.  I think my plan then will be to use P5 depending on Parrot for now, and we can convert to something appropriate later on.  But thanks for the nqp tip.
00:44 darbelo Until I can think of something better I've hacked Configure.pl to be overridable from the command line. If you don't have an installed parrot, you should know where you've put it.
00:45 NotFound Even if I put it in a pen drive that is not plugged, your script must be able to find it.
00:46 cotto darbelo, good to know.  Are you going to have something worth committing soon?
00:48 Coke Infinoid: (all the hll plugins) - like, partcl?
00:48 darbelo Not for a few hours, I'll go get some food and then hack some more.
00:49 darbelo Im trying to get a prototype PMC using just decQuad.c and decContext.c
00:50 darbelo just to make sure we can correctly build the library.
00:53 cotto right
00:54 cotto darbelo, I'm making a Google group for discussion of your soc project.  Is announce ok with you (i.e. anyone can read, only approved people can post)?
00:54 darbelo Sure, go ahead.
00:55 darbelo Be back in ~1.2 hours.
00:58 kid51 joined #parrot
01:50 amoc joined #parrot
01:57 eternaleye joined #parrot
02:00 rg uhm is smolder down?
02:15 Infinoid seems so
02:37 kid51 joined #parrot
02:41 janus joined #parrot
03:23 braceta left #parrot
03:24 Xrblackwe joined #parrot
03:32 dalek parrot: r38335 | jkeenan++ | branches/install_tools (6 files):
03:32 dalek parrot: Convert doc_dir to docdir throughout.
03:32 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38335/
04:14 Theory joined #parrot
04:24 gaurav joined #parrot
04:30 bacek hi there
04:30 purl salut, bacek.
04:34 cotto hi, bacek
04:34 bacek cotto: good morning :)
04:35 bacek cotto: I'mm going to merge PMC fixes from pmc_pct branch into trunk. Objections?
04:35 cotto I'm happy to hear it.
04:35 cotto well, read
04:41 * bacek running make test
04:55 dalek parrot: r38336 | bacek++ | trunk/src (20 files):
04:55 dalek parrot: Merge PMC fixes from pmc_pct branch into trunk. cotto++
04:55 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38336/
04:58 cotto bacek, what's next?
04:59 bacek cotto: I'm reading PCT docs to understand how properly implement emitting of .c and .h files
05:00 cotto good idea
05:00 purl cotto: Good Idea: Visiting the circus. Bad Idea: Having the circus visit you.
05:08 dalek parrot: r38337 | bacek++ | branches/pmc_pct/docs/pct/gettingstarted.pod:
05:08 dalek parrot: Fix link to supplimentary doc.
05:08 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38337/
05:27 darbelo joined #parrot
05:30 Tene What's the path that parrot uses when I say ".include 'foo.pbc'" ?
05:36 Tene Ah, it uses Parrot_locate_runtime_file_str
05:38 flh joined #parrot
05:49 wayland76 That function, IIRC, returns one of three paths depending on which you ask for
05:50 wayland76 Paths are the only part of Parrot that I know anything about (well, and a little of the build system)
05:51 Tene the PARROT_RUNTIME environment variable
05:53 bacek looks like all power of PCT is useless for PMC "compiling"...
05:53 Tene orly?
05:53 purl YA RLY.
05:54 bacek Or, more likely, that I'm dumb and dont understand how to use it...
05:55 bacek Tene: yeah... For generating .c and .h files from PMC I don't need POST and PIR stages.
05:55 bacek And looks like using PAST isn't useful too
05:55 Tene bacek: you can customize the stages it uses, right?
05:55 bacek Tene: yes.
05:56 bacek But I "generate_h" and "generate_c" stages are parallel.
05:56 bacek It's more like "PCT::Dumper"
05:57 bacek So, I'll have only one stage - "parse"...
05:57 * bacek definitely missed something crucial
06:00 cotto bacek, you should ask pmichaud about it.
06:00 bacek purl: seen pmichaud
06:00 purl pmichaud was last seen on #parrot 17 hours, 14 minutes and 43 seconds ago, saying: cotto: I'm not aware of an easy way to do it.
06:28 eternaleye joined #parrot
06:28 bacek purl: mgs pmichaud And ideas how to use PCT to generate .h and .c files using PCT? I'm dumb enough to figure out how to do it...
06:28 purl bacek: i'm not following you...
06:28 bacek purl: msg pmichaud And ideas how to use PCT to generate .h and .c files using PCT? I'm dumb enough to figure out how to do it...
06:28 purl Message for pmichaud stored.
06:28 bacek good girl
06:28 purl thanks bacek :)
06:38 wayland76 bacek: I think that last sentence says the opposite of what you want it to
06:39 wayland76 It should probably be "I'm dumb enough to TRY TO figure out how to do it" (which means you're stupid for trying), or "I'm too dumb to figure out how to do it"
06:42 cotto He'll get the idea.
06:44 wayland76 cotto: Hopefully, yes.  But I wasn't sure which of the two bacek meant, so I thought I'd try to help clarify.  But it's probably not important :)
06:45 bacek whatever :)
06:45 bacek English is my forth language.
06:46 bacek After Russian, Rude Russian and Very Very Rude Russian :)
06:47 eternaleye joined #parrot
06:48 wayland76 bacek: Well, it's been my experience that multilingual speakers appreciate language clarification more than native speakers, so I stereotyped you that way :) but maybe I'm wrong
06:49 wayland76 Theoretically I speak two languages, but I haven't spoken any French since I was maybe 16 or so, although I've been able to help translate Franglais into English :)
06:49 bacek wayland76: I can't understand difference between "dumb enough" and "too dumb". I'm too dumb for it
06:49 wayland76 So you're 2 ahead of me
06:50 wayland76 To give an example, dumb enough = "if you score 10 or more on the scale, then dumb enough is true"
06:51 wayland76 whereas too dumb = "if you score 10 or more on the scale, then too dumb is false"
06:51 wayland76 (where 10 is a random number I picked)
06:51 bacek oh...
06:52 bacek It's even more complicated than PGE sources.
06:52 wayland76 So, dumb enough = ! too dumb
06:52 wayland76 Yes.  That's why PGE can be compiled, and English can't :)
06:52 bacek :)
06:52 wayland76 (or other natural languages)
06:52 wayland76 Although after Christmas, I might be dumb enough to try :)
06:53 dalek tracwiki: v11 | cotto++ | ParrotQuotes
06:53 dalek tracwiki: bacek speaks four languages
06:53 dalek tracwiki: https://trac.parrot.org/parrot/wiki/Pa​rrotQuotes?version=11&amp;action=diff
06:53 shorten dalek's url is at http://xrl.us/beqb7u
06:53 wayland76 "so dumb" is a bit like "dumb enough"
06:54 wayland76 My Dad says the Greek men (in Cyprus, where he was) used to boast "I have too much money"
06:54 bacek cotto: :)))
06:54 wayland76 Which means "I have more than I need", and implies "I'd be happier if I had less" :)
06:57 bacek wayland76: "World Financial Crisis" can help those men :)
06:58 wayland76 No doubt
06:58 bacek ok. I give up. I'll create my own AST nodes for PMC... We can scratch them later.
07:04 darbelo Finally! I got *something* out of the decQuad lib.
07:05 cotto Heh.  It always takes a while to get started.
07:07 darbelo Notthing really to get exited about:
07:08 darbelo .sub example :main $P0 = loadlib 'decnum' .local pmc decimal decimal = new 'DecNum' $S0 = decimal.'version'() print $S0
07:08 darbelo .end
07:08 darbelo prints decNumber 3.61%
07:10 darbelo and that's all you are going to get out of this dynpmc right now.
07:10 darbelo 'version'() is the only implemented METHOD right now.
07:11 bacek It compiles? SHIP IT!
07:12 darbelo It compiles if I drop the sources into src/dynpmc/ and hand-hack the Makefile.
07:14 cotto go ahead and commit it
07:14 cotto commit early and often
07:17 darbelo I'm still fighting with the Configure.pl that mk_language_shell.pl generates. And the makefiles that Configure.pl generates.
07:21 darbelo Everything is full of references to /usr/local. I'm starting to think that parrot_config is assuming that it got installed even when it didn't.
07:22 cotto sounds wacky
07:24 darbelo I might cave in and just install parrot, but I want to avoid that.
07:25 cotto You'll probably have to.
07:29 darbelo That AND install-dev.
07:31 darbelo Configure.pl should be finding stuff for me, not forcing me to put stuff where it can find it.
07:42 gaurav joined #parrot
07:49 darbelo Well, first commit is in. Not very usable, but it's there
07:50 cotto sweet
07:50 cotto room for improvement
07:51 cognominal joined #parrot
07:51 deepak joined #parrot
07:51 darbelo An empty room, ready to be filled with improvement ;)
07:52 deepak left #parrot
07:56 darbelo I'm going to get some sleep. I'll try building against an installed parrot later.
07:56 cotto night
07:57 darbelo It should be just a matter of adjusting Makefile.in
08:00 darbelo tangent: Is is reasonable to ask for an installed parrot and parrot-dev to build dynpmcs?
08:01 uniejo joined #parrot
08:02 darbelo I'll go ask my pillow about that :)
08:02 darbelo left #parrot
08:06 iblechbot joined #parrot
08:33 NotFound purl: msg darbelo You can try to use create_language.pl instead of mk_language_shell.pl
08:33 purl Message for darbelo stored.
08:40 dalek parrot: r38338 | bacek++ | trunk/compilers/pct/src/PCT/HLLCompiler.pir:
08:40 dalek parrot: [pct][cage] Comment out useless pop_eh because push_eh was already commented out.
08:40 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38338/
09:06 jq joined #parrot
09:07 szabgab joined #parrot
09:50 cotto If the underlying library handles the code the same way, is there any advantage to having a separate bigint and bignum PMC?
09:51 cotto (thinking about decnumber, not gmp)
09:51 bacek cotto: it depends on library. But parrot's pmc shouldn't
09:52 cotto shouldn't have separate PMCs?
09:56 bacek shouldn't depends on particular library
09:57 cotto I see.
10:02 Ademan joined #parrot
10:06 bacek cotto: btw, I broke PMC parser yesterday...
10:07 dalek parrot: r38339 | bacek++ | branches/pmc_pct/compilers/pmc/README.pod:
10:07 bacek *incoming*
10:07 * bacek hides
10:07 dalek parrot: Add little bit into README.
10:07 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38339/
10:07 dalek parrot: r38340 | bacek++ | branches/pmc_pct/src/pmc/scheduler.pmc:
10:07 dalek parrot: [cage] Add VTABLE to scheduler.pmc. bacek-- for braking parser.
10:07 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38340/
10:07 dalek parrot: r38341 | bacek++ | branches/pmc_pct/compilers/​pmc/src/parser/grammar.pg:
10:07 dalek parrot: Fix PMC grammar.
10:07 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38341/
10:07 dalek parrot: r38342 | bacek++ | branches/pmc_pct/src/pmc/schedulermessage.pmc:
10:07 dalek parrot: [cage] Add VTABLE to schedulermessage.pmc
10:07 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38342/
10:07 dalek parrot: r38343 | bacek++ | branches/pmc_pct/src/pmc/key.pmc:
10:07 dalek parrot: [cage] Add VTABLE to key.pmc
10:07 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38343/
10:10 dalek parrot: r38344 | bacek++ | branches/pmc_pct/src/pmc/namespace.pmc:
10:10 dalek parrot: [cage] Add VTABLE to namespace.pmc
10:10 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38344/
10:10 dalek parrot: r38345 | bacek++ | branches/pmc_pct/src/pmc/role.pmc:
10:10 dalek parrot: [cage] Add VTABLE to role.pmc
10:11 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38345/
10:11 dalek parrot: r38346 | bacek++ | branches/pmc_pct/src/pmc/object.pmc:
10:11 dalek parrot: [cage] Add VTABLE to object.pmc
10:11 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38346/
10:11 cotto bacek, breaking it is half the fun
10:12 bacek cotto: yeah... If you have tests for it.
10:13 cotto It's a lot faster now.
10:13 bacek I've put few '::' in it.
10:13 bacek So it will not try to backtrack
10:14 cotto I was just going to ask that.
10:14 bacek "done" :)
10:17 cotto bacek, are you trying to fix it atm?
10:17 bacek fix what?
10:17 purl i guess fix is to just override new
10:17 bacek purl: forget fix what
10:17 purl bacek, I didn't have anything matching fix what
10:17 bacek purl: forget fix
10:17 purl bacek: I forgot fix
10:18 cotto bacek, nm.  I ran the compiler without --target=parse
10:18 bacek ah, it's totally broken atm
10:19 cotto yup.  That's what I'm seeing too.
10:19 bacek I'm trying to construct proper AST
10:20 bacek EPIC FAIL...
10:20 purl hmmm... epic fail is chopping chili and go pee without washing hands or whatever led to you being born
10:20 bacek for last few hours
10:26 dalek parrot: r38347 | NotFound++ | trunk/examples/streams (4 files):
10:26 dalek parrot: [cage] drop 'library' from load_bytecode path in some examples/streams, see "load_bytecode 'library/...'" thread in parrot-dev list
10:26 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38347/
10:30 flh joined #parrot
10:32 bacek hooray! It works!
10:34 bacek I need ideas how to unittest PAST creating...
10:34 cotto will there be blood, sweat and tears in the next commit?
10:35 cotto You can examine them programatically in pir
10:35 dalek parrot: r38348 | bacek++ | branches/pmc_pct/compilers/p​ct/src/PCT/HLLCompiler.pir:
10:35 dalek parrot: Comment out pop_eh
10:35 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38348/
10:35 dalek parrot: r38349 | bacek++ | branches/pmc_pct/compilers/pmc/t (2 files):
10:35 dalek parrot: Check only parse in parse tests
10:36 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38349/
10:37 * bacek dropping blood tears swearing
10:39 bsdz joined #parrot
10:39 uniejo joined #parrot
10:42 dalek parrot: r38350 | bacek++ | branches/pmc_pct (5 files):
10:42 dalek parrot: Initial implementation of PAST creating.
10:42 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38350/
10:42 bsdz bacek: re unittesting past creation/pct. have you seen t/compilers/pct/complete_workflow.t?
10:43 bacek bsdz: Yes, I did. But it something different.
10:44 bsdz you could use _dumper to dump your past nodes
10:44 bacek looks like it only one reasonable way to do it...
10:45 bsdz how are you thinking?
10:46 bsdz slightly different question. was wondering how will we bootstrap parrot on a new architecure with then new PMC compiler you are creating?
10:46 bacek Something like "shallow" comparison of two objects.
10:46 bacek bsdz: "lex/yacc"
10:47 bsdz ah okay. cool :)
10:47 bacek Yes, certainly desirable, but we're not shooting for that level of
10:47 bacek bootstrapping in the 1.0 release. When we eliminate all dependencies on
10:47 bacek Perl, we'll move over to a PGE-based compiler, and keep the generated C
10:47 bacek code checked into the repository like we keep the generated flex/bison
10:47 bacek files checked in.
10:47 bacek (c) allison
10:47 cotto L1?
10:47 purl L1 is a hypothetical language that would be used to implement PMCs and PIR-visible ops so that they could all be easily jitted. or http://irclog.perlgeek.de/p​arrot/2009-04-21#i_1083550
10:50 bacek purl: L1 is also http://rt.perl.org/rt3/Ticket/D​isplay.html?id=39313#txn-471982
10:50 purl okay, bacek.
10:50 shorten bacek's url is at http://xrl.us/beqcfo
10:50 bacek it's not L1 but closely related.
10:50 bsdz yes recall that conversation. definitely the way to go. will purl pick up that L1 is the PMC compiler and PMC compiler is L1
10:52 * bacek thinks about HURD
10:54 * cotto hopes we don't end up with silly names for intermediate languages like gimple and generic.
10:55 bacek PIG - PIG Is Generic :)
10:56 cotto PING - PING Is Not Generic
10:56 * cotto tries to figure out something for "pingu"
10:57 bacek PMSE - PMSE Mean Something Else
10:57 bacek "u" for "useful"!
10:57 cotto Ping Is Not Generally Useful
10:57 bacek indeed! :)
10:58 bacek OMG - Our Main Generic :)
10:58 bacek N!
10:58 bacek NO!
10:58 bacek LOL - Level One Language!
10:59 bacek Lets implement PMC in LOL! :)
11:00 cotto lol++
11:00 cotto karma lol
11:00 purl lol has karma of 1
11:00 bacek lol++ # vote for lol!
11:00 cotto These are much better silly names.
11:06 bsdz i'm pretty bad at these but perhaps Parrot is Assembler Runtime Register-based Open-source Type-2-VM :/
11:06 cotto tl;dr
11:10 iblechbot joined #parrot
11:11 bsdz does the trac roadmap still think milestone 1.1 hasn't been reached? or am i misreading it?
11:15 uniejo joined #parrot
11:39 he left #parrot
11:52 Whiteknight joined #parrot
11:59 darbelo joined #parrot
12:29 Santtu joined #parrot
12:52 Casan joined #parrot
12:57 cheflog__ joined #parrot
13:22 kid51 joined #parrot
13:27 mikehh I can't seem to connect to http://smolder.plusthree.com
13:29 rdice joined #parrot
13:29 mikehh I did a sake smoke at r38350 which PASSes but get a connection refused error when it tries to send it
13:29 Whiteknight confirmed, I can't connect to it either
13:30 kid51 I believe there was talk on list last night about Smolder being down.
13:31 kid51 I wish I had remembered that before I just started to run Smolders on 2 OSes :(
13:34 Whiteknight yeah, I know what you mean
13:34 Whiteknight I still need to get smolder working properly on my win64 box
13:35 mikehh oh well - I am building and testing rakudo now and will some other tests on parrot after that
13:43 mikehh BTW I installed Ubuntu Jaunty i386 yesterday and had great fun with CPANPLUS getting the perl modules up to date
13:44 kid51 Fortunately, we have some POD on dealing with Smolder outages:
13:44 kid51 On network problem or for offline use you may send tar reports later
13:44 kid51 with that command:
13:44 kid51 perl -Ilib -MParrot::Harness::Smoke \
13:44 kid51 -e'Parrot::Harness::Smoke::send_arc​hive_to_smolder(Parrot::Harness::S
13:44 kid51 moke::collect_test_environment_data())'
13:48 dalek parrot: r38351 | whiteknight++ | trunk/DEPRECATED.pod:
13:48 dalek parrot: Add two function names to DEPRECATED.pod for TT #155 and #156
13:48 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38351/
13:49 kid51 From 70.42.41.97 icmp_seq=21 Packet filtered
13:49 kid51 --- smolder.plusthree.com ping statistics ---
13:49 kid51 21 packets transmitted, 0 received, +14 errors, 100% packet loss, time 20100ms
13:50 mikehh you can also connect to the site and upload the parrot_test_run.tar.gz file
13:53 fperrad_ joined #parrot
14:03 HG` joined #parrot
14:39 amoc joined #parrot
14:43 Infinoid good morning
14:50 Whiteknight mornin' Infinoid!
14:53 Woody4286 joined #parrot
15:19 tetragon joined #parrot
16:08 HG` joined #parrot
16:08 dalek parrot: r38352 | whiteknight++ | trunk (4 files):
16:08 dalek parrot: Remove the unused no-op function stack_destroy() per TT # 523
16:08 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38352/
16:14 Infinoid ooh, Whiteknight++ # working on attr parsing
16:14 Whiteknight Thanks. That patch is buggy though, so if you can take a look at it, that would be awesome
16:15 Infinoid I will, thanks
16:19 Infinoid I think I recall some cases elsewhere in pmc2c which attempted to strip off the type to get the name, which expected the type to be a simple \S+\s*\* prefix
16:19 Infinoid getting the name out of a function pointer declaration is a little more exciting.
16:20 Whiteknight I didn't see any code that looked obviously malformed, everything in src/pmc/pmc_managedstruct.h looked reasonable
16:20 Whiteknight and it did compile and run, so that's something
16:21 Infinoid you're right, that does all look good
16:21 * Infinoid running make test now
16:22 Infinoid hmm.  # Attribute 'oid' already exists in 'ManagedStruct'.
16:22 Infinoid is that some kind of attribute inheritance issue?
16:28 nopaste "Infinoid" at 75.5.243.250 pasted "Backtrace from adding the redundant 'oid' attr (caused by this PIR: test = new ['ManagedStruct'])" (33 lines) at http://nopaste.snit.ch/16410
16:30 Infinoid it seems to be creating a PMCProxy rather than a ManagedStruct.  I don't know if that's normal or not.
16:32 kid51 joined #parrot
16:33 gaurav joined #parrot
16:43 Infinoid after the patch, pmc2c emits an invalid vtable->attribute_defs string
16:44 Infinoid before: Isize Finit :custom_free_func :custom_free_priv :custom_clone_func :custom_clone_priv
16:44 Infinoid after: Isize Finit :(*custom_free_func)(PARROT_INTERP, void *, void *) :custom_free_priv F(*custom_clone_func)(PARROT_INTERP, PMC *ptr, void *priv) :custom_clone_priv
16:44 Infinoid (I'm guessing the type of "size" was "I", this is pulled from printing the half-parsed string)
16:46 Infinoid so it's another place where pmc2c needs help parsing the name from the declaration
16:56 Whiteknight okay, so that makes good sense then
16:56 Whiteknight now we just need to find the place where that attribute string is being defined
16:56 Whiteknight or, being populated
17:04 Whiteknight okay, I think I found that point in the code.
17:04 * Whiteknight starts hacking a fix
17:15 Infinoid yeah
17:15 Infinoid I was halfway done finding the place for a fix, but then I got a phone call, sorry
17:19 Whiteknight Infinoid++ I think I've got it
17:20 Whiteknight i'm going to commit since all tests pass
17:20 Infinoid Whiteknight++
17:22 masak joined #parrot
17:26 dalek parrot: r38353 | whiteknight++ | trunk (4 files):
17:26 dalek parrot: A fix for TT #544, plus proof-of-concept implementation in ManagedStruct PMC. Allows parsing arbitrary function pointers as ATTRs, to reduce the use of void* pointers floating around.
17:26 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38353/
17:26 wayland76 joined #parrot
17:48 iblechbot joined #parrot
18:02 Infinoid Parrot has a reasonably sane deprecation policy, but one thing I feel is missing is a migration guide.  That is, when we remove a feature or API, we should drop a note somewhere saying "If you used this, now you should use this instead"
18:03 Infinoid I've had to work with some projects which do this, and some projects which don't.  I really like it, because as a third party developer, it reduces the time for me to find a fix by at least an order of magnitude
18:03 Infinoid If we were to do this for parrot, where would we put it?
18:05 Infinoid (Or are we already doing this and I just haven't found it yet?)
18:07 wayland76 joined #parrot
18:23 Whiteknight maybe sounds like a Trac thing to me
18:26 pmichaud we already have this.
18:26 pmichaud https://trac.parrot.org/parrot/wiki/Deprecation
18:30 Casan joined #parrot
18:31 Infinoid oh good, thanks.
18:54 eternaleye joined #parrot
18:58 s1n joined #parrot
18:58 barney joined #parrot
19:02 kid51 joined #parrot
19:14 eternaleye joined #parrot
19:22 Tene gdb takes a while to walk 280k stack frames.
19:22 Tene ... oh, gdb segfaulted.
19:35 Whiteknight 280k stack frames? sounds to me like an infinite loop
19:36 Infinoid hmm, it would be nice if Devel::NYTProf saved its sessions to separate files for each invocation, by including the pid in the filename or somesuch
19:36 Infinoid turns out perl is invoked almost 500 times during a normal "make"
19:38 Infinoid looks like c2str has the biggest traces
19:39 Infinoid I'll find out in a moment whether that's relevant.
19:40 Tene Whiteknight: it is.
19:44 Tene Whiteknight: was I also talking with you about the pmc hll stuff?
19:46 Whiteknight yeah
19:46 nopaste "tene" at 166.70.38.237 pasted "pmc hll small example for whiteknight" (7 lines) at http://nopaste.snit.ch/16411
19:47 Whiteknight is that the infinite loop?
19:47 Tene No.
19:47 pfig joined #parrot
19:47 Whiteknight okay
19:47 Tene The infinie loop was from trying to migrate rakudo to .HLL 'Perl6'
19:47 Tene Which I would also love help on... I'm out of ideas for now.
19:48 Tene I'm not sure if it's relevant to this issue, though.
19:48 Whiteknight I'd love to help, you have any information about the work you've been doing so far?
19:48 pfig evening
19:48 pfig in utc, at least :)
19:48 Tene Whiteknight: the 'hll' branch in rakudo
19:49 Whiteknight Tene: okay. I don't know GIT, how do I check it out?
19:49 Tene git fetch; git checkout origin/hll
19:49 Tene will work
19:50 Tene if you want to make some local commits, you can then 'git checkout -b hll' to make a local branch
19:51 pfig there's a problem with dynpmc which causes ld to fail. after googling i added -c manually to the c++ invocation, but then all sorts of tests fail
19:52 pfig is this a known issue? mac os x 10.5.6/intel
19:52 pfig both parrot 1.0.0 and 1.1.0
19:54 Tene Whiteknight: I must leave now... let me know what you find?
19:55 dalek parrot: r38354 | jkeenan++ | branches/install_tools/lib/Parrot/Install.pm:
19:55 dalek parrot: Correct bug I introduced in r37913:  should have been 'lib/Parrot/Install.pm'.
19:55 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38354/
19:55 Whiteknight Tene: Ok, if I can fnd anything
19:55 Whiteknight rakudo is very new to me
19:55 Tene Whiteknight: I think that PMCs need a way to say what HLL namespace they're installed in.
19:56 Whiteknight okay
20:03 gryphon joined #parrot
20:07 kid51 msg wayland76 I believe I fixed bug in install_files ticket.  Please svn up in branch and try out.  thanks
20:07 purl Message for wayland76 stored.
20:19 s1n joined #parrot
20:31 Whiteknight joined #parrot
20:41 pfig ah, g++ is used as linker... gcc runs with -c, though so i'm stumped. everything works fine in linux
20:42 dalek parrot: r38355 | whiteknight++ | trunk/src/dynext.c:
20:42 dalek parrot: Remove some unhelpful comments from src/dynext.c. One is about the now-defunct struct val, and the other is just the string 'XXX'
20:42 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38355/
20:42 pfig right, that's parrot done for another month then
20:45 Whiteknight pfig: I've never heard that issue before
20:45 Whiteknight open a ticket
20:54 pfig joined #parrot
20:55 eternaleye joined #parrot
21:30 eternaleye joined #parrot
21:34 eternaleye_ joined #parrot
22:09 Infinoid Are we tied to the current hash function c2str.pl uses, for any reason?  (This is the second column of output in all_cstring.str.)
22:11 nopaste "infinoid" at 75.5.243.250 pasted "[PATCH] [tools] Make c2str.pl stop using Math::BigInt and simplify the hash algorithm a bit; this speeds builds up parrot builds by 10 seconds (8%) for me." (36 lines) at http://nopaste.snit.ch/16412
22:13 Infinoid before: make -j8  112.34s user 16.40s system 173% cpu 1:14.01 total
22:13 Infinoid after : make -j8  101.88s user 15.56s system 174% cpu 1:07.24 total
22:28 Infinoid uh.  It doesn't look like the hash value is ever used, anyway.  I can probably kill that and save some more time
22:40 s1n joined #parrot
22:45 bacek Good morning
22:45 bacek Infinoid: patches welcome to pmc_pct branch :)
22:46 Infinoid hi bacek
22:46 Infinoid what's pmc_pct?
22:47 bacek Experiment with compiling PMC using PCT
22:47 bacek https://trac.parrot.org/parrot/browser/branche​s/pmc_pct/compilers/pmc/src/parser/grammar.pg
22:47 shorten bacek's url is at http://xrl.us/beqdye
22:48 bacek I can already parse all PMCs :)
22:48 Infinoid bacek: Be aware, Whiteknight++ improved pmc2c slightly today, allowing for function pointer types for ATTRs, see https://trac.parrot.org/parrot/changeset/38353
22:48 Infinoid So you might need to update it for the changes to trunk/src/pmc/managedstruct.pmc within that diff
22:49 bacek Infinoid: no, it already allowed in my grammar.
22:49 Infinoid nice stuff tho!
22:49 dalek parrot: r38356 | Infinoid++ | trunk/tools/build/c2str.pl:
22:49 dalek parrot: [tools] Make c2str.pl stop using Math::BigInt, simplify the hash algorithm.
22:49 dalek parrot: This speeds builds up parrot builds by 10 seconds (8%) for me.
22:49 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38356/
22:49 dalek parrot: r38357 | Infinoid++ | trunk/tools/build/c2str.pl:
22:49 dalek parrot: [tools] The hash_val output of c2str isn't used anyway, just get rid of it.
22:49 dalek parrot: review: https://trac.parrot.org/parrot/changeset/38357/
22:50 bacek Hm... I was wrong. "Failed to parse source".
22:50 bacek Ah. Function pointers...
22:51 Infinoid Yeah.  Don't you love C's syntax for those?
22:51 * bacek have to steal more stuff from c99.pg
22:53 bacek gotta go. Will be back in ~1 hour
22:53 barney joined #parrot
23:18 Whiteknight bacek: This is really nice work
23:18 Whiteknight bacek++
23:34 bacek Whiteknight: little step to rule the World :)
23:34 Theory joined #parrot
23:35 Whiteknight bacek: Where does the C code get generated?
23:35 Whiteknight or does that not happen yet?
23:35 bacek Whiteknight: not yet
23:36 bacek I just started 2 days ago.
23:36 Whiteknight ah. Well, looking forward to it
23:36 bacek "patches welcome" :)
23:45 kid51 joined #parrot

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

Parrot | source cross referenced