Camelia, the Perl 6 bug

IRC log for #parrot, 2010-02-17

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 patspam joined #parrot
00:04 * allison ENOBATTERY
00:17 cotto_work If anyone has always wanted to cut a release of Parrot, we need some release managers starting with the May release.
00:18 Whiteknight I'm due for one
00:23 Coke as am I.
00:23 Whiteknight cotto_work: that's may and june
00:23 Whiteknight merk it
00:23 Whiteknight mark it*
00:23 cotto_work doing so
00:23 Coke I would vaguely prefer 2.6 if it's available.
00:24 darbelo everything after 2.3 is available iirc
00:25 cotto_work actually, I can't commit from here.  It'd be good if someone who can could make the updates to docs/project/release_manager_guide.pod and the google doc at the same time.
00:26 Coke there's a google doc for releases?
00:27 cotto_work http://www.google.com/calendar/render?cid=ldhct​damsgfg5a1cord52po9h8@group.calendar.google.com
00:27 Coke oh, the calendar. that's a calendar, not a doc. =-)
00:27 cotto_work the google thingy
00:28 Coke Whiteknight: you want 2.4?
00:28 Whiteknight coke: sure. 2.4 it is
00:28 Coke ok. that leaves 2.5. any volunteers?
00:28 * darbelo hides under the bed.
00:31 Coke updating calendar...
00:35 Coke done.
00:35 Coke calendar && doc.
00:36 darbelo you forgot the thingy
00:36 Coke *thbtp*
00:49 dalek parrot: r44054 | coke++ | trunk/docs/project/release_manager_guide.pod:
00:49 dalek parrot: Update the list of release managers*
00:49 dalek parrot: *calendar is updated too.
00:49 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44054/
00:55 abqar joined #parrot
01:01 wagle All tests successful.
01:01 purl wagle: that's because you wrote only one test, slacker!
01:02 wagle yeah, and i'm still waiting for dukeletoto get back to me on that..  8)
01:03 wagle dukeleto, rather
01:03 davidfetter joined #parrot
01:03 wagle (j/k)
01:08 hercynium joined #parrot
01:10 Coke AHA.
01:10 Coke we have a warning that is only enabled if you run in --maintainer mode with gcc.
01:10 Coke (that explains why I could not find it.)
01:11 Whiteknight which?
01:11 purl You know, that one. or why I didn't want linefeeds
01:13 Coke -Wlarger-than-4096
01:13 kthakore joined #parrot
01:13 kthakore Congrats on the release!
01:13 kthakore chromatic: \o hi five
01:14 cognominal joined #parrot
01:18 chromatic Thanks!  Lots of people did a lot of work, especially darbelo.
01:18 Whiteknight chromatic: what's the plan for that branch you made?
01:19 chromatic Pull tests out of the tickets, make them TODO, make them pass.
01:19 chromatic Unless they're already TODO.
01:19 Whiteknight which tickets?
01:19 purl which tickets are dupes?
01:19 Whiteknight Austin: ping
01:19 Whiteknight purl forget which tickets
01:19 purl Whiteknight: I forgot which tickets
01:20 kthakore Congrats darbelo
01:21 Whiteknight ENOAUSTIN
01:23 chromatic #562, #784, #1040
01:26 Whiteknight oh, right
01:26 Whiteknight damnit I have a bad memory
01:34 Coke is '-W' a valid option for gcc?
01:34 Coke (with nothing else.)
01:35 Coke also, are the -f options more for optimizaiton?
01:35 Coke (they seem to be lumped in with the warnings for no good reason.)
01:38 dalek parrot: r44055 | coke++ | branches/rm_cflags/config/auto/warnings.pm:
01:39 dalek parrot: don't bother enabling this warning solely for maintainer; covered with --cage
01:39 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44055/
01:39 dalek parrot: r44056 | coke++ | branches/rm_cflags/config/auto/warnings.pm:
01:39 dalek parrot: unused code is probably not the best place to keep these potential warnings.
01:39 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44056/
01:39 Whiteknight Coke: I have no idea about either of those things
01:40 ZeroForce joined #parrot
01:44 Whiteknight -f appears to be commands passed directly to the C parser
01:44 Whiteknight not optimization
01:45 snarkyboojum joined #parrot
01:48 Coke we no longer support using our makefile generator outside of core, do we?
01:55 Austin joined #parrot
01:59 chromatic I'm pretty sure we don't.
01:59 chromatic Rakudo uses something else.
01:59 kthakore_ joined #parrot
02:28 dalek parrot: r44057 | coke++ | branches/rm_cflags (2 files):
02:28 dalek parrot: Remove old, internal (and internally deprecated) makefile syntax.
02:28 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44057/
02:40 contingencyplan joined #parrot
02:47 dalek rakudo/master: 0daf89b | (Solomon Foster)++ | src/core/Any-num.pm:
02:47 dalek rakudo/master: Tweak rand not to complain about "too many arguments" when you don't actually pass it any arguments.  Implement srand.
02:47 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/0​daf89bcab8e57f464b734239aef161f161e7514
02:47 dalek rakudo/master: 73bf5cc | (Solomon Foster)++ | src/core/Any-num.pm:
02:47 dalek rakudo/master: Convert Any.atan2's $x argument to Num as well.
02:47 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/7​3bf5cc94ebf33520f4b85b5c9e35b67764fc11a
02:54 kid51 joined #parrot
02:57 Coke ugh. I'm becoming way too familiar with config guts! =-)
02:58 Coke kid51: , I don't know how you spent so much time in here. =-)
02:58 kid51 Coke:  I don't know any better =-)
02:58 chromatic joined #parrot
02:58 Austin Coke++ ; # Somebody has to do it, and I'm sure glad it isn't me!
02:58 Coke Austin: I accept patches to partcl-nqp instead of karma. :P
02:58 kid51 Coke:  When I was briefly logged on earlier, I was actually using a different channel for a perlsemny meeting.
02:58 Austin How about a patch to Test::More?
02:59 kid51 Saw that you posted some TT and mentioned my name.
02:59 Coke Austin: you can't bargain with things you ALREADY COMMITTED
02:59 Austin Coke: It's the best I've got to offer. Sorry.
02:59 Coke kid51: recent TT with a suggestion for a new method on the $conf object to simplify the code.
02:59 Coke Austin: *glare*
02:59 * kid51 opens different browser for trac
02:59 * Coke digs up a url .
03:00 Coke https://trac.parrot.org/parrot/ticket/1452
03:00 Coke should simplify the code a bit.
03:01 Austin Coke: Also, on a somewhat-related note, the Configure.pl provided with create_language_foo.sh uses the Parrot configuration modules, but those modules assume that . is the parrot home - which means that if any of Parrot's "magic" files are available in . the config modules assume those are *parrot* files instead of *language* files. (Example: VERSION)
03:01 dalek parrot: r44058 | Austin_Hastings++ | trunk (4 files):
03:01 dalek parrot: TT #1453.
03:01 dalek parrot: Add null support to Test::more::is(*,*) multisub. Add is_null assertion. Update my info in CREDITS.
03:01 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44058/
03:01 dalek parrot: r44059 | coke++ | branches/rm_cflags/config/auto/warnings.pm:
03:01 dalek parrot: minor change avoiding temp vars.
03:01 dalek parrot: (This may not work out)
03:01 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44059/
03:02 Coke Austin: is create_language the right way to do things these days?
03:02 Coke that is, "is it the one pmichaud wrote"?
03:02 chromatic It'd be nice to have a native Parrot version.
03:02 kid51 Coke:  Took that ticket.  But I have some Perl 5 stuff which is prioritized right now.
03:02 Coke kid51: if I want to store something in the conf object, but not render it out, can I just use a key that starts with TEMP_ ?
03:02 dalek TT #1453 created by Austin_Hastings++: Improve  handling in Test::More.pir
03:03 Coke render it out into the config available to parrot at runtime.)
03:03 Austin I have no idea. But if it leaves you with a Configure.pl, then I'm pretty sure it falls into this category.
03:03 Coke Austin: if it's the old one, it needs to be removed.
03:03 Coke (or we need to at least decide which version we're supporting)
03:04 kid51 Coke:  I *think* that is the way to go ... but I haven't had to think about that in many months.
03:05 Coke ok. I'll give it a shot.
03:05 kid51 Do a configure, then examine contents of lib/Parrot/Config/Generated.pm -- it will have 2 hashes, 1 for TEMP stuff and compare with ..... (I forget the name of the other file).
03:06 kid51 config_lib.pasm
03:06 kid51 ack TEMP config/gen/
03:45 dalek rakudo/master: 5fceb7e | (Solomon Foster)++ | src/Perl6/Grammar.pm:
03:45 dalek rakudo/master: Take out the <re=.numish>'+'<im=.numish>'\\'?'i' branch of sym<complex>.
03:45 dalek rakudo/master: This means that 1+1i does not parse as a single complex number, but it does parse the same way as 1-1i, and -1+1i parses correctly now.
03:45 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/5​fceb7ebccbe016bf1691a18ef7e6f7fdc6a8340
03:45 dalek rakudo/master: 6c478f2 | (Solomon Foster)++ | t/spectest.data:
03:45 dalek rakudo/master: Turn on rand.t and polar.t.
03:45 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/6​c478f21071d1f690704136589b37f8e100af0b9
03:48 janus joined #parrot
03:55 patspam joined #parrot
04:05 * kid51 must sleep
04:05 purl $kid51->sleep(8 * 3600);
04:13 ash_ joined #parrot
04:15 ash_ does parrot have an interactive mode?
04:19 plobsing ash_: I'm pretty sure parrot doesn't have a repl, but several HLLs do
04:20 ash_ hmm, alright, i just have something in nqp, and wanted to inspect what it was making, um... is there a document in parrot for p6metaobject?
04:24 redbrain joined #parrot
04:24 Austin Ash_: What are you trying to do?
04:26 ash_ just trying to understand what kind of objects nqp makes, when you make a class with nqp that is
04:26 ash_ looking through the generated code, its calling P6metaobject.'new_class' on the classes made with nqp
04:29 ash_ i was more wondering what the difference is between a nqp class and a parrot class made with the newclass op
04:29 Austin purl, nopaste?
04:29 purl hmmm... nopaste is at http://nopaste.snit.ch/ (ask TonyC for new channels)  or http://paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at http://www.extpaste.com/ or http://paste.scsys.co.uk (for #catalyst, #dbix-class, #moose  and others) or http://gist.github.com/ or paste or gtfo or tools/dev/nopaste.pl or https://trac.parrot.org/parrot/br​owser/trunk/tools/dev/nopaste.pl
04:30 Austin Can't do binaries. Bide a moment.
04:34 plobsing_ joined #parrot
04:35 Austin Ash_: Basically, there are a couple of things going on.
04:36 Austin When the P6object subsystem creates a class for you, let's call it A::B, it makes sure there is an A::B namespace. Any methods in that namespace automatically (because of parrot) become methods on the class.
04:36 Austin So it uses the namespace to get_class, and if that doesn't work, it uses the newclass op to create one.
04:36 Austin That 'Class' object becomes the 'parrotclass'.
04:37 Austin Because Perl wants to be able to refer to classes by name as if they were symbols, each class has a 'proto object' that is, in theory, a member of the class, but which also has extra methods. In particular, the proto-class has a 'new' method.
04:37 Austin So you can call A::B.new()
04:38 Austin But you might not be able to call $obj.new() later with any other member of the class.
04:39 Austin To make this work, the proto-object has to be installed into the parent namespace (A) with the same name as the created class (B). So global symbol A::B is actually a global variable holding the proto-object.
04:39 ash_ so, it makes a protobject and a class implementation? two kill 2 birds with one stone basically?
04:40 Austin In order for the proto-object to actually have all the methods of the class available, and in order to support dispatch, and a bunch of other sunshine and butterflies which I can't think of right now, the proto-object has to be an object, created by a class.
04:40 Austin (There's more coming.)
04:40 Austin But since the proto-object has extra methods that the regular objects don't have, it clearly isn't a plain old instance of the class. Instead, a third item is created: the META class.
04:41 Austin The metaclass is a class that multiply inherits from the parrotclass (what you thought you were creating) as well as from some other class -- I can't recall if it's P6metaclass or P6protoobject. I think the latter.)
04:42 Austin So you've got three "things" in play, all of which are PMCs:
04:42 Austin 1. The 'parrotclass' is a Class PMC that represents your class as you thought you were creating it.
04:43 Austin 2. The 'metaclass' is a subclass of parrotclass and P6protoobject (or ..metaclass?).
04:43 Austin 2a. (Sorry) The 'metaclass' is a 'Class' PMC
04:44 Austin 3. The 'protoobject' is an instance of the metaclass (an object PMC of $metaclass type) stored in the global variable that has the same name as your class.
04:44 Austin And *that* is what 'P6metaclass.new_class("A::B")' creates.
04:45 * Austin bows.
04:45 shockwave Are classes created with newclass automatically derrived from 'Object'?
04:45 Austin Heh.
04:45 Austin No.
04:46 Austin Classes created with newclass *that are not derived from anything else* wind up inheriting from Object PMC type, I think.
04:47 Austin But you derive a class from another PMC type (like Hash) if you like.
04:47 Austin (Note: I believe there are probably still problems with this. "Subclassing PMCs" is still something that a lot of the high-karma folks refer to as questionable.)
04:48 nopaste "shockwave" at 76.119.137.239 pasted "# Root of all classes. .namesp" (11 lines) at http://nopaste.snit.ch/19660
04:48 shockwave I'm trying to derrive a class from 'Object': http://nopaste.snit.ch/19660
04:49 shockwave I guess, based on what you mentioned, Austin, there is no need to do that?
04:49 Austin shockwave: No.
04:50 nopaste "shockwave" at 76.119.137.239 pasted ".namespace ['%' ; 'Object'] #" (8 lines) at http://nopaste.snit.ch/19661
04:50 Austin shockwave: What are you doing, in a larger sense?
04:50 shockwave Creating the base-class for all the classes in my language. Akin to Java's object class.
04:51 Austin Okay.
04:51 Austin Try loading the namespace, then getting the class from it, then creating a new class if not found.
04:51 snarkyboojum I've been debugging a parrot build error on my OS X machine all afternoon and have kinda found the source of the issue. I've previously installed parrot via Rakudo, and was attempting to install Parrot again. 'make' was failing with an error suggesting that libraries couldn't be found (http://paste.lisp.org/display/95091), specifically -lparrot. It turned out that I had an old rakudo git repo path in my $PATH, and this was causing
04:51 snarkyboojum the parrot build to use the wrong lib paths, so even doing a make on a separate parrot SVN copy was still trying to use rakudo/blib/lib. Removing the rakudo git repo path from my $PATH fixed the issue.
04:51 snarkyboojum not sure how much sense that makes, but seems potentially buggy?
04:51 shockwave So does ['%' ; 'Object'] inherits from 'Object' in this case:  http://nopaste.snit.ch/19661
04:53 Austin snarkyboojum: Sounds like a build/configure bug. You might want to wave a flag at Coke, since he's working in that space at the moment. By all means please create a ticket with whatever explanation you have.
04:54 snarkyboojum Austin: ok thanks. point in the right direction to raise this (haven't done that before)
04:54 snarkyboojum oops - that was supposed to be phrased as a question - "point me in the right direction...?"
04:54 Austin shockwave: In $_PARROT/runtime/parrot/library/P6object.pir there's "get_parrotclass" which shows how to map a namespace/string to class.
04:55 Austin snarkyboojum: http://trac.parrot.org is the trac server. You'll have to register, if you haven't. The search tickets and new ticket buttons are pretty big. :)
04:56 fperrad joined #parrot
04:56 snarkyboojum Austin: sweet - thanks
04:56 Austin --- and Coke was on here earlier tonight. He might still be around.
04:57 Austin If he is, he'll chime in
04:57 snarkyboojum excellent
04:58 Austin shockwave: Be careful about how you think of "Object" PMCs. The Object PMC type doesn't implement anything except "Here I am, taking up space." There is a link for storing the class of the object, but that's it. (So yeah, your class extends Object.)
05:00 shockwave @Austin, I was looking at the P6Object code. But, based on what you must mentioned, that's all I wanted to know.
05:00 shockwave My base Object should provide all the needed methods for my Basic Object Model. I was just curious if classes automatically derrive from Object.
05:01 Austin shockwave: It's still a good place to go digging for code samples. Pmichaud has already done a bunch of ... (whatever it is that I want to do, usually)
05:02 shockwave Austin, Yeah, I'm noticing that.
05:02 Austin Ash_: Did your questions get answered?
05:02 ash_ yeah, that helps a lot
05:02 Austin Okay. I didn't want to leave you hanging.
05:03 Coke I'm here. what?
05:04 Austin Coke: snarky has questions/problems with build/configure on OSX. I told him you were touching it, so might have some bonus knowledge.
05:04 Coke there are several open bugs about osx builds.
05:05 Coke perhaps he has tripped over one of them. I don't have access atm to test anything on osx.
05:05 ash_ i am on os x
05:05 ash_ if you want me to try something
05:10 snarkyboojum Coke: I just logged a bug - I probably should checked the open bugs first eh?
05:12 kthakore joined #parrot
05:14 dalek TT #1454 created by snarkyboojum++: make failing for parrot when rakudo git repo path in $PATH environment ...
05:17 snarkyboojum can't seem to reproduce it on my kubuntu VM
05:18 snarkyboojum but can on OS X
05:20 * Austin sings, "I'm just a bill, yes I'm only a bill, and I'm sitting here on Capitol Hill.."
05:28 dalek kakapo: 7f097b2 | austin++ |  (6 files):
05:28 dalek kakapo: Added bootstrap tests for Testcase.nqp.
05:28 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
05:28 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/7f097b22d9c774c351e951200093444acc98e202
06:03 Austin joined #parrot
06:18 shockwave joined #parrot
06:23 Austin_Hastings joined #parrot
06:23 Austin_Hastings joined #parrot
06:30 bacek joined #parrot
07:03 Austin joined #parrot
07:03 Austin_Hastings joined #parrot
07:15 uniejo joined #parrot
07:21 payload joined #parrot
07:23 dalek parrot: r44061 | bacek++ | branches/sys_mem_reduce/src/gc (3 files):
07:24 dalek parrot: Expose raw memory allocation functions via GC_Subsystem
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44061/
07:24 dalek parrot: r44062 | bacek++ | branches/sys_mem_reduce/src/gc/gc_ms.c:
07:24 dalek parrot: Fix GC MS sys_mem functions
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44062/
07:24 dalek parrot: r44063 | bacek++ | branches/sys_mem_reduce/include/parrot/gc_api.h:
07:24 dalek parrot: Rerun headerizer on src/gc/api.o
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44063/
07:24 dalek parrot: r44064 | bacek++ | branches/sys_mem_reduce (2 files):
07:24 dalek parrot: Change Parrot_gc_sys_name to make headerizer happy
07:24 purl dalek: that doesn't look right
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44064/
07:24 bacek *incoming*
07:24 dalek parrot: r44065 | bacek++ | branches/sys_mem_reduce/include/parrot/memory.h:
07:24 dalek parrot: Add bunch of helper macros to allocate typed memory from GC.
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44065/
07:24 dalek parrot: r44066 | bacek++ | branches/sys_mem_reduce/src​/pmc/fixedintegerarray.pmc:
07:24 dalek parrot: Switch FIA to use GC allocations.
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44066/
07:24 dalek parrot: r44067 | bacek++ | branches/sys_mem_reduce/src (2 files):
07:24 dalek parrot: Switch CallContext to GC memory
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44067/
07:24 dalek parrot: r44068 | bacek++ | branches/sys_mem_reduce/src​/pmc/fixedbooleanarray.pmc:
07:24 dalek parrot: Switch FBA to use GC memory
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44068/
07:24 dalek parrot: r44069 | bacek++ | branches/sys_mem_reduce/sr​c/pmc/fixedfloatarray.pmc:
07:24 dalek parrot: Switch FFA to use GC memory
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44069/
07:24 dalek parrot: r44070 | bacek++ | branches/sys_mem_reduce/src/pmc/fixedpmcarray.pmc:
07:24 dalek parrot: Switch FPA to use GC memory
07:24 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44070/
07:25 cotto bacek, what's the point of going through the gc if you still have to call free?
07:26 bacek cotto: it's up to GC to decide what to do with it.
07:26 bacek target of branch is to reduce allocations from "system memory" directly.
07:27 bacek So, in (for example) Boehm GC we can provide different allocation functions.
07:28 bacek Or use fixed size allocator in all small allocations
07:28 bacek etc, etc, etc
07:28 cotto OK.  That makes sense if our gc can allocate/free memory faster than the system allocator can.
07:28 bacek FSA can do faster than system
07:29 bacek (or at least is should)
07:29 cotto I'd expect that to be the case.
07:30 cotto We can make tighter assumptions than the system.
07:31 chromatic Except for the overhead of all of these function calls.
07:32 davidfetter joined #parrot
07:34 cotto chromatic, do you have any thoughts on how I could make the profiling runcore code more approachable?
07:34 chromatic Approachable in what sense?
07:34 dalek kakapo: ab39f07 | austin++ |  (5 files):
07:34 dalek kakapo: Added bootstrap tests for UnitTest::Loader
07:34 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
07:35 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/ab39f07416210230f314d640e9008d5dd7d50b9b
07:35 cotto easier to understand and modify for a competent programmer
07:35 chromatic Smaller functions.
07:35 chromatic That's about as good as we can get.
07:35 cotto Bah.  That code doesn't break down into smaller functions very naturally.
07:39 bacek chromatic, we can deal with overhead in the same way as Context API.
07:41 lucian joined #parrot
07:43 chromatic Yeah, I figure we'll have to.
07:44 cotto Well, it's a little more approachable now than it was this morning.
07:56 dalek parrot: r44071 | cotto++ | trunk (2 files):
07:56 dalek parrot: [profiling] break some repeated code into a separate function and attempt some general cleanup
07:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44071/
07:57 dalek parrot: r44072 | bacek++ | branches/sys_mem_reduce/src​/pmc/fixedstringarray.pmc:
07:57 dalek parrot: Switch FSA to use GC allocations
07:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44072/
07:57 dalek parrot: r44073 | bacek++ | branches/sys_mem_reduce/src/p​mc/resizablebooleanarray.pmc:
07:57 dalek parrot: Switch RBA to use GC allocations
07:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44073/
07:57 dalek parrot: r44074 | bacek++ | branches/sys_mem_reduce/src/​pmc/resizablefloatarray.pmc:
07:57 dalek parrot: Switch RFA to use GC allocations
07:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44074/
07:57 dalek parrot: r44075 | bacek++ | branches/sys_mem_reduce/src/p​mc/resizablestringarray.pmc:
07:57 dalek parrot: Switch RSA to use GC allocations
07:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44075/
07:57 dalek parrot: r44076 | bacek++ | branches/sys_mem_reduce/src/gc/gc_ms.c:
07:57 dalek parrot: Clean allocated memory in GC MS.
07:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44076/
08:18 iblechbot joined #parrot
08:25 integral joined #parrot
08:33 fperrad joined #parrot
09:02 dalek parrot: r44077 | bacek++ | branches/sys_mem_reduce (2 files):
09:02 dalek parrot: Switch debugger to GC allocations
09:02 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44077/
09:27 nbrown joined #parrot
09:28 particle joined #parrot
09:28 Austin_Hastings joined #parrot
09:42 cognominal joined #parrot
09:47 TiMBuS joined #parrot
09:58 barney joined #parrot
10:15 AndyA_ joined #parrot
10:26 bacek joined #parrot
10:26 bacek *incoming*
10:26 Austin Hmm.. 2.1.0 does not appear in the release tags list for Trac.
10:27 Austin Imma fix
10:28 dalek TT #1455 created by Austin_Hastings++: Exception 'birthtime' attribute not accessible
10:29 Austin Damn, Bacek!
10:29 bacek Austin, MUA-HA-HA!
10:29 Austin You're just committing one line at a time, aren't you?
10:31 bacek Austin, about one file in time
10:32 bacek It's... easy
10:32 moritz commit early, commit often
10:32 purl rumour has it commit early, commit often is dangerous if you're going to break trunk
10:32 bacek And very helpful with bisecting
10:34 * Austin sings, "I went home with a waitress, the way I always do..."
10:37 * Austin sings, "Send lawyers, guns, and money!"
10:38 Austin Ooh. Here's a question for the team:   If there's a function (method) called ".attributes", and it returns a list of strings, what do those strings mean?
10:39 * moritz suspects they are names of the attributes
10:39 Austin Aha! You have fallen into the same trap that I did.
10:39 moritz that exist in the current object (or class)
10:40 moritz do tell what they mean!
10:40 Austin Surely, I thought, if there is a class method called .attributes, then I should be able to use that as a list of names to call getattribute $object, $attr
10:40 Austin But alas, it was not to be.
10:40 Austin THE CAKE IS A LIE!
10:40 dalek parrot: r44079 | bacek++ | branches/sys_mem_reduce/include/parrot/memory.h:
10:41 dalek parrot: Add mem_internal_realloc_n_zeroed_typed macro
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44079/
10:41 dalek parrot: r44080 | bacek++ | branches/sys_mem_reduce/src/vtables.c:
10:41 dalek parrot: Switch to mem_internal allocations of interp->vtable
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44080/
10:41 dalek parrot: r44081 | bacek++ | branches/sys_mem_reduce/src/dynpmc/gdbmhash.pmc:
10:41 dalek parrot: Switch GDBMHash PMC to auto_attrs
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44081/
10:41 dalek parrot: r44082 | bacek++ | branches/sys_mem_reduce/src/dynpmc/gdbmhash.pmc:
10:41 dalek parrot: Switch GDBMHash PMC to GC allocations
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44082/
10:41 dalek parrot: r44083 | bacek++ | branches/sys_mem_reduce/src/embed.c:
10:41 dalek parrot: Switch to GC allocations in embed.c
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44083/
10:41 dalek parrot: r44084 | bacek++ | branches/sys_mem_reduce/src/exit.c:
10:41 dalek parrot: Switch to mem_internal functions in exit.c
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44084/
10:41 dalek parrot: r44085 | bacek++ | branches/sys_mem_reduce (3 files):
10:41 dalek parrot: Switch packfiles to use GC allocations
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44085/
10:41 dalek parrot: r44086 | bacek++ | branches/sys_mem_reduce/conf​ig/gen/crypto/digest_pmc.in:
10:41 dalek parrot: Switch generated Digest dynpmcs to GC allocations
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44086/
10:41 dalek parrot: r44087 | bacek++ | branches/sys_mem_reduce/src/pmc/packfile.pmc:
10:41 dalek parrot: Switch Packfile PMC to GC allocations
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44087/
10:41 dalek parrot: r44088 | bacek++ | branches/sys_mem_reduce/src/dynpmc/rational.pmc:
10:41 dalek parrot: Switch Rational PMC to auto_attrs and GC allocations.
10:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44088/
10:41 Austin It's just a bunch of names that may or may not be meaningful to some developer. Maybe you need to call inspect($attribute), maybe you can call getattribute($pmc, $attribute), or maybe none of the above.
10:41 payload joined #parrot
10:43 contingencyplan joined #parrot
10:44 cosimo joined #parrot
10:53 patspam joined #parrot
11:01 eirik joined #parrot
11:24 payload joined #parrot
11:27 bacek Niiiiice...
11:28 bacek There is mem_allocate_typed macros which is casting wrapper around malloc (basically)
11:28 bacek 1 arg
11:28 bacek And mem_allocate_typed _function_
11:28 bacek Which allocate data from fixed pool.
11:29 * bacek committing suicide
11:31 Austin Isn't that (the memory pools) what you were talking about implementing, bacek?
11:31 bacek no
11:31 Austin Oh.
11:31 bacek I'm encapsulating current memory allocations
11:31 Austin Oh.
11:32 bacek (And we already have quite few memory pools)
11:43 bluescreen joined #parrot
11:58 dalek kakapo: 7746fe7 | austin++ |  (9 files):
11:58 dalek kakapo: Got TapListener.nqp test working using Test::Builder::Tester. Yikes.
11:58 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/7746fe7dd27d4c5060920f6250eff039f18c0c31
12:55 fperrad_ joined #parrot
13:04 dalek rakudo/master: d5d58cc | moritz++ | t/spectest.data:
13:04 dalek rakudo/master: [t/spectest.data] re-enable four passing test files
13:04 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/d​5d58cc77e5ec2cd433012585f331455a4d7a6d3
13:22 mikehh joined #parrot
13:38 dalek rakudo/master: 2c23657 | (Solomon Foster)++ | src/Perl6/ (2 files):
13:38 dalek rakudo/master: Add rand as a term, cloning the Nil term's code.
13:38 dalek rakudo/master: Apparently this still needs special handling to get properly awesome error messages, but for the moment, this works.
13:38 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/2​c2365783b7be44b0f950ac362f5d259d9a91b5a
13:40 Coke rant: we have two wiki pages: HLLInteroperability and Hll... can we combine these or rename one of them?
13:41 Austin Heh, heh, heh.
13:41 Austin I noticed that, but I was impressed with how full they both were.
13:43 Coke is ParrotDictionary autogened?
13:43 Austin No.
13:43 Coke oh dear god.
13:43 purl dear god. is wednesday almost over?
13:44 Coke no, purl, we have a few hours yet.
13:44 Austin There was a lot of manual scripting, and much of it was done offline.
13:45 Coke wow.
13:46 Coke let me reiterate. Wow.
13:48 Coke rant: trac doesn't show you which pages link to the page you're on.
13:48 KingOfKarlsruhe joined #parrot
13:49 tetragon joined #parrot
13:50 Coke rant: trac doesn't let you describe ticket types.
13:50 Coke e.g.: what is a 'feature' ticket? how is that different from a todo?
13:51 Austin Google code does a nice job of that.
13:52 Coke free karma to the person who finds me a trac plugin for either of those features.
13:54 Coke rant: trac automatically indexes things by the initial camelcased word, but all our Tasklist (and TaskList) pages put the tasklist at the end, avoiding the automatic grouping.
14:01 whiteknight joined #parrot
14:03 dalek TT #1456 created by nwellnhof++: String iterator rewrite
14:07 whiteknight good morning, #parrot
14:09 plobsing joined #parrot
14:09 Austin Coke: http://trac-hacks.org/wiki/TicketGuidelinesPlugin
14:11 Austin Also: http://trac-hacks.org/wiki/TicketExtPlugin
14:13 Austin Slightly related: http://trac-hacks.org/wiki/TracBacksPlugin
14:15 Austin This might be better than the Guidelines: http://trac-hacks.org/wiki/​TicketSidebarProviderPlugin
14:18 Austin On the linkback side, there's this: http://trac-hacks.org/wiki/​TicketSidebarProviderPlugin
14:18 Austin Whoops.
14:18 Austin http://trac-hacks.org/wiki/BackLinksMacro
14:18 Austin Makes a list of referring pages.
14:22 Austin Okay, where's my free karma?
14:22 Austin Good morning, Whiteknight.
14:22 whiteknight hello Austin
14:22 Austin What's new over on the west coast?   (of the Delaware, that is..)
14:23 whiteknight not a whole lot.
14:23 PerlJam joined #parrot
14:29 mikehh joined #parrot
14:29 dalek parrot: r44089 | mikehh++ | trunk/MANIFEST:
14:29 dalek parrot: regenerate MANIFEST
14:29 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44089/
14:33 Coke austin++
14:33 * Austin bows.
14:34 Austin Coke, it seems like the BackLinksMacro is pretty much just what you want.
14:34 Austin The other ticket ones are kind of kludgy ways to get text on the page, for the most part.
14:36 lucian_ joined #parrot
14:38 Coke Austin: I agree.
14:38 Coke except that you have to add [[BackLinks]] to every page.
14:39 Austin Assuming you want backlinks, yes.
14:39 Coke so, -1 on that.
14:39 Coke i want them on every page without having to edit anything, that's how bad I want them. =-)
14:39 Austin Should be pretty easy to scriptify them in there.
14:40 Coke not yet worth learning a completely new (to me) system to figure this out.
14:40 Austin I wonder if you could put the [[backlinks]] in the page footer..?
14:44 dalek rakudo/master: 761d05a | (Solomon Foster)++ | src/Perl6/Grammar.pm:
14:44 dalek rakudo/master: Add obs method and port the smart version of rand from STD.pm.
14:44 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/7​61d05a257e737e634258431b0e655c56f8c71d6
14:45 mikehh joined #parrot
14:46 dalek parrot: r44090 | mikehh++ | trunk/runtime/parrot/library/Test/More.pir:
14:46 dalek parrot: fix codetest failures - trailing whitespace
14:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44090/
14:46 dalek parrot: r44091 | mikehh++ | trunk (4 files):
14:46 dalek parrot: set svn properties
14:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44091/
14:46 dalek parrot: r44092 | NotFound++ | trunk/DEPRECATED.pod:
14:46 dalek parrot: Remove TT #918 from DEPRECATED.pod, alredy done
14:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44092/
14:50 jsut joined #parrot
14:54 dalek TT #918 closed by NotFound++: Change handling of class_init functions
15:02 Coke do we have any g++ users on? notfound?
15:02 NotFound Coke: yes?
15:03 moritz karma g
15:03 purl g has karma of 951
15:03 Coke config/auto/warnings.pm jumps through hoops to try to not bother using some warnings on g++ - does that matter, or can we just probe for them like we do the other 30 warnings?
15:03 mikehh joined #parrot
15:03 Coke @potential_warnings_no_cpp
15:04 Coke or does g++ support those warnings and then do the wrong thing?
15:04 NotFound Coke: that are warnings that makes C++ build very noisy. They are important to locate potential bugs.
15:04 Coke ok. so we should definition avoid them if using g++?
15:04 Coke er, definitely.
15:05 NotFound Important to avoid all that noise, I mean.
15:05 janus joined #parrot
15:05 Coke ok.
15:06 NotFound And I'm not sure, but I think some of it broke the build on some g++ version.
15:06 Coke ok. I can keep it separated, just requires some hoop jumping.
15:07 NotFound Coke: nice
15:07 Coke can someone else look at the use of ccwarn in config/auto/gcc.pm and agree with me that it seems useless?
15:09 NotFound Coke: a feature l'd like to have: a way to specify options to be used in the build, but not with probes. For example, -Werror
15:09 Coke NotFound: any flags specified on the command line should always be used.
15:10 mikehh joined #parrot
15:10 Coke (I know some aren't, that's a bug.)
15:10 Coke s/command/config/
15:10 NotFound Coke: that is the problem. Lots of probes will fail with -Werror, will ve very hard to write probes warning-free.
15:10 Austin Man, the really *nice* thing about making a stoopid mistake is that when you finally find it, it only takes moments to fix...
15:11 Coke NotFound: oh. you mean, "use during build, but never probe with" ?
15:11 Coke that's harder.
15:11 NotFound Coke: yes
15:11 Coke (much harder.)
15:11 NotFound Well, one can always dream ;)
15:12 NotFound autoconf also lacks that.
15:18 NotFound Coke: looks like gcc.pm gets the value from conf->data and then set it with that same value.
15:19 dalek parrot: r44093 | mikehh++ | trunk/src/pmc/opcode.pmc:
15:19 Coke NotFound: right. seems useless, yes?
15:19 dalek parrot: add Copyright, Id, coda and some documentation
15:19 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44093/
15:19 dalek parrot: r44094 | mikehh++ | trunk/src/pmc/oplib.pmc:
15:19 Coke (not to mention "$foo", which is also useless.)
15:19 dalek parrot: add Copyright, Id, coda and some documentation
15:19 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44094/
15:19 NotFound Coke: I'm not very good at perl, but looks useless to me, yes,
15:20 NotFound (If not, is black magic that should be avoided)
15:33 whiteknight NotFound, Austin: ping
15:33 theory joined #parrot
15:35 nopaste "coke" at 65.91.151.194 pasted "notfound, this work for you? (on g++, I expect it to generate a line in config_lib.pasm with g++=1" (33 lines) at http://nopaste.snit.ch/19664
15:35 dalek parrot: r44095 | coke++ | branches/rm_cflags/config/auto/gcc.pm:
15:35 dalek parrot: Remove useless use of get/set of @ccwarn@
15:35 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44095/
15:35 dalek parrot: r44096 | mikehh++ | trunk/src/main.c:
15:35 dalek parrot: correct c function docs
15:35 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44096/
15:35 dalek parrot: r44097 | mikehh++ | trunk/compilers/imcc/main.c:
15:35 dalek parrot: correct c function docs
15:35 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44097/
15:37 Coke (for me, when i run it with gcc, i get g++=0, as expected, but with a Configure.pl --cc=g++, I get build failures. figured I'd bounce it off you. =-)
15:38 Coke karma g?
15:38 purl g has karma of 957
15:38 Coke karma c?
15:38 purl c has karma of 8377
15:38 moritz karma c++
15:38 purl c++ has karma of -95
15:40 NotFound whiteknight: pong
15:41 NotFound Coke: one moment...
15:41 Coke ah. no, it doesn't work. (g++ isn't set, so the build is including those warnings that you warned me about, so boom.)
15:41 whiteknight NotFound: the tt_1449 branch is basically ready to merge. If you can add new tests for your arrays-as-keys suggestion, it can get merged
15:42 NotFound whiteknight: just merge it and we'll add the tests later.
15:42 whiteknight NotFound: I'd rather not, otherwise we'll forget to add tests
15:43 whiteknight I'll throw some together later tonight if nobody beats me to it
15:44 NotFound whiteknight: the kind of tests and usages I have in mind are for winxed, and it take me some time to build winxed under a branch.
15:49 chromatic joined #parrot
15:49 Coke NotFound: how do you specify g++? do you use perl Configure.pl --cxx ?
15:53 Coke ok, this works, with my patch: perl Configure.pl --cc=g++ --link=g++ --ld=g++
15:55 Coke cxx seems to be borked.
15:55 Psyche^ joined #parrot
15:58 Coke ah. cxx is a leftover from when we built icu.
16:00 dalek rakudo/master: f592840 | masak++ |  (4 files):
16:00 dalek rakudo/master: basic implementation of anonymous enums
16:00 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/f​592840596fe7e5a54ce2fab704bec70bd2acfc4
16:00 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32243), fulltest) at r44097 - Ubuntu 9.10 amd64 (gcc with --optimize)
16:02 Coke NotFound: a sanity check on your default g++ build on rm_cflags branch is appreciated.
16:03 NotFound Coke: I set cc, cxx, link and ld
16:04 Coke near as I can tell, cxx is a waste.
16:04 Coke (if you find that not to be the case, see TT#1467
16:05 Coke (if you find that not to be the case, see TT#1457, oops.
16:05 NotFound Coke: mmmm... last time I checked there was some module that requires c++ compiling... gdbm, maybe?
16:06 Coke NotFound: possible. but if I gen a makefile using -cxx, it shows up nowhere. (feather may not have gdbm)
16:08 NotFound Im' fine with baning from core any module that requires c++ compiling, anyway.
16:08 dalek parrot: r44098 | coke++ | branches/rm_cflags/config/auto (2 files):
16:08 dalek parrot: Move check of g++ vs. gcc to a more appropriate location.
16:08 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44098/
16:09 NotFound Coke: Building r44098/rm_cflags right now
16:09 bubaflub joined #parrot
16:10 Coke if you're building, then it's probably ok. =-)
16:10 Coke (i'm only changing config stuff.)
16:11 NotFound Noisy, but works.
16:11 Coke yup. working on the noise. danke!
16:11 Coke by noisy I assume you mean "lots of warnings".
16:11 Coke the g++ noise is going to stay.
16:12 NotFound Coke: yes, but also the compiler command line echoing
16:12 Coke yup. that part is intentional.
16:13 Coke (was previously hidden by the ccflags script we are rm'ing.
16:17 dalek TT #1457 created by coke++: remove --cxx option to Configure.pl
16:18 NotFound Thinking about the NCI static signatures thing... if we want to avoid them to waste space in libparrot, we can put them in another library, and dynamically load it when required.
16:18 Coke Ugh. we throw every probed warning into the config data. is that desired?
16:18 Coke I think having a single ccwarn with the warnings we settled on is fine.
16:19 NotFound Coke: rm_cflags pass all tests here
16:19 Coke rather than -W, -Wall, -Winline ...
16:23 NotFound Andy: I 'm reading now your last message in the list. Have you been reading my mind? ;)
16:23 Andy ?
16:23 Andy yOu mean Armstrong?
16:24 NotFound Uh, sorry, my memory for name/nick relations is very bad.
16:25 Andy is AndyA even in here?
16:25 Andy oh look, heis.
16:25 Andy well, he needs a new name, clearly.
16:25 Coke feedback on TT #1458 would be nice.
16:26 cognominal joined #parrot
16:26 NotFound Long time ago I tried to find a good nick, but failed. Thus, NotFound
16:29 payload joined #parrot
16:32 NotFound Coke: I think that what we need is some documented policy about what must go into parrot_config.
16:34 dalek TT #1458 created by coke++: Don't add probed warnings to config information.
16:36 NotFound BTW, what's the source for archname? In my Maemo build it says i686-linux-thread-multi
16:37 NotFound And parrot -V says: built for i386-linux
16:41 Coke NotFound: would be nice. right now it's just a mess.
16:44 Coke NotFound: at a guess, p5.
16:45 NotFound Looks like it comes from p5 with a lot of ad-hoc filtering.
16:46 dalek rakudo/master: e23a053 | masak++ | src/glue/enum.pir:
16:46 dalek rakudo/master: [src/glue/enum.pir] two fixes
16:46 dalek rakudo/master: - s/Perl6Pair/Pair/
16:46 dalek rakudo/master: - removed cloning step
16:46 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/e​23a053b850953d6da63caef868167c3c57c6a48
16:50 dalek TT #1459 created by coke++: missing dep on parrot_config
16:55 dalek tracwiki: v9 | darbelo++ | Modules
16:55 dalek tracwiki: Add the new digest-dynpmcs repo to the modules list.
16:55 dalek tracwiki: http://trac.parrot.org/parrot/wiki​/Modules?version=9&amp;action=diff
16:57 dalek rakudo/master: c9601d7 | jonathan++ | src/Perl6/Grammar.pm:
16:57 dalek rakudo/master: Add a few more .obs from STD.pm, and also add it's term:sym<undef> for suggesting alternatives to undef.
16:57 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/c​9601d7948e7fd62e3fb329e310ae26321ff26f2
17:18 whiteknight joined #parrot
17:22 mikehh joined #parrot
17:25 riffraff joined #parrot
17:28 shockwave Does it matter if registers are named like so: $S10000001   ... when no other $S registers exist?
17:29 Coke shockwave: there is a limit to how high that parses, I think, but no, PIR doesn't auto-popuplate the "missing" registers.
17:29 Coke you can think of $S10000001 as a really ugly name for a register that maps to the first free parrot register.
17:30 Coke (PASM doesn't work that way, though)
17:30 shockwave @Coke. Cool, that's what I wanted to know. Thanks.
17:30 Coke first free parrot /string/ register, to be clear.
17:30 Coke shockwave: np
17:32 dalek rakudo/master: 5e7ac5a | jonathan++ | docs/metamodel.pod:
17:32 dalek rakudo/master: Re-visit the Rakudo meta-model spec and try and be less wrong, though we still ain't all the way. The main issue the previous spec has was that meta-methods generally expected to get the metaclass as the first arg when constructing the class, but then would get the instance there. Also we were meant to be able to write trait_mod:<is> to add a parent as $child.^add_parent($parent), rather than $child.add_parent($child, $parent). Now we're going
17:32 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/5​e7ac5ab4925ddbee89d2f8d0dc7ec14dcac57b6
17:37 Coke seen jonathan?
17:37 purl jonathan was last seen on #parrot 99 days, 16 hours, 9 minutes and 52 seconds ago, saying: Full marks for another refactor that's probably made Parrot slower again though. :-/  [Nov 10 01:27:23 2009]
17:37 davidfetter joined #parrot
17:51 shockwave Speed-wise, is there much of a difference between doing:
17:51 shockwave $S0 = 'hi'
17:51 shockwave return ($S0)
17:52 shockwave compared to: .return ('hi')
17:52 treed I wouldn't expect so, but I'm hardly an expect.
17:52 treed I think it still has to go into a register, whether that's anonymous or not.
17:53 treed The second one *could* use a PMC instead, but I doubt it.
17:53 treed s/expect/expert/
17:53 shockwave @treed, so you're saying that you think they amount to the same thing?
17:53 treed I *believe* so.
17:53 shockwave Alrighty.
17:53 purl somebody said Alrighty. was there a way to do that without having to start a new process?
17:54 treed But I'm not really expert.
17:54 NotFound shockwave: compile to pbc and disassemble it
17:54 shockwave NotFound. I didn't know one could do that.
17:55 shockwave oh, I see pbc_disassemble.exe, cool.
17:55 Coke or, just do parrot -t1 foo.poir
17:55 Coke the trace will often be just fine.
17:55 NotFound shockwave: parrot -o yourtest.pbc yourtest.pir ; pbc_disassemble yourtest.pbc
17:55 Coke I think those should be the same.
17:56 Coke (the pmc or not only enters it it in the caller. it might autobox that string result into a PMC for you.)
17:56 NotFound Yes, the trace is sometimes easier
17:56 chromatic joined #parrot
17:56 Austin_away I think the constant return actually returns a constant.
17:56 Coke but at the point of return, it should still be a string.
17:56 Coke Austin_away: no, it returns a "string".
17:56 Coke return($S0) doesn't really return a register, it returns the contents of the register.
17:57 Coke you do, of course, avoid an assignment.
17:58 treed really?
17:58 treed Huh.
17:58 treed I wouldn't have expected the return opcode to be able to operate on a literal.
17:58 nopaste "Austin" at 68.37.46.53 pasted "returning string-register vs. constant" (22 lines) at http://nopaste.snit.ch/19666
17:58 NotFound Some objection to commit a experimental faeture that adds library and include paths from environmental variables? (TT #1429)
17:58 Coke .return is really set_returns
17:59 Coke Austin: right. the only diff is the missing 'set' opcode.
17:59 Austin Yah, and the set_return with a constant encodes the constant ref into the op, while the $S0=x; return $S0 encodes the register into the op.
18:00 Coke so, slightly faster to return the constant (avoids one opcode invocation). no visible effect to the caller.
18:01 Austin Also, shrinks the bytecode by an infinitesimal fraction. :)
18:01 shockwave That dissassembler program is interesting. I wished you guys hadn't mentioned it. I'll probably be using it all the time, now.
18:02 Topic for #parrotis now Parrot 2.1.0 "As Scheduled" Released! | http://parrot.org/ | Tasks: PCC deprecations branch, HLL subclassing and MMD branch
18:02 shockwave Too bad it doesn't show the names of the subroutine that the certain chunk is defining.
18:05 dalek parrot: r44099 | coke++ | branches/rm_cflags/config/auto/warnings.pm:
18:05 dalek parrot: inline this sub.
18:05 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44099/
18:05 dalek parrot: r44100 | whiteknight++ | branches/tt_1449/t/pmc/namespace.t:
18:05 dalek parrot: [TT #1449]add some basic tests for the new behavior
18:05 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44100/
18:05 dalek parrot: r44101 | whiteknight++ | branches/tt_1449/t/pmc/namespace.t:
18:05 dalek parrot: [TT #1449] fix test plan
18:05 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44101/
18:06 whiteknight joined #parrot
18:06 Austin shockwave: tt#1438
18:08 shockwave Austin: true, true.
18:13 shockwave Can someone double-check if the pbc_disassembly with the -o flag is working. It doesn't for me, on Windows Server 2008.
18:13 shockwave (Powershell) ^
18:15 Austin shockwave: it works for me, but also spews to stdout
18:15 ttbot Parrot trunk/ r44102 MSWin32-x86-multi-thread make error http://tt.ro.vutbr.cz/file/cmdout/200792.txt ( http://tt.ro.vutbr.cz//buil​dstatus/pr-Parrot/rp-trunk/ )
18:16 Austin maybe not...
18:16 shockwave Austin, creates the file, but no output, right?
18:16 Austin Nope. I get nothing.
18:17 Austin (Leftover file from something else was confusing the matter.)
18:17 nopaste "Austin" at 68.37.46.53 pasted "No -o for pbc_disassemble" (3 lines) at http://nopaste.snit.ch/19667
18:18 Austin Shockwave, you going to create the ticket?
18:19 shockwave Sure, why not. I'll create it.
18:19 Coke ugh, pbc_disassemble outputs POD!?
18:19 Austin_Hastings joined #parrot
18:19 shockwave @Coke, I noticed that too.
18:20 NotFound outfile is ignored in Parrot_disassemble
18:20 dalek rakudo/master: 0e70eab | masak++ | src/builtins/Mu.pir:
18:20 dalek rakudo/master: [src/builtins/Mu.pir] added .list method
18:20 dalek rakudo/master: This makes all the tests in t/spec/S12-enums/anonymous.t pass.
18:20 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/0​e70eab41ae0d5fd9c07067d6c9c6a5a2dfabc2b
18:20 dalek rakudo/master: de7b7e6 | masak++ | t/spectest.data:
18:20 dalek rakudo/master: [t/spectest.data] uncomment S12-enums/anonymous.t
18:20 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/d​e7b7e6cc284b4052e35a2d196fe8d8b8622eb2b
18:21 Coke I am wondering why pbc_dis is showing me 5 constants in the header, but only using 1 of them in the body
18:22 dalek parrot: r44102 | NotFound++ | trunk (2 files):
18:22 dalek parrot: experimental env vars PARROT_LIBRARY and PARROT_INCLUDE, TT #1429
18:22 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44102/
18:22 dukeleto chromatic: the server that I was doing benchmarks on, timtowtdi.org, seems to be gone, so I have to setup my benchmark env on a new server
18:23 shockwave NotFound, is the file ignored purposedly?
18:23 NotFound shockwave: looks like a half-implemented feature
18:24 chromatic Pity.
18:24 shockwave NotFound, ok. I'll mention it in the ticket.
18:25 theory joined #parrot
18:31 mikehh joined #parrot
18:31 dalek TT #1460 created by shockwave++: pbc_disassemble -o option not working.
18:37 Coke dukeleto: it is gone.
18:38 Coke moritz++ mentioned it on channel a week or so ago. :|
18:41 mikehh joined #parrot
18:47 dukeleto Coke: i missed the message. what happened?
18:47 Coke server's no longer available KTHANXBAI.
18:47 * dukeleto makes a sadface
18:48 Coke we got about a week's notice. I pretty much shut all my stuff down immediately and switched back to feather.
18:48 dukeleto sucks.
18:49 Coke U+2639
18:49 dukeleto well, that was my parrot benchmark server, so I will have to set myself up somewhere else.
18:49 Coke from scratch because none of the numbers will match up again!
18:49 Coke U+2639
18:50 myhrlin joined #parrot
18:55 dalek parrot: r44103 | NotFound++ | trunk/src/embed.c:
18:55 dalek parrot: use outfile parameter in Parrot_disassemble, TT #1450, shockwave++
18:55 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44103/
18:56 dukeleto Coke: yeah, numbers cannot be compared against servers. I have one machine that is not as beefy at timtowtdi that I could use, but I am trying to procure another box to work on
18:57 chromatic Callgrind numbers are comparable.
19:00 Coke NotFound++ # that was quick.
19:01 ttbot Parrot trunk/ r44103 MSWin32-x86-multi-thread make error http://tt.ro.vutbr.cz/file/cmdout/200887.txt ( http://tt.ro.vutbr.cz//buil​dstatus/pr-Parrot/rp-trunk/ )
19:01 Coke ZOMG YOU BROKE THE BUILD
19:01 Coke I am assuming STRINGNULL isn't being exported?
19:01 whiteknight urg, I hate how SVN wants to update hundreds of unrelated file properties every time you merge a branch
19:02 Coke whiteknight: someone is merging wrong.
19:02 whiteknight ...you?
19:02 Coke heh. no; your mergebacks have done it to me. =-)
19:03 Coke I assume some one branch got screwed up and now everything is.
19:04 Coke definitely annoying. but singce it's only annoying, I haven't bother to figure out what's going on.
19:04 bacek joined #parrot
19:04 Coke but it's probably bacek's fault.
19:04 NotFound That was me? Isn't STRING_IS_NULL supposed to be expanded appropiately?
19:04 * Coke whistles innocently.
19:04 bacek Coke, WHAT?
19:04 purl i think Coke, is that an error message that you saw?
19:05 dalek TT #1449 closed by whiteknight++: Add support for String PMC in NameSpace::get_pmc_keyed
19:05 Coke bacek: Just messing with you.
19:08 * dukeleto sits in the corner, mumbling about the delightfulness of merging in git
19:10 cotto_work your day will come
19:11 Austin June 12.
19:11 Austin Cotto versus Foreman.
19:11 dalek parrot: r44104 | whiteknight++ | trunk (87 files):
19:12 dalek parrot: [TT #1449] merge the tt_1449 branch into trunk. This should satisfy the ticket
19:12 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44104/
19:12 dalek parrot: r44105 | whiteknight++ | branches/tt_1449:
19:12 dalek parrot: this branch was merged to trunk
19:12 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44105/
19:12 Austin Assuming a Bar Mitzvah doesn't get in the way.
19:12 Austin Yankee Stadium.
19:12 purl it has been said that yankee stadium is a bit of an experience, but eh.  :)
19:14 ttbot Parrot trunk/ r44104 MSWin32-x86-multi-thread make error http://tt.ro.vutbr.cz/file/cmdout/200943.txt ( http://tt.ro.vutbr.cz//buil​dstatus/pr-Parrot/rp-trunk/ )
19:19 joeri joined #parrot
19:23 Coke The TT bot is showing all the branches, but not testing them. Would it hoit to throw those into the mix all the time, or are they only added on request?
19:23 Coke (and am i the only one who is wierded out by the fact that we have two different ways to report build errors?
19:24 Coke also mj41++
19:25 donaldh_ joined #parrot
19:26 NotFound I'd like better to have a bot that fix errors ;)
19:26 Coke A SMOP.
19:28 dalek parrot: r44106 | NotFound++ | trunk/src/main.c:
19:28 dalek parrot: avoid STRING_IS_NULL usage in main that makes MSWin32 fail, don't know why
19:28 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44106/
19:29 donaldh__ joined #parrot
19:30 NotFound I'm thinking again that parrot main must use just the embed/extend interface.
19:31 dukeleto Coke: i like that we have multiple ways to detect build errors
19:32 NotFound What I don't like is that the bot doesn't tell when the error condition is gone. One never knows if the problem is fixed or the bot is being slow.
19:34 dalek kakapo: 0da603f | austin++ |  (8 files):
19:34 dalek kakapo: Got final TapListener testcase working. P6 code still not in base - only full.
19:34 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
19:34 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/0da603fffe8f08d675d23ff952df154193950917
19:34 dalek kakapo: 7a31c17 | austin++ |  (2 files):
19:34 dalek kakapo: Imported exception types into Exceptions.nqp. Moved Exceptions.nqp into base.
19:34 dalek kakapo: Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com>
19:34 dalek kakapo: review: http://gitorious.org/kakapo/kakapo/commit​/7a31c178dd61759e4291c4d11621d753b9c9a8e0
19:35 Coke NotFound: the code for the ttbot is available, methinks.
19:35 dukeleto Austin: do you have a test suite for kakapo?
19:35 PerlJam What is kakapo?/
19:35 dukeleto PerlJam: NQP utils
19:35 Austin dukeleto, sort of.
19:35 Austin I have a set of bootstrap tests using test::more (make test-bootstrap)
19:35 dukeleto Austin: well, you should use Tapir if you generate TAP
19:36 Coke msg mj41 - I see the client & server code for taptinder at http://dev.taptinder.org/wiki/TapTinder, but not the code for ttbot. Is that available?
19:36 purl Message for mj41 stored.
19:37 ash_ joined #parrot
19:37 Austin PerlJam: Kakapo is the missing runtime library for nqp.
19:37 * PerlJam is looking at it now.
19:38 PerlJam Austin: you've been busy
19:38 Austin Yeah. Still trying to get the -rx tax paid, so only half the code works.
19:38 Coke Austin: might some of this replace runtime/library?
19:39 Coke (i had been thinking of redoing some of library in core, but this might be a better idea.)
19:39 Austin Coke: dunno. Kakapo is written in NQP, so will be slower than pir.
19:39 PerlJam Coke: HLLs are always a better idea :)
19:40 Coke Austin: you can always compile it out to PIR.
19:40 Austin It compiles to pbc now. But it's fat, bloated pbc.
19:43 NotFound Is just written in nqp, or is intended to be used only from nqp?
19:44 Austin It is intended to round out NQP. It is written in NQP because I don't do PIR.
19:45 Coke but it does appear to do things like modify the Hash PMC, so you could use these methods from PIR.
19:45 Coke "here, let me stick this method you probably want in your namespace"
19:46 Austin Yeah. That's the rounding out part.
19:46 Austin PIR users won't care, because a lot of my methods are replacements for opcodes.
19:47 Coke I'm eyeing some of this now for partcl-nqp.
19:47 Austin But I like being able to say "    unless $param.defined { $param := default(); }    "
19:47 Coke austin, I think // works. =-)
19:47 Austin Coke: Most of this came from work on Close.
19:48 dukeleto the "weekly focus" part of our main wiki page has prime real estate, but very few useful links
19:48 dukeleto seems suboptimal
19:48 Coke I'm not sure //= works, but // does.
19:48 Austin dukeleto: There's HLLInteroperability.
19:48 Austin Also, there's HllInteroperability, too.
19:48 Coke Austin: And HllInteroperability !
19:48 Austin :)
19:49 Coke austin: $foo := $foo // default(); shoudl work.
19:49 Austin Sweet.
19:49 Austin Does it survive null?
19:49 Austin Have to find out.
19:50 Coke yah, Iunno.
19:50 * Coke wonders how to make partcl-nqp depend on kakapo.
19:50 Austin Just ship the pir.
19:50 Austin Or maybe plumage can handle it?
19:50 NotFound I'm thinking that we should borrow in core a rakudo thing: an Undef that throws something if being used for any other thing that checking his boolean value.
19:51 dukeleto Austin: i can help you with making plumage metadata for kakapo, if you need
19:51 NotFound That way, the problems 'Return null/undef or throwing?' are easily solved,
19:51 shockwave What is plumage?
19:51 purl well, plumage is the future Parrot module ecosystem.  It will include tools to search metadata, handle dependencies, install modules, and so forth. The repository is at http://gitorious.org/parrot-plumage/parrot-plumage and the design docs are at https://trac.parrot.org/pa​rrot/wiki/ModuleEcosystem
19:51 Coke can plumage install-to-working directory?
19:51 Austin Dukeleto: I've got an old (!!) metadata file. But I haven't kept up even a little bit with progress on plumage, so it's probably bogus
19:53 Austin NotFound: Also, coercion. I think Undef is supposed to transmogrify into a Scalar if it gets the right opcode.
19:54 NotFound Austin: I'm thinking about the simpler usage: if you want to check the result, use get_bool, if you want to let it throw, just use it unchecked.
19:54 dukeleto Austin: setup.pir comes with a hook to generate a skeleton metadata file
19:55 Austin dukeleto: setup.pir is from plumage?
19:56 NotFound Er, not get_bool, defined
19:56 Coke NotFound: that sounds like a HUGE change to Undef semantics.
19:57 NotFound Coke: I'm thinking about a new Undef type, able to carry a message or the exception to throw.
19:58 Coke so we'd have /two/ undefs?
19:58 Coke one that morphed, one like Fail ?
19:59 Coke I'd really need to think about how that impacted tcl.
19:59 NotFound Coke: yes, Fail will be a good name.
20:00 TimToady phone
20:00 ZeroForce joined #parrot
20:02 dukeleto Austin: setup.pir is the new pure PIR configure stage for Parrot. it is not specific to plumage. written by fperrad
20:03 NotFound For example loadlib can return a Fail that throws with some informative message if used. So you can check the result, or just let it throw when used, without needing to poke on global flags.
20:03 cognominal joined #parrot
20:03 Austin dukeleto: Rock on! How complete is setup.pir? Can I replace Configure.pl?
20:05 dukeleto Austin: yes, you should be able to get rid of Configure.pl
20:08 dalek rakudo/master: 215a019 | pmichaud++ | src/builtins/Positional.pir:
20:09 lucian joined #parrot
20:11 theory joined #parrot
20:13 cognominal joined #parrot
20:13 dukeleto Austin: look at runtime/parrot/library/distutils.pir to learn more about setup.pir
20:14 Austin dukeleto: On my list of things to do. Thanks!
20:14 Whiteknight joined #parrot
20:15 dukeleto Austin: how to generate plumage metadata: http://github.com/leto/tapir/commit/02​fdb6c5a11a91ad2183563eb15bb2527009ba8a
20:15 dukeleto Austin: how to make a setup.pir : http://github.com/leto/tapir/commit/de​92d4e40ccd08c2239ea82ac1c0ab7d26eed967
20:16 Austin_Hastings joined #parrot
20:16 dalek joined #parrot
20:16 Austin Well, that's irritating.
20:17 dukeleto Austin: screen+irssi is a beautiful thing
20:18 Austin :)
20:18 Austin I've got firefox doing too much, apparently.
20:19 NotFound dukeleto: is easier to parse json than to fill a hash with pir code ;)
20:20 NotFound BTW the json parser is painfully slow.
20:21 dukeleto NotFound: have you looked into why? i haven't fiddled with the json parser much
20:22 NotFound dukeleto: I lack PCT knowledge
20:22 cotto_work NotFound, do you have an example of something that's slow to parse?
20:24 davidfetter joined #parrot
20:24 Coke which of the 3 json parsers is this?
20:25 * Coke may be exaggerating slightly.
20:27 NotFound cotto_work: examples/nci/xlibtest.pir
20:28 NotFound It saves drawings as an array of arrays of ints. Draw a few lines, and loading goes very slow.
20:29 Coke note that that is using the old compilers/json, which I thought someone had decided was abandoned.
20:30 Coke er. are data_json and json the same thing?
20:30 Coke (they both are using TGE?)
20:30 NotFound I think so.
20:31 Coke ugh. looks like japhb did a copy in r41128, but no indication in that commit message of what problem he was trying to solve.
20:32 Coke ISTR being unhappy with this when I noticed it the first time. =-)
20:32 mikehh joined #parrot
20:33 * Coke finds http://lists.parrot.org/pipermail/pa​rrot-dev/2009-September/002974.html which was never answered.
20:36 * Coke finds http://trac.parrot.org/parrot/ticket/508 which is warnocked.
20:37 Coke "japhbCoke, JSON is deprecated in favor of data_json because there was no obvious way to fix the case issue without screwing over Windows users and breaking deprecation policy."
20:37 NotFound Coke: it was related to upper/lower problems with compreg names and nocase filesystems, if I remember well.
20:37 chromatic You'd think Windows users had acclimated to that screwed over feeling.
20:38 Coke You'd think someone would have fixed it the right way. :P
20:38 dukeleto i think data_json is what people should be using and JSON needs to be deleted
20:38 Coke I think data_json is a bad name and we should just be using json.
20:38 NotFound I have written a bunch of xlib tests that works the same way, don't remember what json used in each %-)
20:39 NotFound But all are alow.
20:39 NotFound slow
20:39 Coke there's a json notice in deprecated.pod, but it seems to be for something ELSE.
20:39 Coke IWBNI someone fixed this so i could avoid the residual angst. =-)
20:42 Coke I will open a ticket.
20:42 NotFound I'll be happy having a function to read and other to write a json file, without having to worry if is implemented as a language or not.
20:42 bacek *incoming*
20:43 cotto_work oh noes
20:44 bacek C'mon! It's only 15 commits
20:45 cotto_work Are you seeing much of a speedup in that branch?
20:49 dalek TT #1461 created by coke++: compilers/json
20:49 cognominal joined #parrot
20:49 mikehh Whiteknight: c++ comments in src/pmc/namespace.pmc?
20:50 Coke you did not mergeback your c++ comments to trunk...
20:50 Coke Aigh.
20:53 Whiteknight mikehh: ah, damnit
20:55 dalek parrot: r44110 | bacek++ | branches/sys_mem_reduce (2 files):
20:56 dalek parrot: More migration of PackFile functions to GC allocations
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44110/
20:56 dalek parrot: r44111 | bacek++ | branches/sys_mem_reduce (17 files):
20:56 dalek parrot: Rename gc_mem macros to mem_gc macros
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44111/
20:56 dalek parrot: r44112 | bacek++ | branches/sys_mem_reduce/src/debug.c:
20:56 dalek parrot: One more GC allocations in debug.c
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44112/
20:56 dalek parrot: r44113 | bacek++ | branches/sys_mem_reduce/src/packfile.c:
20:56 dalek parrot: One more GC allocation in packfile.c
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44113/
20:56 dalek parrot: r44114 | bacek++ | branches/sys_mem_reduce/src/vtables.c:
20:56 dalek parrot: Switch VTABLE allocations to mem_internal.
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44114/
20:56 dalek parrot: r44115 | bacek++ | branches/sys_mem_reduce/src/oo.c:
20:56 dalek parrot: Switch object method cache to GC allocations.
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44115/
20:56 dalek parrot: r44116 | bacek++ | branches/sys_mem_reduce/config​/gen/platform/generic/exec.c:
20:56 dalek parrot: Switch platform.exec to GC allocations.
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44116/
20:56 dalek parrot: r44117 | bacek++ | branches/sys_mem_reduce/src/utils.c:
20:56 dalek parrot: Switch utils to GC allocations.
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44117/
20:56 dalek parrot: r44118 | bacek++ | branches/sys_mem_reduce/src/thread.c:
20:56 dalek parrot: Switch threads to internal allocations.
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44118/
20:56 dalek parrot: r44119 | coke++ | trunk/DEPRECATED.pod:
20:56 dalek parrot: add note on TT#1461
20:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44119/
21:06 GeJ Good morning everyone
21:07 cotto_work hey GeJ
21:07 GeJ servus cotto
21:10 mj41 Coke: some links to ttbot code are here http://dev.taptinder.org/wiki/​ToDo/Build_status_-_one_report
21:11 dukeleto o hai
21:11 bluescreen joined #parrot
21:12 dalek parrot: r44120 | whiteknight++ | trunk/src/pmc/namespace.pmc:
21:12 dalek parrot: remove c++ comments. mikehh++
21:12 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44120/
21:16 Coke http://trac.parrot.org/parrot/ticket/1278 is an easy win for someone who can reverse a commit
21:19 cognominal joined #parrot
21:20 Coke msg pmichaud are the Deprecation items for NQP in DEPRECATED.pod now irrelevant?
21:20 purl Message for pmichaud stored.
21:21 dalek rakudo/master: 4c3dd04 | (Solomon Foster)++ | src/core/Array.pm:
21:21 dalek rakudo/master: Eager implementation of Array.splice.
21:21 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/4​c3dd04bcb5c57d60d67330e1d010e5e26b62822
21:21 dalek rakudo/master: 29b941d | (Solomon Foster)++ | src/core/Array.pm:
21:21 dalek rakudo/master: Tweak Array.splice to handle negative offset and/or size.
21:21 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/2​9b941d7277402f5275e4fca6a34f22aa6c7d955
21:21 dalek rakudo/master: dc301e8 | (Solomon Foster)++ | t/spectest.data:
21:21 dalek rakudo/master: Turn on splice.t.
21:21 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/d​c301e855fdd3761f380fae9b084832247390431
21:21 Coke Whiteknight: does your recent namespace thing impact TT#159?
21:23 Coke (just noticed it in the dep.pod)
21:24 Whiteknight I have no idea. let me look
21:25 Whiteknight Coke: no. At least, not directly. Looks like a similar algorithm might be wanted in the Class PMC as what I put into the NameSpace PMC
21:28 dalek parrot: r44121 | coke++ | trunk/DEPRECATED.pod:
21:28 dalek parrot: Remove link to ticket that was closed six months ago.
21:28 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44121/
21:29 Whiteknight Coke: I think I'm going to close TT #159
21:29 Whiteknight the proposal expressed there was met with disapproval, and there aren't enough details to proceed
21:31 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32247), fulltest) at r44120 - Ubuntu 9.10 amd64 (g++ with --optimize)
21:33 dalek rakudo/master: 0d2009c | jonathan++ | src/ (11 files):
21:33 dalek rakudo/master: Refactor the meta-model to bring it in line with the earlier changes to metamodel.pod, and so things Akshually Work somewhat more like they should. Also should unblock fixing up introspection.
21:33 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/0​d2009c733b37bdf4ea5a7609f5d3905a3199001
21:36 pmichaud Coke: yes, I think they're irrelevant.  the old nqp is itself likely deprecated as a whole
21:37 dalek winxed: r408 | julian.notfound++ | trunk/examples/nqp.winxed:
21:37 dalek winxed: example of nqp interoperability
21:37 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=408
21:39 dalek TT #451 reopened by coke++: Anticipated changes to bytecode before 2.0
21:39 dalek TT #895 reopened by coke++: Towards automatic allocation and deallocation of PMC attributes
21:42 nopaste joined #parrot
21:42 Coke pmichaud: if you like, I can open a ticket regarding old NQP, and add a note that anything under "ext/" is considered experimental.
21:42 Coke (and 'wontfix any existing
21:42 pmichaud Coke: wfm
21:42 Coke (and 'wontfix' any existing NQP tickets)
21:44 Coke k.
21:45 pmichaud there may be nqp tickets related to nqp-rx, those shouldn't be wontfixed
21:45 pmichaud (I should probably see about setting up a github ticket queue and monitoring it)
21:45 dalek parrot: r44122 | coke++ | trunk/DEPRECATED.pod:
21:45 dalek parrot: convert a raw TT into a link.
21:45 purl I don't know how to convert a raw TT to a link..
21:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44122/
21:46 Coke pmichaud: in that case, perhaps I'll just assign them all to you.
21:46 cotto_work convert purl into something smarter
21:46 purl I don't know how to convert purl to something smarter.
21:46 cotto_work convert 1 mile into libraries of congress
21:46 purl I don't know how to convert 1 mile to libraries of congress.
21:46 Coke /should/ anything in ext/ be 'experimental' ? we are shipping a parrot-nqp...
21:47 Coke I'll leave that for someone else to champion.
21:47 pmichaud I'm not sure ext/ means "experimental" -- I thought it was "external"
21:50 Coke it is.
21:50 Coke but we have no tests to insure that things aren't getting updated in an incompatible fashion.
21:51 chromatic Parrot::Embed has tests.
21:51 Coke chromatic: ... for nqp-rx.
21:51 Whiteknight pmichaud: could you take one last look at TT #159? I'm thinking about closing it as being too vague and not putting forth an agreeable proposal, but I think there may be a nugget of a good idea in there as it pertains to the standardization of some opcodes
21:53 pmichaud Whiteknight: looking
21:54 pmichaud Whiteknight: I think there's another more recent and detailed ticket on this topic
21:54 Whiteknight thanks
21:54 Whiteknight ok
21:54 pmichaud looking
21:56 Coke rant: 'make headerizer' should probably depend on all the C files it depends on.
21:56 dalek TT #1462 created by coke++: compilers/nqp
21:59 Coke ARG.
21:59 Coke I am causing churn on DEPRECATED.pod, apologies.
21:59 Coke will all be over soon.
22:01 Coke there.
22:02 dalek parrot: r44123 | coke++ | trunk/DEPRECATED.pod:
22:02 dalek parrot: NQP itself is deprecated; go for a single ticket instead of the individual ones*
22:02 dalek parrot: * which might still be fixed/updated in nqp-rx, so leaving those open.
22:02 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44123/
22:02 dalek parrot: r44124 | coke++ | trunk/DEPRECATED.pod:
22:03 dalek parrot: Remove snippet that shouldn't haven't been committed.
22:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44124/
22:03 dalek parrot: r44125 | coke++ | trunk (2 files):
22:03 dalek parrot: Close TT #1069 - remove deprecated function.
22:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44125/
22:03 pmichaud Whiteknight: looks like it was decided that class lookups would always be relative to the current HLL namespace (TT #8, http://lists.parrot.org/pipermail/p​arrot-dev/2009-January/000863.html, TT #159 comment #3)
22:07 dalek winxed: r409 | julian.notfound++ | trunk/winxedst (2 files):
22:07 dalek winxed: new predef elements
22:07 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=409
22:07 pmichaud so I think #159 can be marked as rsolved
22:07 pmichaud *resolved
22:08 dalek rakudo/master: f0da535 | jonathan++ | src/ (10 files):
22:08 dalek rakudo/master: Implement coercion ($x as Foo) in signature binding.
22:08 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/f​0da535d5e09adeb39b484fef96692aaea6c1f5d
22:09 lucian joined #parrot
22:09 nbrown joined #parrot
22:09 Whiteknight ok, thanks
22:11 dalek winxed: r410 | julian.notfound++ | trunk/examples/packfile.winxed:
22:11 dalek winxed: add example packfile for testing parrot pbc files usage via packfile PMCs
22:11 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=410
22:12 theory joined #parrot
22:13 dalek TT #1069 closed by coke++: Deprecate Parrot_oo_get_namespace
22:14 dalek rakudo/master: b517009 | pmichaud++ | src/builtins/Positional.pir:
22:14 dalek rakudo/master: Handle the case where a Position receives a single non-integer index.
22:14 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/b​51700938aaf06f7f220c1b0e8bbc3a2816b21fd
22:14 dalek rakudo/master: db3f45a | pmichaud++ | src/ (10 files):
22:14 dalek rakudo/master: Merge branch 'master' of git@github.com:rakudo/rakudo
22:14 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/d​b3f45a3e1401d57dd32c91c113e4413def16420
22:19 dalek parrot: r44126 | coke++ | trunk/DEPRECATED.pod:
22:19 dalek parrot: remove reference to explicit (overly hopeful) release #'s.
22:19 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44126/
22:21 nbrown_ joined #parrot
22:25 * darbelo pokes dalek
22:25 dalek rakudo/master: a74f35a | jonathan++ | t/spectest.data:
22:25 dalek rakudo/master: Add S06-traits/as.t to spectest.data.
22:25 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/a​74f35a9b1caa8a0a129af765fc351f28f3fefc9
22:29 shockwave If a subroutine does not have a return statement, what is the return value of it?
22:30 dalek TT #1278 closed by darbelo++: remove MT19937 from stdlib
22:30 Whiteknight no return values
22:30 shockwave Whiteknight, so if one does: $P0 = foo()
22:31 shockwave one sec
22:31 dalek winxed: r411 | julian.notfound++ | trunk/examples/packfile.winxed:
22:31 dalek winxed: improve output format of packfile example
22:31 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=411
22:31 dukeleto mj41++ for giving me access to an 8 core/8gb ram machine to run parrot benchmarks on. you rock!
22:32 cotto_work nice
22:32 * cotto_work wishes he could do that with some of his work machines
22:32 nopaste "shockwave" at 76.119.137.239 pasted ".sub main :main $P0 = tmp() pr" (7 lines) at http://nopaste.snit.ch/19669
22:33 shockwave @Whiteknight: http://nopaste.snit.ch/19669
22:33 shockwave Are you sure it's not a null pmc?
22:33 chromatic Should be PMCNULL.
22:34 chromatic Not because the function returns anything, but because it returns nothing.
22:34 shockwave @chromatic, is that the same as: $P0 = new 'Null' ?
22:34 chromatic Basically.
22:34 shockwave Ok, I'll test for that (I'm creating some unit-tests for my compiler).
22:34 shockwave Thanks.
22:35 dalek parrot: r44127 | darbelo++ | trunk (7 files):
22:35 dalek parrot: Remove the deprecated MT19937 library. This module lives on github now.
22:35 dalek parrot: review: http://trac.parrot.org/parrot/changeset/44127/
22:41 pmichaud testing for null is usually   "isnull"
22:41 pmichaud $I0 = isnull $P0
22:42 pmichaud one can also get a null pmc via the 'null' opcode
22:42 shockwave pmichaud, yep, just finishing using the 'isnull' opcode.
22:42 pmichaud there's also the if_null and unless_null branching opcodes
22:42 shockwave Cool. That's good to know.
22:43 chromatic msg slavorg ops Austin_away
22:43 purl Message for slavorg stored.
22:43 chromatic msg slavorg help
22:43 purl Message for slavorg stored.
22:43 chromatic ahhh wrong bot
22:45 chromatic opbots: trust Austin_away
22:45 slavorg Ok
22:45 slavorgn But I don't trust you there, chromatic
22:45 chromatic opbots: trust fperrad
22:45 slavorg But I already trust fperrad
22:45 slavorgn But I don't trust you there, chromatic
22:45 darbelo opbots trust me
22:45 slavorg But I already trust me
22:45 slavorgn But I don't trust you there, darbelo
22:46 chromatic opbots: trust NotFound
22:46 slavorg But I already trust notfound
22:46 slavorgn But I don't trust you there, chromatic
22:46 chromatic opbots: trust plobsing
22:46 slavorg Ok
22:46 slavorgn But I don't trust you there, chromatic
22:46 chromatic Hm, some people it won't op.
22:46 NotFound Who trust the trusters?
22:47 darbelo opbot: trust NotFound
22:47 darbelo opbots: trust NotFound
22:47 slavorg But I already trust notfound
22:47 slavorgn But I don't trust you there, darbelo
22:51 joeri left #parrot
22:53 theory joined #parrot
22:58 dalek rakudo/master: 324f561 | jonathan++ |  (2 files):
22:58 dalek rakudo/master: Fix role introspection and turn S12-introspection/roles.t back on.
22:58 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/3​24f561332090e326c276d5efacec1d19010910d
23:00 payload joined #parrot
23:01 Whiteknight shockwave: (sorry for the delayed response): I would expect that snippet of code to throw an argument mismatch exception
23:02 shockwave Whiteknight, there isn't an argument mismatch.
23:02 Whiteknight and if error-checking is turned off, I don't know what to expect. I suppose it should be undefined and probably some garbage value that was in the register beforehand
23:03 Whiteknight shockwave: I don't see how not. You have one positional result but no positional returns
23:03 shockwave Whiteknight: What does it have to do with arguments?
23:04 shockwave Or are you using 'argument' in a different context?
23:04 shockwave Anyhow, the return value seems to be null.
23:04 Whiteknight shockwave: Parrot uses "continuation passing style" for it's control flow. Function calls and function returns use the same mechanism internally
23:04 theory joined #parrot
23:04 Whiteknight internally, both are invocations, and both pass arguments
23:05 shockwave I got half of that.
23:06 shockwave What is the default value of error-checking, or or off?
23:06 Whiteknight it's not a concept common in most other structural proramming languages
23:06 Whiteknight I *believe* the error-checking should be on by default
23:07 shockwave by 'error-checking' we mean that errors throw exceptions, rather than return funky data, correct?
23:08 Whiteknight shockwave, yes
23:08 Whiteknight you know any C?
23:08 shockwave Yes, I know C.
23:09 chromatic I think the error checking is still off by default.
23:09 Whiteknight chromatic: how does one turn it on?
23:11 shockwave It's such a good feeling when you see your compiler spit out half decent code.
23:11 NotFound shockwave: What language is?
23:11 purl rumour has it language is horrifyingly verbose
23:12 shockwave NotFound, my own: 'Ink'
23:12 * Whiteknight keeps trying to forget how much he hates this argument-passing code
23:13 Whiteknight part of me wants to calculate cyclomatic complexity here, part of me isn't interested in setting a personal best
23:13 shockwave lol
23:15 chromatic I hold out hope that swapping the order of the ops will let us simplify a lot of code.
23:15 Whiteknight chromatic: yes, I'm convinced it will
23:16 Whiteknight at the very least it will allow us to nuke either fill_params or fill_results
23:17 chromatic That, and we can store information we know at compile time so we're not forever recalculating it.
23:18 shockwave I'm all for the last thing chromatic mentioned.
23:18 shockwave I hear not recalculating stuff forever is good.
23:19 NotFound Is dalek asleep?
23:20 cotto_work He only wakes up every 5 or 10 minutes.
23:20 kthakore chromatic: hi
23:21 NotFound My last winxed commit was more than 15m ago.
23:21 kthakore How do I get parrot working on windows?
23:21 kthakore are there msi?
23:22 fperrad_ joined #parrot
23:22 shockwave kthakore, I'm working on Windows. I built it from source.
23:23 Tene http://sourceforge.net/projects/parrotwin32/files/
23:23 kthakore shockwave: oh I have some co workers looking into parrot
23:23 darbelo shockwave: strawberry perl or msvc ?
23:23 NotFound The packfileannotation PMC lacks a way to obtain the value type of an annotation. This way you can only dump annotations of well known types.
23:23 kthakore oh thanks Tene
23:24 shockwave strawberry
23:24 purl it has been said that strawberry is a Perl for Windows that works just like Perl everywhere else. See http://win32.perl.org/wiki/in​dex.php?title=Strawberry_Perl or well where is RAWBERRY
23:24 Whiteknight chromatic: here's a gem for you: "./parrot -w"
23:24 Whiteknight causes a segfault
23:24 kthakore darbelo: um on strawberry perl works with parrot?
23:24 cotto_work Whiteknight, it only makes parror complain about a missing program name for me.
23:24 NotFound $ ./parrot -w
23:24 NotFound Missing program name
23:24 NotFound parrot -[acEGhprtvVwy.] [-d [FLAGS]] [-D [FLAGS]][-O [level]] [-R runcore] [-o FILE] <file>
23:25 cotto_work yeah, that
23:25 purl Sure, that.
23:25 Whiteknight so then what the hell is wrong on my system?
23:25 cotto_work reconfig?
23:26 Whiteknight yeah, I guess I'll try that
23:26 NotFound Both in i386 and amd64
23:26 darbelo kthakore: I was asking which toolchain he was using to build parrot. We support strawberry perl (and included gcc) or activestate perl with msvc. But we don't have a lot of people testing with msvc.
23:26 dalek joined #parrot
23:26 kthakore oh ok
23:27 dalek TT #159 closed by whiteknight++: named class/pmc lookup in pir syntax such as new, isa, subclass, ...
23:29 PerlJam joined #parrot
23:29 dukeleto joined #parrot
23:29 Coke joined #parrot
23:29 dalek winxed: r412 | julian.notfound++ | trunk/examples/packfile.winxed:
23:29 dalek winxed: show fixup table and annotations in packfile example
23:29 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=412
23:29 pmichaud joined #parrot
23:31 NotFound Now I'm starting to have a useful packfile PMC test bed.
23:32 darbelo Infinoid: ping
23:39 Whiteknight cotto_work: yeah, a reconfig made that error go away, strangely
23:39 Whiteknight false alarm
23:41 plobsing darbelo: I'd like to hear any comments you might have about the tt362 branch
23:41 TonyC joined #parrot
23:42 darbelo plobsing: I'll check it out.
23:42 AndyA_ joined #parrot
23:43 Infinoid darbelo: pong
23:43 darbelo Infinoid: How long should it take dalek to notice a new module in the Modules section of the wiki ?
23:44 Infinoid darbelo: An hour or so.
23:44 AndyA_ joined #parrot
23:45 darbelo Hmm. Is there a way to check with dalek if a module got picked up?
23:45 Infinoid other than tailing its logfile, not really
23:45 Infinoid it's not the most interactive of bots.
23:45 darbelo I'm realizing that.
23:46 Infinoid and ... somehow, I'm unable to resolve feather's hostname in DNS
23:47 Infinoid Oh, feather appears to have died 10 minutes ago anyway.  I'll wait.
23:49 darbelo If it ever comes back, could you check if I did anything wrong with the digest-dynpmcs entry on the wiki and let me know ?
23:53 Infinoid I think it should be fine.  If it fails, that probably means the gitorious feed doesn't handle hyphens properly (that hasn't been tested yet)
23:53 PerlJam joined #parrot
23:54 darbelo Glad to provide a test-case ;)
23:54 dukeleto joined #parrot
23:54 pmichaud joined #parrot
23:54 dalek joined #parrot
23:54 darbelo I'm guessing feather's back ?
23:55 Infinoid darbelo: And it has your digest-dynpmcs project, too.  I think it may have tried to emit some karma messages to the nonexistent channel while it was disconnected
23:55 Infinoid so, darbelo++
23:56 Util joined #parrot
23:56 Infinoid Now go commit something :)
23:56 darbelo Infinoid: good to know.
23:56 dalek rakudo/master: 1940345 | jonathan++ | src/metamodel/ClassHOW.pir:
23:56 dalek rakudo/master: More introspection fixes, to start getting .^parents and .^attributes back into shape.
23:56 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/1​9403454d28f5a57840c5b31023fd4b2b0b88793
23:56 dalek rakudo/master: 5e7d64c | jonathan++ | src/core/Mu.pm:
23:56 dalek rakudo/master: Quick tweak that gets signature unpacking of objects working again.
23:56 dalek rakudo/master: review: http://github.com/rakudo/rakudo/commit/5​e7d64c24486c05d686509b71601d1e3bfe9597e
23:58 Coke joined #parrot

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

Parrot | source cross referenced