Camelia, the Perl 6 bug

IRC log for #parrot, 2009-12-13

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:33 PacoLinux joined #parrot
00:39 davidfetter joined #parrot
00:47 particle could somebody send out a reminder about tomorrow's meeting to the list?
00:47 * particle runs away...
01:07 japhb joined #parrot
01:11 he I wonder if I could interest anyone to take a peek at ticket #1340...
01:15 naypalm joined #parrot
01:16 chromatic I don't think that patch is the right approach, he.
01:16 chromatic We *could* not mark the custom destroy flag on the clone, which would avoid calling the destructor.
01:17 chromatic That's not a bad short-term solution.
01:17 chromatic However, we don't want the destruction of one PMC to dlclose() the shared library out from under another ParrotLibrary.
01:18 he Right.  I expected the right fix to be elsewhere in parrot's code.  For now my patch lives as a local patch in pkgsrc for 1.7.0 (I've not gotten around to upgrade it to 1.8.0 yet -- I'm busy with "real life")
01:19 chromatic The best approach is (as usual) what Andy Dougherty suggested: dlopen() again.
01:19 he Yep, most probably, and that would fix the issue for NetBSD as well, because our ld.elf_so does "reference counting"
01:20 he I'm however not intimate enough with the code to tell if all the required info is present and easily accessible at the clone() point in the code.
01:21 chromatic I don't think it does; at a minimum, we'd need to store the path to the shared library in ParrotLibrary.
01:21 chromatic ... unless there's a POSIX-compatible way to duplicate a shared library handle.
01:23 he There doesn't appear to be on NetBSD, at least, and POSIX doesn't seem to specify a way either.
01:24 he OK, thanks for that for now.  Time for bed here.
01:24 chromatic You're welcome.
01:25 Jimmy joined #parrot
01:26 Jimmy good moring, #parrot
01:28 chromatic Our string system isn't quite encapsulated enough to make this easy.
01:33 chromatic We might consider making separate C types for parrot_string_substr_t and parrot_string_external_t.
01:33 chromatic The isomorphism with the Buffer type is also a bit of a hassle.
01:46 Zak joined #parrot
02:32 TiMBuS joined #parrot
03:00 ilbot2 joined #parrot
03:00 Topic for #parrotis now Parrot 1.8.0 Zygodactyly released | December 12 Development Hackathon:  http://tinyurl.com/ybrsgmp | Online Parrot Roadmap Meeting:  Sunday 13 December, 19:30 UCT
03:00 davidfetter joined #parrot
03:00 cotto joined #parrot
03:00 s1n joined #parrot
03:00 dcolish joined #parrot
03:00 bacek_at_work joined #parrot
03:02 preflex joined #parrot
03:04 cotto_work joined #parrot
03:05 pmichaud joined #parrot
03:05 Tene joined #parrot
03:05 leto joined #parrot
03:08 tewk_ joined #parrot
03:22 PacoLinux joined #parrot
03:33 ZeroForce joined #parrot
04:35 JimmyZ joined #parrot
04:42 chromatic joined #parrot
04:44 TonyC joined #parrot
05:13 ZeroForce left #parrot
07:41 JimmyZ joined #parrot
07:56 TiMBuS joined #parrot
07:58 JimmyZ_ joined #parrot
08:03 cotto_w0rk joined #parrot
08:18 JimmyZ_ joined #parrot
08:58 Zak joined #parrot
09:06 bacek joined #parrot
09:28 iblechbot joined #parrot
09:29 JimmyZ joined #parrot
09:46 fperrad joined #parrot
09:47 fperrad_ joined #parrot
09:48 fperrad purl
09:48 purl fperrad?
11:23 joeri joined #parrot
11:37 colomon___ joined #parrot
11:49 mj41 I just created ... Perl 6 and Parrot links statistics - http://tapir2.ro.vutbr.cz/P6aP-links/stats.html (year 2008 199 links, year 2009 335 links)
12:00 bacek joined #parrot
13:11 kid51 joined #parrot
13:11 kid51 The online meeting today -- is that here or on #parrotsketch?
13:15 mikehh here according to the wiki
13:16 kid51 Problem:  *I* put that on the wiki -- without stopping to think that it might be on #parrotsketch.
13:17 mikehh well I have both open so we shall see
13:18 mikehh it's in about 6 hours
13:19 kid51 mikehh:  I just read your latest postings in TT #1368
13:19 kid51 What's your high-level sense of the problem?
13:19 kid51 How much of these test failures are we inducing with our code?
13:19 mikehh kid51: at least someone reads them :-}
13:20 kid51 And how much is it the platform.
13:20 kid51 I read the posts but can't claim to understand the issues.
13:21 mikehh this is the only one I am getting at the moment - all other tests pass (except for TODO's ans SKIPs)
13:22 kid51 And are the fails you have posted in the last two hours due to r42924 ... or to some later rev?
13:22 mikehh well it doesn't fail on i386 and I haven't had any other reports of failures - so I don't know
13:23 mikehh it passes when I build withh gcc without --optimize but fails only in testr with g++
13:24 mikehh that's on Ubuntu 9.10 amd64 and  Ubuntu 9.04 amd64 - gcc 4.4.1 and gcc 4.3.4 respectively
13:26 mikehh I bisected and that's where I got the first failure - I can't see why from looking at that revision
13:27 mikehh I only bisected with Ubuntu 9.10 gcc with --optimize but everything passed at r42924 (I did a test run with all variants then)
13:28 mikehh saorry r42923
13:28 kid51 I looked at r42924 as well and had similar (non-)reaction
13:29 kid51 Well, perhaps when chromatic comes on line you can go over that with him
13:30 mikehh the problem with Segmentation faults is that it is often very difficult to track them down
13:31 mikehh especially when they happen with the optimizing compiler
13:32 mikehh and the g++ failure only happens with testr (pbc)
13:32 kid51 Yes.  These reports of "only on amd64, only with optimize, only with this particular compiler" are becoming too familiar
13:32 mikehh which doesn't fail with gcc
13:33 mikehh and all the other tests PASS
13:34 kid51 What is --optimize supposed to do?
13:34 colomon___ joined #parrot
13:34 mikehh it is a lot easier to track down when a bunch of tests fail - but just one in specific circumstances tends to worry me
13:39 mikehh as far as I understand it the --optimize runs the compiler with -O2 and -g flags
14:59 colomon joined #parrot
15:10 colomon_ joined #parrot
15:16 mateus joined #parrot
15:19 colomon_ joined #parrot
15:41 Psyche^ joined #parrot
15:44 colomon joined #parrot
15:53 colomon_ joined #parrot
15:56 Whiteknight joined #parrot
15:57 colomon___ joined #parrot
16:01 mikehh joined #parrot
16:08 mikehh joined #parrot
16:15 mikehh joined #parrot
16:22 Whiteknight good morning, #parrot
16:22 Whiteknight everybody ready for the big plannin meeting today?
16:23 mikehh joined #parrot
16:34 mikehh joined #parrot
16:36 particle Whiteknight: the time is off on the calendar, it says 5:30pst
16:36 Whiteknight I must have gotten the wrong timezone then
16:36 lucian joined #parrot
16:36 Whiteknight it's 3:30 PST?
16:43 Whiteknight what time is it supposed to be, exactly?
16:43 purl It's about twenty to five in the afternoon, Whiteknight.
16:46 payload joined #parrot
17:06 tetragon joined #parrot
17:09 colomon joined #parrot
17:13 allison Whiteknight: we said 2 hours after the usual parrotsketch, so adjust that to whatever your local timezone is
17:13 Whiteknight the calendar apparently is in UTC time
17:13 Whiteknight so 20:30 UTC?
17:14 moritz seems like
17:14 Whiteknight okay, done
17:14 moritz that's in 3 hours 17 minutes
17:14 moritz The current suggestion is
17:14 moritz 2 hours later than the usual Parrotsketch meetings, so 8:30pm GMT,
17:14 moritz 12:30pm Pacific time, 3:30pm Eastern time.
17:14 moritz that's what Coke++ wrote
17:17 mikehh joined #parrot
17:20 colomon___ joined #parrot
17:30 colomon___ joined #parrot
17:35 Whiteknight I'm bad at time math
17:41 mikehh Whiteknight : I make it 17:34 at the moment - just under two hours to go
17:41 mikehh well 17:41 now
17:42 mikehh didn't hit the Enter key when I typed the message :-}
17:45 mikehh I am about half way through the book - Garbage Collection: Algorithms for Automatic Dynamic Memory Management (on my first read that is)
17:49 Whiteknight and how is it?
17:50 Whiteknight I read a lot of papers on the subject, but they're always so short and nebulous
17:50 Whiteknight I always feel like they skip over the important implementation details
17:51 mikehh excellent I would say - very comprehensive and clear on the subject
17:52 mikehh the algorithms are explained very well and not language specific
17:54 mikehh the advantages and problems with each apprach are discussed in quite a lot of detail
17:56 mikehh I am working through Incremental and Concurrent Garbage Collection now
17:57 moritz I'm usually also disappointed with scientific papers I read about my own subject
18:01 kid51 joined #parrot
18:02 mikehh the primary author Richard Jones has a new book (with others) on the subject coming out towards the end of next year
18:03 silug joined #parrot
18:04 kid51 I asked yesterday what time the meeting was to start and I was told 19:30 UCT -- which is what I put in the topic.
18:04 kid51 Is that wrong?
18:06 allison kid51: the email I sent out said "2 hours later than the usual Parrotsketch meetings, so 8:30pm GMT, 12:30pm Pacific time, 3:30pm Eastern time"
18:06 Whiteknight I had a professor at school who always said academic papers should be more self-congratulatory than informative
18:06 Whiteknight an opinion that I never liked, but it does seem to be the rule
18:06 allison Whiteknight: it does seem an accurate assessment
18:07 kid51 Well, then I was misinformed yesterday.
18:07 mikehh Whiteknight :-}
18:07 kid51 Is the meeting taking place on this channel or on #parrotsketch?
18:07 Whiteknight somebody else is going to have to update google calendar if it's wrong. I obviously don't know how to read a clock
18:08 mikehh Whiteknight: have a look at http://www.cs.kent.ac.uk/people/staff/rej/gc.html
18:08 Topic for #parrotis now Parrot 1.8.0 Zygodactyly released | Online Parrot Roadmap Meeting:  Sunday 13 December, 20:30 UCT
18:09 Whiteknight mikehh: awesome! thanks for the link
18:09 kid51 allison ping
18:17 allison kid51: yup?
18:17 purl yup is probably Yellow Dog Linux's update manager.
18:17 kid51 allison:  Which channel are we going to meet on?
18:18 kid51 here or parrotsketch?
18:18 allison kid51: wasn't decided, but I'd say parrotsketch makes sense, so ordinary traffic can continue here
18:18 kid51 k
18:18 Topic for #parrotis now Parrot 1.8.0 Zygodactyly released | Online Parrot Roadmap Meeting:  Sunday 13 December, 20:30 UCT on #parrotsketch
18:19 cotto That'll make it easier to catch up for those of us who can't be there.
18:19 dalek tracwiki: v134 | jkeenan++ | WikiStart
18:19 dalek tracwiki: http://trac.parrot.org/parrot/wiki/W​ikiStart?version=134&action=diff
18:19 dalek tracwiki: v135 | jkeenan++ | WikiStart
18:19 dalek tracwiki: http://trac.parrot.org/parrot/wiki/W​ikiStart?version=135&action=diff
18:19 cotto kid51, no moss on you
18:20 Topic for #parrotis now Parrot 1.8.0 Zygodactyly released | Online Parrot Roadmap Meeting:  Sunday 13 December, 20:30 UTC on #parrotsketch
18:21 particle s/UCT/UTC/
18:21 * particle runs off again
18:25 colomon___ joined #parrot
18:35 dalek tracwiki: v4 | jkeenan++ | ProposedParrotsketchProtocol
18:35 dalek tracwiki: http://trac.parrot.org/parrot/wiki/ProposedPa​rrotsketchProtocol?version=4&action=diff
18:39 tetragon_ joined #parrot
19:06 dalek parrot: r43028 | plobsing++ | trunk (5 files):
19:06 dalek parrot: remove container element from visit_info
19:06 dalek parrot: this element was being set but never used.
19:06 dalek parrot: review: http://trac.parrot.org/parrot/changeset/43028/
19:08 dalek tracwiki: v6 | cotto++ | CottoTasklist
19:08 dalek tracwiki: http://trac.parrot.org/parrot/wiki/Co​ttoTasklist?version=6&action=diff
19:45 payload joined #parrot
19:54 mikehh pre/post-config, smoke (#30886) PASS - fulltest FAIL at at r43028 - Ubuntu 9.10 amd64 (g++ with --optimize)
19:54 mikehh in testr - t/op/exceptions.t - Failed test:  31 - Segmentation Fault
19:54 mikehh all other tests PASS
19:57 colomon___ joined #parrot
20:07 chromatic joined #parrot
20:10 bacek joined #parrot
20:29 particle1 joined #parrot
20:30 japhb #ps nowish
20:31 dalek tracwiki: v1 | bacek++ | ContextCallSignatureMerge
20:31 dalek tracwiki: CallSignature and Context merge "roadmap"
20:31 dalek tracwiki: http://trac.parrot.org/parrot/wiki/ContextC​allSignatureMerge?version=1&action=diff
20:32 bacek allison, when you have time, can you review http://trac.parrot.org/parrot/​wiki/ContextCallSignatureMerge please?
20:33 allison bacek: will do
20:45 joeri left #parrot
21:07 * Coke arrives.
21:08 chromatic -> #ps
21:08 kid51 Coke:  meeting in #ps
21:10 Zak joined #parrot
21:15 colomon___ joined #parrot
21:15 Coke kid51: danke.
21:21 allison bacek: comments added to http://trac.parrot.org/parrot/​wiki/ContextCallSignatureMerge
21:27 kid51 PCC?
21:27 purl Welcome to Perl Community College, where we, for free, and at your convenience, teach you all of an intro-CS curriculum, such as you should have learned in college or by simply reading on your own.  Please also visit the Perl Crisis Clinic, where we do all your job for you. or Parrot Calling Convention or Proof Carrying Code or http://en.wikipedia.org/wiki/Portable_C_Compiler
21:28 Coke kid51: do you need sound byte describing what the parrot calling conventions mean?
21:29 kid51 would be nice
21:33 Coke basically, whenever you invoke a sub, you need to pass in arguments and get return values out; the pcc describe how you package and unpackage the values passed and returned.
21:35 bacek particle1, http://trac.parrot.org/parrot/browser/​trunk/examples/pir/make_hello_pbc.pir
21:37 mikehh joined #parrot
21:37 dalek tracwiki: v2 | allison++ | ContextCallSignatureMerge
21:37 dalek tracwiki: http://trac.parrot.org/parrot/wiki/ContextC​allSignatureMerge?version=2&action=diff
21:37 kid51 Coke:  by "invoke a sub", do you mean how HLLs invoke subs or how we do so within PIR?
21:37 japhb PIR
21:37 kid51 (or is that a false distinction?)
21:37 japhb yes
21:37 japhb well, mostly.
21:37 japhb :-)
21:38 allison in this case, it's a false distinction
21:38 allison or, it is now
21:38 allison we've merged the two, so they now use the same code, except for once small "entry" and "exit" point
21:41 Coke ? allison, I think you're talking about return vs. invoke, which isn't what kid51 said.
21:41 allison Coke: he was asking about the distinction between HLLs and PIR
21:42 kid51 Coke:  I probably don't enough to correctly distinguish between 'return' and 'invoke' :(
21:42 Coke allison: I am confused how it was ever a true distinction. =-)
21:42 kid51 What I was wondering was:  Who is the 'you' in "you need to pass in arguments and get return values out"
21:43 smash joined #parrot
21:43 chromatic The PCC is that you.
21:43 Coke the VM; whatever the hll does on that of that is its own concern.
21:43 * smash hello everyone
21:44 Coke HULK?
21:44 purl Hulk SMASH!!!
21:44 Coke ~~
21:46 Coke anyone here want a google wave invite?
21:47 chromatic I want a good use for Google Wave, but that's entirely different and no one has those.
21:48 darbelo joined #parrot
21:48 japhb particle: I believe for some reason my use.perl.org posts never got working with Planet Parrot.  Does anyone know if blog[s?].parrot.org works with Planet Parrot?  I can create an account there ...
21:49 mikehh joined #parrot
21:49 japhb I have been posting on twitter and indenti.ca, but only a couple Parroters follow me there, I think.
21:49 particle1 i don't know specifics on planet parrot, i belive that's coke's baliwick
21:49 moritz do you mean blogs.perl.org?
21:49 particle1 i've heard of twitter, never used it.
21:49 japhb moritz, yes, sorry, thank you
21:50 japhb Coke: do you happen to know if blogs.perl.org posts work with Planet Parrot?
21:51 Coke (planet) I have commit keys, that's about it; I can add another feed =-)
21:51 japhb kid51: Hmmm, I think that wiki page has gotten a bit out of date.  I'll put "update wiki page" on my personal TODO, thanks
21:52 japhb Coke, OK, thank you
21:53 mikehh joined #parrot
21:54 Whiteknight joined #parrot
21:54 * Whiteknight is *extremely* unhappy about being so late
21:56 japhb Whiteknight, who do beat with a wet noodle for keeping you away?
21:56 japhb er "who do *we*"
21:56 * japhb has crappy typing today
21:57 Whiteknight stupid wireless router
21:57 particle1 japhb: try beer, it doesn't help with the typing, but it helps with the caring
21:57 * particle1 hands Whiteknight an ethernet cable
21:57 Whiteknight I wish
21:57 Whiteknight I'm at the in-laws house, no physical access to the router
21:59 payload joined #parrot
21:59 Whiteknight I'm glad my proposed deprecation policy changes were mentioned
22:00 Whiteknight even if they garnered no attentoin on list
22:00 japhb Whiteknight, your thread happened to hit me at the same time as a lot of other stuff, which is why I didn't comment ... plus I knew the meeting today was coming up, and we could say our peace today.
22:01 chromatic They sounded like fait accompli.
22:02 Coke THey were warnocked in a good way. =-)
22:03 naypalm joined #parrot
22:04 japhb Any Trac admin: can you add "plumage" as a TT Component?
22:06 Coke sure.
22:06 Coke done
22:07 * allison goes to get some tea
22:09 Whiteknight joined #parrot
22:10 darbelo Say, has nyone else seen Bob Roger's mail to the list about TT #1091?
22:10 Coke yes.
22:11 chromatic It needs some absorbing, but I'm initially hopeful.
22:12 darbelo It looked sane enough to me, but I'm unfamiliar with that code.
22:12 pmichaud here, finally, sorry I'm late (we won our championship game)
22:12 pmichaud reading backscroll
22:13 Coke pmichaud++
22:13 Coke pmichaud: we're taking a 5m braek.
22:13 Whiteknight I'm reasonably familiar with that code, I can give it a good look soon
22:13 kid51 pmichaud:  We decided to meet on parrotsketch
22:14 pmichaud okay, reading #parrotsketch then
22:14 particle1 pmichaud: congrats!
22:16 japhb Coke++ # Trac fix
22:17 mikehh joined #parrot
22:17 Coke pmichaud: should nqp-rx's class use the hll option when invoking p6metaclass.newclass?
22:17 GeJ Good morning everyone.
22:18 darbelo morning GeJ, big meeting in the other channel.
22:18 japhb GeJ, big meeting in #ps right now
22:19 wayland joined #parrot
22:22 pmichaud Coke: I think new_class already recognizes the hll of the caller if no 'hll' option specified
22:25 Coke pmichaud: I'm trying to move the class creation of tclstring into nqp and failing.
22:25 nopaste "pmichaud" at 66.25.4.52 pasted "list of rakudo needs (response to whiteknight++'s off-list message)" (38 lines) at http://nopaste.snit.ch/19067
22:25 Coke will ping you if I have something specific.
22:27 Whiteknight pmichaud: we're idly talking about putting together a mini philadelphia-area hackathon in the coming months, and wanted to talk to you about Rakudo's needs so we can have a focus
22:27 Whiteknight all very tenuous, of course
22:28 pmichaud a philly-area hackathon would be worthwhile.  I might even be able to get some TPF support for it.
22:41 colomon_ joined #parrot
22:52 mikehh joined #parrot
23:03 NotFound joined #parrot
23:03 NotFound hi
23:03 Coke hio
23:04 kid51 NotFound:  meeting in #parrotsketch
23:04 NotFound Now?
23:04 purl The chalice contains human blood cursed in Death's name. The hooded figure kneeling beside you passes it to you and you have to drink.  LOSE 3 HIT POINTS.
23:04 kid51 Yes, we're in the home stretch.
23:04 kid51 the Roadmap meeting
23:05 NotFound Going
23:08 Whiteknight joined #parrot
23:08 Zak joined #parrot
23:16 Coke hurm. is there a way to get a core class object in PIR?
23:16 chromatic What's a core class object?
23:17 Coke get_class 'String'
23:17 Coke ... s/PIR/NQP/
23:17 Coke (as I already know how to do it in PIR. =-)
23:18 Whiteknight Infinoid: ping
23:19 Whiteknight purl msg Infinoid: I would ike to get back on the boat with AIO and pipes. If you have time, you know more about pipes than I do.
23:19 purl Message for infinoid stored.
23:20 chromatic Probably not a 2.3 priority though.
23:21 Whiteknight no, but a piece of personal interest
23:22 Whiteknight AIO could bring realperformance improvements in many IO-intensive cases
23:22 chromatic The sweep-free GC will bring real performance improvements in all cases.
23:22 Infinoid Whiteknight: Ok.  How can I help?
23:23 Whiteknight Infinoid: you were working on a Pipe PMC type
23:25 Infinoid Yeah.  I got a bit caught up by wanting to support two different use cases in the same object
23:25 Infinoid Purpose 1: expose the POSIX pipe() API, allow the user to make a couple of linked fds
23:25 Infinoid Purpose 2: Use the aforementioned linked fds to run a child process and either capture its output or provide its input
23:26 Infinoid I think the latter feature needs to go somewhere else
23:27 dalek winxed: r258 | julian.notfound++ | trunk/winxedst1.winxed:
23:27 dalek winxed: fixed size arrays in stage 1
23:27 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=258
23:27 dalek partcl-nqp: 46f26de | coke++ | src/ (2 files):
23:27 dalek partcl-nqp: Move some more PIR into NQP [1]
23:27 dalek partcl-nqp: [1] Even though they're all written as pir::...
23:27 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/46f26de0646dcf89cf46dd67d3f38c8f6700079f
23:29 Infinoid So yeah.  Pipes themselves are pretty simple... it's the child processing nonsense that was bogging me down
23:30 NotFound Infinoid: What nonsense?
23:30 purl o/~ A little nonsense now and then, is relished by the wisest men o/~
23:30 chromatic Cross-platform signal detection and the like.
23:31 Infinoid It would be cleaner if that stuff could live somewhere other than within the pipe PMC
23:31 Infinoid But I'm not sure where that should be.
23:33 NotFound A pipe is a general purpose tool, popen-alike is a specialized usage.
23:34 Infinoid yes
23:34 NotFound Then a specialized PMC is the better way IMO.
23:36 chromatic We should have platform-specific IO functions.
23:37 chromatic In platform-specific IO files.
23:37 Infinoid In the end, what you get back is a PipeHandle object or two, either way.  The part I was unsure about is what the creation API should look like (because the current code (at the time) seemed to want to act more like perl5's open, and was terribly specific to forking child processes)
23:37 Infinoid Anyway, that's where I left it.
23:42 Whiteknight I guess Pipes are not blocking AIO, but I was hoping to have all the major IO primitives implemented before I started reworking the IO system
23:42 Whiteknight because I want to make sure IO refactors and AIO support everything well
23:47 Infinoid Oh, I see.  Well, the primitives are pretty easy
23:48 Infinoid Is FileHandle still using pipes and forking internally, or did that get cleaned up?
23:50 Whiteknight FileHandle is still doing all the heavy lifting
23:57 * Whiteknight has to sign off. will backlog. later

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

Parrot | source cross referenced