Camelia, the Perl 6 bug

IRC log for #parrot, 2010-10-22

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:00 dukeleto moritz: yeah, i noticed that. I always use noscript.
00:01 mikehh moritz: re ticket #1834 - looks like the old version is still there, when you create a new version, the install does not remove the old version there
00:02 mikehh moritz: if you look in the install dir you probably still have both
00:02 moritz mikehh: yes, but then why the error?
00:02 moritz mikehh: it loaded one, so it must have found it. Why complain about another one?
00:03 dukeleto kid51: re: your question about the ipv6 config step. I think that branch can be merged
00:03 dngor_ left #parrot
00:05 dngor joined #parrot
00:06 kid51 dukeleto:  So, does it do enough re determining ipv6 capabilities for you to do what you need to do?
00:06 theory left #parrot
00:07 kid51 dukeleto:  Note, I just transformed kurahaupo's code into a config step -- but I have no expertise that would enable me to evaluate his code one way or the other.
00:07 mikehh moritz: yeah, I seem to remember getting some strange errors a little while ago where it was picking something up from an installed dir when I should have been working in the build dir
00:07 kid51 dukeleto:  Actually, if you comment on those questions in the ticket, that would be best.
00:08 kid51 is now known as kid51_at_dinner
00:09 moritz mikehh: I don't really understand the issue at hand (and I removed the build dir, so I can't investigate more), I just say that the error message doesn't make sense to me, as is. Maybe a simple rephrasing would fix it, maybe the problem is deeper
00:09 moritz second attempt at sleep&
00:10 dmalcolm left #parrot
00:11 mikehh moritz: I think it is a deeper problem, before I just used to remove libparrot.so to avoid conflicts
00:11 dngor_ joined #parrot
00:12 dngor left #parrot
00:29 dngor joined #parrot
00:31 dngor_ left #parrot
00:47 theory joined #parrot
00:50 kid51_at_dinner nick kid51
00:50 kid51_at_dinner is now known as kid51
00:55 dalek parrot: r49628 | jkeenan++ | trunk (2 files):
00:55 dalek parrot: Per �http://trac.parrot.org/parrot/ticket/1785, complete a deprecation by changing a 'warn' to a 'die' in lib/Parrot/Pmc2c/PMC.pm.
00:55 dalek parrot: review: http://trac.parrot.org/parrot/changeset/49628/
01:01 cotto ~~
01:04 dukeleto cotto: howdy
01:18 cotto whiteknight, nice job blogging.
01:23 GeJ kid51: once llvm-gcc is installed, Configure.pl catches it correctly.
01:24 kid51 GeJ: thanks.
01:26 dalek parrot: r49629 | mikehh++ | branches/generational_gc/src/gc/gc_ms2.c:
01:26 kid51 GeJ:  by the way, are you having any problems on freebsd with the issues I'm having on Darwin (TT #1829)?
01:27 dngor left #parrot
01:27 dalek parrot: [generational_gc] add missing c function docs
01:27 dalek parrot: review: http://trac.parrot.org/parrot/changeset/49629/
01:27 dalek parrot: r49630 | mikehh++ | branches/generational_gc/src/gc/gc_ms.c:
01:27 dalek parrot: [generational_gc] correct c function docs item
01:27 dalek parrot: review: http://trac.parrot.org/parrot/changeset/49630/
01:27 dalek parrot: r49631 | jkeenan++ | failed to fetch changeset:
01:27 dalek parrot: Merge tt1824_ipv6_configure branch into trunk.  Add configure step auto::ipv6, associated probe and test.
01:27 dalek parrot: review: http://trac.parrot.org/parrot/changeset/49631/
01:29 dngor joined #parrot
01:29 GeJ kid51: will read.
01:42 dalek parrot: r49632 | jkeenan++ | branches/tt1824_ipv6_configure:
01:43 dalek parrot: Branch has been merged into trunk and is no longer needed at HEAD.
01:43 dalek parrot: review: http://trac.parrot.org/parrot/changeset/49632/
01:50 Hunger left #parrot
01:52 luben left #parrot
01:52 jnthn left #parrot
01:52 jnthn_ joined #parrot
01:52 he left #parrot
01:53 he joined #parrot
01:56 dukeleto kid51++ # merging the ipv6 config step branch
01:56 Hunger joined #parrot
01:56 davidfetter left #parrot
01:58 whiteknight left #parrot
01:58 luben joined #parrot
02:04 GeJ kid51: in darwin/sysmem.c could you please s/HW_MEMSIZE/HW_PHYSMEM/ and re-enable parrot/sysmem.h in src/gc/gc_ms2.c
02:04 GeJ ?
02:06 kid51 Will try.
02:06 GeJ and see if this fixes your build?
02:14 cotto Both are valid according to Apple.  I hope that's not what ends up being the fix, since it'd say bad things about Apple's docs.
02:18 GeJ cotto: agreed, but kid51's box is 6 years old. Plus, didn't Apple stop releasing new version of OS X on PPC after 10.5?
02:18 Andy joined #parrot
02:24 kid51 cotto, I hate to tell you this, but Apple's got a problem with docs.  GeJ++'s suggestion worked!
02:24 GeJ ok, now we have another problem.
02:24 kid51 Of course, we'll need additional testing on Darwin/Intel, 10.5 and 10.6.
02:24 GeJ and 32 vs 64 bits
02:25 kid51 Yes.  But I think we should commit this and encourage other smokers.  We'll find out more quickly that way.
02:33 cotto I guess they spent all their tuits on ui and app store rejections
02:35 kid51 Good, maybe now I can start thinking about the Parrot project once again.
02:35 * kid51 must sleep
02:35 janus left #parrot
02:36 cotto If it's defined, HW_MEMSIZE should be used.  HW_PHYSMEM is limited to 32-bit values (though it'll be the max if memory is >2^32 B).
02:44 dalek parrot: r49633 | jkeenan++ | trunk (3 files):
02:44 dalek parrot: Per suggestion from GeJ++, s/HW_MEMSIZE/HW_PHYSMEM/ to avoid build error on Darwin.  This needs to be tested on Darwin/i386 in OS X 10.5 and 10.6.
02:44 dalek parrot: review: http://trac.parrot.org/parrot/changeset/49633/
02:48 janus joined #parrot
02:51 kid51 left #parrot
03:15 dalek parrot: r49634 | mikehh++ | branches/generational_gc/src (2 files):
03:15 dalek parrot: [generational_gc] some casts to get g++ to build
03:15 dalek parrot: review: http://trac.parrot.org/parrot/changeset/49634/
05:38 tadzik left #parrot
05:39 theory left #parrot
05:49 Andy left #parrot
05:52 jhelwig left #parrot
05:55 chromatic left #parrot
06:06 fperrad joined #parrot
06:19 jhelwig joined #parrot
06:20 cotto I have a blog: http://reparrot.blogspot.com/
06:21 mikehh_ joined #parrot
06:25 mikehh left #parrot
06:39 dukeleto cotto++
06:40 dukeleto cotto: what does "The tl;dr is that we'll be splitting responsibilities into 5 teams, only one of which will cover architecture." mean ?
06:41 cotto too long; didn't read
06:41 cotto I'm fixing that now
06:42 dukeleto cotto: so is our team structure "officialish" ?
06:43 cotto "officialish" is a good word
06:43 cotto I should clarify that.
06:45 dukeleto cotto: i volunteered for community management lead, but I am not so sure that it is "official". Am I the community manager lead? Do we need a vote or something?
06:47 cotto At this point, "official" is a pretty strong word for anything.
06:48 cotto I suppose a vote would generate discussion and make it seem less like a handful of developers were forcing a structure on everyone else.
06:48 dukeleto cotto: sure. That is why I use "officialish" ;)
06:48 cotto (which isn't the intent, of course)
06:49 dukeleto cotto: yep, that is what I am hinting at. More legitamacy. I would like to see if parrot-users agree that our new structure is viable.
06:50 cotto I want to get things moving and part of me feels like a vote would just slow things down, but we're not working in a vacuum and the feedback we could get might actually get us further toward a stable structure.
06:50 dukeleto I was talking with some RTEMS developer tonight at the hotel and I will be talking with them more this weekend about how to make Parrot on RTEMS viable. They seem to be very excited about getting dynamic languages in real-time environments.
06:51 dukeleto cotto: i am saying that we continue as if we are official, but do a vote as confirmation
06:51 dukeleto cotto: the vote should not slow anything down
06:52 cotto I also don't want to do a vote if there's no possibility it'll change anything.
06:52 dukeleto cotto: i hear that.
06:52 dukeleto cotto: shouldn't chromatic be on the architecture team on the wiki?
06:52 cotto We can say that we're the interim leads until a formal vote can be taken, at which time anyone may be put forward for a role.
06:53 cotto I haven't asked him yet.
06:53 dukeleto cotto: i thought he said yes to that at the pdx gathering, but I could be wrong.
06:54 cotto My memory is treacherous, so it could have gone either way.
06:54 cotto I don't remember it though.
06:54 dukeleto cotto: yep. I will ask him in person tomorrow :)
06:54 cotto wfm
06:55 cotto Do you have the tuits to get the vote set up at some point within the next couple weeks?
06:55 dukeleto cotto: i think smash is the person to do that, if we wants to volunteer
06:56 cotto seen smash
06:56 aloha smash was last seen in #perl6 13 days 15 hours ago saying "colomon: i haven't had the time to improve the harness yet :(".
06:56 dukeleto cotto: he seems to be active on email, but not as much on irc
06:57 * dukeleto goes in search of late-night food options
06:58 cotto happy hunting
06:58 bacek_at_work ~~
06:59 cotto hi bacek_at_work
07:00 bacek_at_work aloha, cotto
07:00 bacek_at_work seen kid51
07:00 aloha kid51 was last seen in #parrot 4 hours 25 mins ago saying "Good, maybe now I can start thinking about the Parrot project once again.".
07:07 cotto particle, thanks for the b-day wishes
07:11 contingencyplan left #parrot
07:15 janus left #parrot
07:41 jsut joined #parrot
07:46 jsut_ left #parrot
07:57 wagle_ joined #parrot
08:02 wagle left #parrot
09:21 mikehh_ is now known as mikehh
09:21 mikehh opbots, names
09:23 jhelwig left #parrot
09:26 zostay left #parrot
09:26 dukeleto aloha, opbots?
09:26 aloha dukeleto: I give up.
09:26 zostay joined #parrot
10:45 dngor_ joined #parrot
10:46 oyse joined #parrot
10:47 dngor left #parrot
11:12 dngor joined #parrot
11:13 dngor_ left #parrot
11:17 dngor_ joined #parrot
11:18 dngor left #parrot
11:39 whiteknight joined #parrot
11:49 whiteknight good morning, #parrot
12:08 GeJ good night, whiteknight.
12:09 whiteknight hello GeJ, how are you doing?
12:10 whiteknight brb
12:10 whiteknight left #parrot
12:11 whiteknight joined #parrot
12:36 bluescreen joined #parrot
12:42 Andy joined #parrot
12:49 contingencyplan joined #parrot
13:23 Andy left #parrot
13:56 fperrad left #parrot
14:01 brianwisti joined #parrot
14:24 jhelwig joined #parrot
14:47 mikehh left #parrot
14:58 tadzik joined #parrot
15:15 allison left #parrot
15:24 dmalcolm joined #parrot
15:26 mikehh joined #parrot
15:44 theory joined #parrot
15:55 dngor_ is now known as dngor
15:57 oyse left #parrot
16:11 dukeleto 'ello
16:13 brianwisti yo
16:15 dukeleto brianwisti: wazzup
16:15 dukeleto brianwisti: what's next to do with parrot-handler ?
16:16 brianwisti Finish making Installer smart so I can make Handler stupid.
16:17 brianwisti Specifically, I'm working on the build stages in Installer (`make test` and `make install` still waiting for me). After that I chop the heck out of Handler so that it relies on Installer to tell it what just happened.
16:27 cognominal left #parrot
16:34 cognominal joined #parrot
16:35 dip left #parrot
16:42 Andy joined #parrot
17:01 estrabd left #parrot
17:02 estrabd joined #parrot
17:09 davidfetter joined #parrot
18:08 cotto ~~
18:09 brianwisti Confused at line 1, near "~~\n"
18:09 cotto ENOTSMARTENOUGH
18:10 brianwisti Oy, tests take a long time when you're testing your app's ability to build and make *other* tests.
18:10 cotto Mmmm.  Metatesting.
18:11 brianwisti It's metatasty.
18:14 dukeleto mmmmm, metagastronomy
18:15 moritz megaastronomy!
18:17 * cotto throws some meta on the bbq
18:18 dukeleto metaburgers for everyone!
18:19 brianwisti I already had lunch. A nice parastrami sandwich on wry.
18:21 patspam joined #parrot
18:44 dukeleto what are people hacking on today?
18:46 moritz other people :-)
18:46 brianwisti $work and parrot-handler.
18:47 moritz actually most of my hacking time today was spent on my new vocabulary coach
18:47 moritz (written in Perl 6)
18:47 moritz (I'm trying to learn Norwegian these days .-)
18:51 * jnthn_ plans to hack on exceptiony stuff in 6model
19:01 moritz like, exceptional stuff? :-)
19:02 jnthn_ Like, exceptions. :P
19:02 jnthn_ I did .leave yesterday.
19:03 dukeleto This is quite interesting: http://aws.amazon.com/free/ <-- free S3 and EC2 for a year
19:03 jnthn_ So can now implement return exception handling in terms of it. :-)
19:03 jnthn_ And yes, I'll do the handler search lexically, per spec. :-)
19:03 * jnthn_ hopes that Parrot's exception model may come to look more like what he's in the proccess of implementing.
19:11 whiteknight jnthn_: Parrot's exception model does need an overhaul
19:11 whiteknight if you would like to share notes...
19:14 jnthn_ whiteknight: *nod*
19:14 jnthn_ whiteknight: Will do - I probably need to write an implementation first to get more of a feel for it.
19:15 jnthn_ whiteknight: But if it works out nicely I'll write up the details.
19:15 wagle_ are the scripts in tools/dev/* documented anywhere (in addition to the stuff in each script file)?
19:18 jnthn_ whiteknight: The essentials of it are that stack unwinding isn't done unless/until needed, exception handlers are run in the dynamic scope of the place the exception was thrown, and thus resumable exceptions are simply provided by not causing a stack unwind. The whole model is free of needing to deal with continuations.
19:28 whiteknight that does sound nice
19:54 whiteknight left #parrot
20:32 lucian joined #parrot
20:50 Tene jnthn_: working on exceptions now?  Even more tempting...
20:51 jnthn_ ;-)
20:51 jnthn_ Tene: Well, prototyping it in the .Net impl first.
20:52 jnthn_ It's an easy playground. :-)
20:52 jnthn_ Tene: If you want to look at enabling the same bunch of things on Parrot though, that'd be awesome.
20:53 Tene jnthn_: If you show me what you're interested in or need or want, I'd love to consider that.
20:53 Tene Parrot's exceptions system is... suboptimal.
20:53 Tene I don't actually have anything planned for tonight yet...
20:55 jnthn_ Tene: One thing that'd let us immediately fix up a long-standing Rakudo bug is a way to throw an exception lexically.
20:55 Tene walk the outers instead of the callers?
20:55 jnthn_ Right.
20:55 Tene Sure, that's totally doable.
20:56 jnthn_ One thing that I'm also doing (as per Perl 6 spec) is invoking the handler and *then* unwinding the stack if needed.
20:56 Tene I should be able to hack that up tonight.  I could rebase my exceptions_refactor branch on top of head.
20:56 jnthn_ I think Parrot today unwinds the stack while looking for the handler.
20:56 jnthn_ The upshot is that resumable exceptions need not be continuations.
20:56 jnthn_ You just mark the exception object as resumable.
20:57 Tene Hmm.
20:57 jnthn_ And then it says "oh, then I guess I needn't unwind the stack"
20:57 jnthn_ The thing is, Parrot doesn't bound exception handlers in a code sense.
20:57 jnthn_ In what I'm working on, all handlers are blocks, never labels.
20:58 jnthn_ Going to see if I can get it like that.
20:58 jnthn_ *get it working
20:58 Tene So, if I have an exception handler in a block, and I call a function, and an exception is thrown somewhere in that other function, my exception handler isn't lexically in that scope, so how do I catch that exception?
20:58 jnthn_ Tene: S04 feels more concrete these days, fwiw. The "Exception handlers" section actually has code in it :-)
20:58 Tene orly?
20:59 jnthn_ The handler is in the dynamic scope of the thrower, but in the lexical scope of the catcher.
20:59 jnthn_ The point of invocation doesn't affect the outer, just the caller.
21:00 jnthn_ Hmm...I guess you can get into loops if you throw while handling.
21:00 Tene I'm sorry, I don't actually follow what you're looking for with "throw an exception lexically", then.
21:01 bluescreen left #parrot
21:01 jnthn_ Ah, there's two distinct things here.
21:01 jnthn_ The "throw lexically" means "look for a handler lexically"
21:01 Tene The labels bit in parrot exception handlers has always bothered me.
21:01 jnthn_ The actual invocation of the handler should look the same whether it was found dynamically or lexically.
21:02 Tene So you search lexically and dynamically?  both?  what order?
21:02 jnthn_ It's kinda the same as $foo() vs $*foo() semantics
21:02 jnthn_ We need a couple of ways to throw.
21:02 jnthn_ throw today just looks in the dynamic scope
21:02 jnthn_ We need a throw_lexically or something.
21:03 jnthn_ That looks for a handler through the outers.
21:03 wagle_ hi-- which command's documentation do i read to output the head1 NAME contents of a directory of .pl files?
21:04 jnthn_ But both of them, having found the handler, should invoke it the same way, so far as I can figure out.
21:04 Tene jnthn_: so, with this program, what's the decision procedure to work out which handlers to execute?  http://gist.github.com/641368
21:04 jnthn_ (Again, speaking from half-written prototype.)
21:04 wagle_ (these are parrot files)
21:04 jnthn_ Tene: die always throws dynamically
21:05 jnthn_ Tene: We get that right today.
21:05 jnthn_ Tene: The one we get wrong is e.g. return
21:05 Tene Okay, what's the lexical exception handler for?
21:05 Tene Ah.
21:05 Tene I didn't understand that.
21:05 jnthn_ The canonical example is
21:06 jnthn_ sub foo(@x) { @x.map: { $_.foo || return } }
21:06 jnthn_ map is just a method so if we throw dynamically for return, then we end up hitting map's return handler first.
21:06 Tene Ah.
21:06 jnthn_ Whereas that's meant to return from the (enclosing) foo
21:06 Tene Yeah, I get it now.
21:07 Tene Do blocks as exception handlers even work in parrot?  I never saw that working.
21:07 jnthn_ I'm not sure. :|
21:07 Tene pir subs, I guess I should say.
21:07 Tene Maybe I should start with that.
21:07 jnthn_ I'm not sure if they do.
21:07 jnthn_ Yes, that'd also be helpful
21:09 perlite_ joined #parrot
21:10 sorear jnthn_: I talked to TimToady about that case the other day
21:10 sorear jnthn_: he said that control exception throws *without labels* are purely dynamic
21:10 sorear which made my life much nicer :)
21:11 jnthn_ sorear: return has an implied label?
21:11 sorear return doesn't have a label
21:11 jnthn_ But that's...not dynamic?
21:11 sorear return is dynamic, it doesn't pay attention to lexical scopes at all
21:12 Tene jnthn_: fwiw, you *can* do that right with just dynamic.  You just include a reference to the target sub in the exception, and have the exception handler's can_handle method check for that, and decline if it has a reference to a destination that's not the sub it's handling exceptions for.
21:12 Tene jnthn_: I wrote a prototype of that that worked just fine, but seem to have misplaced it.
21:12 jnthn_ sorear: spec commit that changed that?
21:13 perlite left #parrot
21:14 sorear extrapolation from TimToady's word and a826b588
21:16 jnthn_ sorear: I think you've over-generalized that spec diff.
21:16 wagle_ is now known as wagle
21:16 jnthn_ sorear: It's talking about loop modifiers, not control exceptions generally.
21:17 jnthn_ sorear: Though if you want to be purely dynamic I guess you can implement return as tene++ suggested to get the right semantics.
21:17 jnthn_ sorear: Why did it make your life easier, ooc?
21:18 jnthn_ sorear: e.g. what am I going to run into that makes it harder than walking the outer chain rather than the caller one?
21:20 dukelet0 joined #parrot
21:21 Tene jnthn_: Well, I'm getting back to $realjob now.  We'll see how I'm feeling when I get home.
21:21 jnthn_ Tene: kk. :-)
21:21 jnthn_ Enjoy your evening, whatever you end up doing. :-)
21:23 dngor_ joined #parrot
21:26 dngor left #parrot
21:28 whiteknight joined #parrot
21:37 tadzik http://wklej.org/id/405550/ -- is there anything wrong with this nqp code? I remember it working some time ago
21:37 tadzik oh nevermind, I ran it with parrot rather than parrot-nqp
21:38 wagle dukeleto: whats the other way to create skeletons (as opposed to create_language)?
21:49 dukelet0 left #parrot
22:01 dukeleto wagle: mk_language_shell.pl
22:01 dukeleto wagle: in the same dir
22:01 wagle dukeleto: thanks
22:03 patspam left #parrot
22:05 jsut_ joined #parrot
22:08 wagle dukeleto:
22:08 wagle wagle@comonad:~/research/scheme$ cat build/PARROT_REVISION
22:08 wagle $Revision$
22:08 wagle wagle@comonad:~/research/scheme$
22:09 wagle from a pure git checkout an hour or so ago
22:10 jsut left #parrot
22:11 plobsing wagle: well sure. you expect it to be able to pull an svn revision out of a git checkout? that's like expecting apple juice from oranges.
22:11 wagle no, but its what dukeleto's create_language script does
22:12 wagle oh well, gotta go for 2 hours..
22:12 dukeleto wagle: what's up?
22:13 wagle the above file doesnt get the revision var expanded for create_language
22:13 wagle you going to be at barcamp?
22:14 wagle gotta go in 1 minute
22:14 dukeleto wagle: no, i am in CA for the GSoC Mentor Summit
22:14 wagle ok..  will explain better later
22:15 dngor joined #parrot
22:17 Andy left #parrot
22:17 dngor_ left #parrot
22:21 brianwisti left #parrot
22:32 kid51 joined #parrot
22:39 tadzik left #parrot
22:46 kid51 seen magnachef?
22:46 aloha Sorry, I haven't seen magnachef.
22:59 GeJ Bonjour everyone.
23:05 whiteknight hello
23:05 dukeleto hola
23:11 dngor_ joined #parrot
23:14 dngor left #parrot
23:36 dduncan joined #parrot
23:37 dduncan left #parrot

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

Parrot | source cross referenced