Camelia, the Perl 6 bug

IRC log for #parrot, 2010-07-02

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:01 Chandon Sweep runs shouldn't happen unless a mark run has happened, yes?
00:03 whiteknight yeah. it's stop-the-world
00:03 whiteknight mark+sweep happen together
00:03 whiteknight make sure in your VTABLE_mark routines you are marking all children
00:03 whiteknight I'll build it in a minute
00:04 ash__ joined #parrot
00:07 dalek partcl-nqp: 5d36f07 | Coke++ |  (2 files):
00:07 dalek partcl-nqp: t/cmd_expr.t can now run to completion.
00:07 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/5d36f07ee17749180edb771c39320919c8c2a3fe
00:12 cotto_work pmichaud: ping
00:15 darbelo cd
00:16 cotto_work git pull
00:17 Infinoid darbelo@magnet:#parrot $
00:17 Coke mikehh: I have a fix for the diag output. testing, will commit shortly.
00:21 tcurtis You know, it occurs to me now that there's no reason for Tree::Transformer to be a subclass of Tree::Walker.
00:21 * tcurtis will probably fix that later tonight.
00:22 Coke ugh. generating TAP is haaaard.
00:25 Coke a failed TODO test sends output to STDOUT. a failed test sends output to stderr.
00:25 Coke (using test;:more)
00:25 Coke (the perl version)
00:27 mikehh rakudo (3d2cb82) builds on parrot r47953 - make test PASS, spectest_smolder -> #34680 (pugs r31528) FAIL - Ubuntu 10.04 amd64 (gcc with --optimize)
00:27 mikehh t/spec/S32-num/rat.rakudo - Failed test:  798
00:27 mikehh 18 TODO PASSes in 4 files
00:36 dalek partcl-nqp: 6d8e6cb | Coke++ | lib/test_more.tcl:
00:36 dalek partcl-nqp: slight improvement to our TAP compliance
00:36 dalek partcl-nqp: from examining output of p5's Test::More, looks like failure output sometimes
00:36 dalek partcl-nqp: goes to stdout, sometimes to stderr.
00:36 dalek partcl-nqp: This at least keeps the run quiet for TODO tests.
00:36 dalek partcl-nqp: review: http://github.com/partcl/partcl-nqp/commit​/6d8e6cb313523372f814c70142375095054c62a9
00:38 cotto_work tcurtis: typo in the Tree::Walker docs: "This conveniently include PCT::Node"
00:40 tcurtis cotto_work: fix committed.
00:40 pmichaud cotto_work: pong
00:41 cotto_work pmichaud, I'm not sure if the current approach to string parsing is correct, namely for strings with an explicitly specified encoding and/or charset.
00:41 pmichaud cotto_work: in nqp?
00:42 cotto_work in PIRATE
00:42 cotto_work http://github.com/bacek/pir/blob​/master/src/PIR/Actions.pm#L838  http://github.com/bacek/pir/blob​/master/src/PIR/Grammar.pm#L483
00:42 cotto_work Will that code put the exact bytes from the file into the ByteBuffer?
00:43 pmichaud I don't know.  I suppose it would depend on the implementation of POST::String (which bacek++ wrote)
00:44 pmichaud in general, Parrot's storage of strings and handling of encoding specifiers has been a little confusing to me.
00:45 cotto_work POST::String is an eventual child of POST::Node with some extra methods.
00:45 cotto_work POST::Node -> Value -> Constant -> String
00:45 dalek parrot: r47955 | tcurtis++ | branches/gsoc_past_optimization/docs/user/library (3 files):
00:46 dalek parrot: Start updating docs by writing POD for Tree::Walker.
00:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47955/
00:46 dalek parrot: r47956 | tcurtis++ | branches/gsoc_past_optimization/d​ocs/user/library/Tree/Walker.pod:
00:46 dalek parrot: Fix copy-paste failure.
00:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47956/
00:46 dalek parrot: r47957 | tcurtis++ | branches/gsoc_past_optimization/d​ocs/user/library/Tree/Walker.pod:
00:46 dalek parrot: Fix typo. cotto++
00:46 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47957/
00:46 ash_ joined #parrot
00:46 cotto_work Do you know if there's a way to test that the current code dtrt?
00:48 mikehh partcl-nqp (6d8e6cb) - make ok, make test PASS - t/cmd_expr.t - TODO passed:   287 - Files=59, Tests=1196 - parrot at r47953 - Ubuntu 10.04 amd64 (gcc with --optimize)
00:48 darbelo Infinoid: ?
00:48 mikehh Coke: much cleaner output
00:48 Coke \o/
00:49 Coke |
00:49 Coke \
00:49 Coke ow, that looks painful.
00:49 pmichaud cotto_work: I would guess the way to check is to generate various strings and check the .pbc output.
00:50 cotto_work darbelo, any thoughts from you on this predicament?
00:50 cotto_work since you're doing some string hacking
00:51 whiteknight Chandon: I get a build error. Parrot_pmc_list_insert_by_number seems to have conflicting definitions
00:52 darbelo cotto_work: I'd have to see what the code does before saying it's wrong ;)
00:52 cotto_work Those links are a starting point.
00:52 cotto_work http://github.com/bacek/pir/blob​/master/src/PIR/Actions.pm#L838  http://github.com/bacek/pir/blob​/master/src/PIR/Grammar.pm#L483
00:53 Chandon whiteknight: With the latest SVN?
00:53 whiteknight Chandon: yeah
00:53 whiteknight lemme try again with gcc
00:54 darbelo cotto_work: Other than missing ucs4, that part looks fine :)
00:55 mikehh btw, my one major problem with git - how the heck do you work out what  (6d8e6cb) just looking at it - at least r47953 tells you where you are at
00:55 Chandon whiteknight: Is there some way to get headerizer to pull that declaration from the .pmc and put it in some useful place?
00:55 tcurtis cotto_work: by the way, why the particular interest in docs for my GSoC stuff? Interested in using it? Or just iwbni there were up-to-date docs?
00:55 whiteknight Chandon: let me look at the file
00:56 whiteknight okay, it builds with GCC
00:56 whiteknight I'll have to trac down why clang barfs
00:56 cotto_work I'm just looking at what you're doing with PIRATE and trying to make sure the bus number gets raised.
00:56 darbelo I'll look at it again after some sleeps.
00:56 cotto_work plus I love code that writes or modifies code
00:56 cotto_work unless it has too many parentheses
00:57 cotto_work darbelo: thanks
00:57 tcurtis cotto_work: I hate C macros, too!
00:57 tcurtis :P
00:57 pmichaud afk for a bit
00:57 whiteknight Chandon: I see that failure you are talking about. Most certainly a GC-related error
00:59 cotto_work msg cotto add ucs4 to the list of encodings in PIRATE
00:59 purl Message for cotto stored.
00:59 Chandon whiteknight: What did I get wrong? It looks like I mark the alarms list in the Scheduler mark() function, and if the Scheduler itself wasn't getting marked it should blow up way worse...
01:01 whiteknight Chandon: no idea. it all looks decent to me
01:01 Chandon good times
01:01 purl DON'T OPEN IT!  IT'LL CRASH AOL!
01:08 whiteknight Chandon: Were you getting this error before your last big commit?
01:08 whiteknight if not, you may want to back that commit out and start putting it back in chunk at a time
01:11 * whiteknight has to go do some packing
01:13 Chandon whiteknight: Derf. I'm guessing it's a bit older than that.
01:20 whiteknight Chandon: okay. chromatic wrote up a nice guide about debugging GC errors somewhere
01:20 whiteknight search through docs/ to see if anything pops up
01:21 whiteknight I'm signing off for the night. Talk to you later
01:21 Chandon Sounds like a plan. Good night.
01:21 whiteknight goodnight
01:41 Mokurai joined #parrot
02:13 Coke google for "parrot chromatic debug gc" is probably better.
02:13 Coke I think that dates back to his ORA days
02:13 cotto_work gc debugging?
02:14 cotto_work when you find the link, that'd be a good place to put it.
02:14 * cotto_work wonders who Coke was responding to
02:22 Chandon I found my bug. It looked like this: /* PObj_custom_mark_SET(SELF) */
02:25 Chandon I feel a little bit like I'm on the wrong end of this conversation: Is it plugged in? Yes? Is it turned on? Yes? Which wall outlet is it plugged into? What, it works now? You're welcome.
02:26 cotto_work That's really one of those things that pmc2c should be taking care of automatically.  If you have a custom mark VTABLE function, it doesn't make sense to avoid using it.
02:27 Chandon That's a reasonable argument.
02:28 cotto_work You're not the first to get bitten.
02:29 * cotto_work decommutes
02:36 kid51 chromatic on debugging GC problems in Parrot:  http://tinyurl.com/287ktuc
02:42 janus joined #parrot
02:44 dalek parrot: r47958 | tcurtis++ | branches/gsoc_past_optimization/do​cs/user/library/Tree/Pattern.pod:
02:44 dalek parrot: Add docs for Tree::Pattern.
02:44 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47958/
02:50 TiMBuS joined #parrot
03:05 cotto ~~
03:05 cotto Oh look.  A message.
03:09 dalek pir: 12f0853 | cotto++ | src/PIR/Grammar.pm:
03:09 dalek pir: add ucs4 as pointed out by darbelo++
03:09 dalek pir: review: http://github.com/bacek/pir/commit/12f​0853bb8329d24c4ff948dab68036ec6b8fab2
03:15 theory joined #parrot
03:38 eternaleye joined #parrot
03:40 LoganLK joined #parrot
04:05 tcurtis cotto: I added more docs for Tree::Pattern and Tree::Pattern::Match.
04:06 dalek parrot: r47959 | tcurtis++ | branches/gsoc_past_optimization​/docs/user/library/Tree/Pattern (2 files):
04:06 dalek parrot: Add POD for Tree::Pattern::Match.
04:06 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47959/
04:06 dalek parrot: r47960 | tcurtis++ | branches/gsoc_past_optimization/do​cs/user/library/Tree/Pattern.pod:
04:06 dalek parrot: Add Tree::Pattern::Match POD to the see also of the Tree::Pattern POD.
04:06 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47960/
04:06 sorear Chandon: ping
04:09 Chandon sorear: Hey.
04:15 sorear Chandon: the old PDD on events had lots of details on how to interrupt running ops from a signal handler
04:15 sorear it's a lot simpler now since the cgoto cores are gone; basically you just need to (save and) overwrite the current op dispatch table with a bunch of pointers to your yield op
04:18 Chandon sorear: That's an amusing solution, but couldn't that end up being a pretty big table?
04:20 sorear Er... it's a pretty big table that has to exist regarless
04:20 sorear and it's only about 10kb anyway
04:21 davidfetter left #parrot
04:27 Chandon I should probably benchmark that against the current :check_events scheme. I really have no idea which way would be faster.
04:27 cotto tcurtis, an overview document would be nice too to show how everything fits together
04:30 cotto but what you're written is helpful
04:30 cotto thanks
04:42 tcurtis cotto: I'll write some more of the API-reference style docs first, but I'll add that to my todo list.
04:56 cotto btw. it's pretty cool to have someone fresh out of high school hacking awesome stuff into Parrot.
04:57 tcurtis It's pretty cool to be hacking on awesome stuff like Parrot fresh out of high school.
05:19 fperrad joined #parrot
06:02 Mokurai left #parrot
06:05 uniejo joined #parrot
06:05 jan joined #parrot
06:37 theory joined #parrot
06:53 tcurtis joined #parrot
08:12 dalek parrot: r47961 | tcurtis++ | branches/gsoc_past_optimization/runt​ime/parrot/library/PCT/Pattern.nqp:
08:12 dalek parrot: Fix a bug in the .subst method. Which clearly is not seeing much use.
08:12 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47961/
09:37 lucian joined #parrot
10:36 cosimo joined #parrot
10:39 ruoso joined #parrot
10:50 bkuhn joined #parrot
11:28 clinton joined #parrot
11:39 kid51 joined #parrot
11:44 cygx joined #parrot
11:52 khairul joined #parrot
12:50 ambs joined #parrot
13:10 arnsholt PDD 27 claims that PAST::Var should have an attribute parameter, but when I say PAST::Var.new(:parameter) it claims that there is no such method
13:10 arnsholt Am I doing it wrong?
13:11 jnthn yes, UR DOIN IT RONG.
13:11 jnthn :scope('parameter')
13:11 arnsholt D'oh. Of course
13:11 arnsholt Docs. Doin it rong ^^
13:14 ttbot joined #parrot
13:20 Coke those docs could use a touch of care, though..
13:27 plobsing joined #parrot
13:58 Mokurai joined #parrot
14:01 bubaflub joined #parrot
14:01 JimmyZ joined #parrot
14:08 Coke TAP rant - no easy way to map test numbers in final output to the actual test.
14:14 dalek parrot: r47962 | gerd++ | trunk (2 files):
14:14 dalek parrot: according to TT #1699 add the checksum file generation
14:14 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47962/
14:15 ash_ joined #parrot
14:16 patspam joined #parrot
14:28 clinton joined #parrot
14:36 theory joined #parrot
15:35 patspam joined #parrot
15:35 eternaleye joined #parrot
15:39 gbacon joined #parrot
16:03 Chandon What's this assertion failure trying to tell me? ./src/pmc/imageio.pmc:266: failed assertion 'id - 1 == VTABLE_elements(interp, PARROT_IMAGEIO(info)->todo)'
16:16 jan joined #parrot
16:37 Andy joined #parrot
16:42 dalek parrot: r47963 | khairul++ | branches/gsoc_instrument (5 files):
16:42 dalek parrot: Added tests for InstrumentGC.
16:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47963/
16:43 cotto_work ~~
17:12 tcurtis joined #parrot
18:01 bubaflub joined #parrot
18:20 dalek parrot: r47964 | tcurtis++ | branches/gsoc_past_optimiza​tion/docs/user/library/PCT (2 files):
18:20 dalek parrot: Add POD for PCT::Pattern.
18:20 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47964/
18:20 dalek parrot: r47965 | tcurtis++ | branches/gsoc_past_optimization/d​ocs/user/library/PCT/Pattern.pod:
18:20 dalek parrot: Add SYNOPSIS for PCT::Pattern POD.
18:20 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47965/
18:23 cotto_work Yay for documentation~\
18:23 cotto_work !
18:43 cotto_work msg cotto Don't forget to update your ... patch to use !!! and to use its arguments, if any.
18:43 purl Message for cotto stored.
18:59 gbacon joined #parrot
19:35 patspam joined #parrot
20:15 shockwave joined #parrot
20:15 shockwave purl paste
20:15 purl paste is, like, (see: nopaste) or like glue but a little safer to sniff. or http://nopaste.snit.ch:8001/ or http://scsys.co.uk:8001/ anywhere shadowpaste is or mmm, sticky paste or You there! Eating the paste. or <see> 2 girls, 1 paste or App::Nopaste or toxic for bots and humans
20:17 nopaste "shockwave" at 192.168.1.3 pasted "Index of array question." (7 lines) at http://nopaste.snit.ch/21774
20:17 shockwave Hi.
20:18 shockwave Is there some flag to cause Parrot to throw an exception when the above happens. Namely, setting the index of an array out-of-bounds.
20:18 shockwave Except maybe, just one value passed the length of the array, and hence adding a new value to the array.
20:18 ash_ so... you want a fixed size array
20:18 ash_ ?
20:18 shockwave No.
20:19 shockwave But, in the snippet I posted I'm setting the index 5. That array is empty.
20:19 shockwave So that should be no good.
20:19 shockwave I'm guessing that internally the array is really an ordered map?
20:19 jsut_ joined #parrot
20:20 particle it's resizable, why should it be no good to assign past the end? it seems to be documented that way
20:20 ash_ shockwave: internally its an array, it just resizes to fit the index
20:21 shockwave particle. I would understand one element. But 6 elements passed the end? That makes no sense.
20:21 particle shockwave: have you used perl before?
20:21 particle this behaves just like a perl array would in this situation
20:21 shockwave ash_, so you're saying that setting index 5 also sets all the values of the indexs before that?
20:21 ash_ shockwave: it fills the space with Undef's actually
20:21 ash_ yup
20:21 shockwave particle: no, I've never used Perl.
20:22 particle aha.
20:22 ash_ 0, 1, 2, 3, 4 all have Undef in them
20:22 shockwave ash_: Oh, I see.
20:22 ash_ in your example
20:22 purl it has been said that in your example is $line and $blah same thing?
20:22 ash_ if you access an element that is out of bounds it also returns Undef
20:22 particle purl, forget in your example
20:22 purl particle: I forgot in your example
20:22 ash_ but in your case, it resized the array to be 6 elements long when you assigned $P0[5] =  $S0
20:23 shockwave ash_: I see. That means that some runtime checking will need to be performed to throw exceptions, if that's what one wants.
20:23 shockwave ash_: Thanks for the answer.
20:23 shockwave ash_: I'm clear on the behavior, now.
20:23 particle you can write your own pmc that behaves how you want
20:23 shockwave Thank you too, particle
20:24 particle derived from rpa, if you want
20:24 shockwave particle: I haven't written my own PMC, yet. But, I'm guessing that in the near future, I will be doing that just.
20:24 shockwave (I'm assuming you mean in C, right)
20:24 particle i'm guessing the same thing :)
20:24 particle you can write pmcs in c, yes, or in pir
20:25 shockwave particle: By pir do you mean as in creating a class and derriving from, say, the array class?
20:26 particle i'd derive from resizablepmcarray (rpa), yes
20:26 shockwave particle: Oh, yeah. My current array and map classes do just that.
20:26 shockwave Actually, I take that back.
20:27 shockwave They derrive from some other object, and have a RPA and other members to do their bidding.
20:27 shockwave Someday, those classes will probably PMCs written in C.
20:27 particle you'll probably want to override set_keyed_int, to raise an exception if the length is extended by more than one
20:27 ash_ shockwave: if you call $I0 = elements $P0 after your assignment you can see how much space is allocated
20:27 ash_ (it should say 6)
20:27 particle yes, it's not difficult to translate the pir classes into c
20:28 shockwave particle: Yeah, I've seen a few of the PMC's templates. They don't seem too scary.
20:29 shockwave I'm trying to hold on, though. I really need to get this compiler out the door, and that's probably something that will come in version 2.
20:29 shockwave ash_, good idea.
20:29 particle sure, keep it simple
20:29 shockwave Again, thanks both.
20:32 shockwave left #parrot
20:46 Coke (you could also do this via an object instead of a pmc.)
20:46 LoganLK joined #parrot
20:47 Chandon So I add a .pmc and t/pmc/packfile.t starts failing. What all do I need to do to make that work?
20:48 bacek Chandon, read this file :)
20:48 bacek Good morning, humans
20:49 Chandon Apparently PBC_COMPAT is a thing. Neat.
20:51 ash_ anyone know why the gcc would complain that my switch statement doesn't have a default case when it does?
20:53 Chandon It's not seeing it for some reason? Maybe you did "#define default 5" earlier in the file...
20:54 ash_ Chandon: http://github.com/ashgti/parrot/b​lob/gsoc_nci/src/pmc/nci.pmc#L324 is the switch the default case is the last case
20:56 bacek defualt != default
20:56 ash_ ...
20:56 ash_ i r spake gud
20:57 Chandon Also #if (DOUBEL_SIZE > 8) /* FLOATVAL is a long double */
20:58 ash_ yeah, i fixed that, i haven't commited it yet
21:02 joeri joined #parrot
21:16 sorear protip: use a syntax highlighting editor
21:16 sorear this will catch misspelled keywords
21:18 ash_ vim syntax highlighting fails me :-(
21:21 dalek parrot: r47966 | Chandon++ | branches/gsoc_threads (8 files):
21:21 dalek parrot: [gsoc_threads] Fix some failing tests.
21:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47966/
21:31 dalek rakudo: 4715825 | jonathan++ | src/builtins/List.pir:
21:31 dalek rakudo: Support get_pmc_keyed_int in List so we can has interop with Perl 6 arrays and
21:31 dalek rakudo: NQP code.
21:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​715825564cb2ba9be5358740e6f166e2a4d8227
21:31 dalek rakudo: ac5e926 | jonathan++ | src/core/traits.pm:
21:31 dalek rakudo: Implement trait_mod:<is> for rw on packages. Not checked for yet.
21:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​c5e92627599694d16e8620499ffc78a536db338
21:31 dalek rakudo: 085fac8 | jonathan++ | src/builtins/List.pir:
21:31 dalek rakudo: Remove a fossil.
21:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​85fac814e66b6a20649039515177e512c05c2af
21:31 dalek rakudo: dbde7cf | jonathan++ | src/metamodel/ClassHOW.pir:
21:31 dalek rakudo: Under-construction class type objects should at least be able to say they're
21:31 dalek rakudo: undefined.
21:31 purl undefined is false, but so are some defined values
21:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​bde7cfb23a7414c6774d117eb776f20ce6454d7
21:31 dalek rakudo: 7dbad1c | jonathan++ | src/Perl6/ (3 files):
21:31 dalek rakudo: Do not assume that lack of is rw on an attribute means no accessor, and
21:31 dalek rakudo: implement is readonly which always means that. This means we know when nothing
21:31 dalek rakudo: is specified, and to look to any provided default. Also, a little re-ordering of
21:31 dalek rakudo: metaclass code gen.
21:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​dbad1c77b6d619e6f571f04b024c34d6bca016f
21:31 dalek rakudo: fdf7bb9 | jonathan++ | src/metamodel/Attribute.nqp:
21:31 dalek rakudo: If the attribute doesn't explicitly have rw or readonly specified, fall back and
21:31 dalek rakudo: ask the package if it has an interesting default.
21:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​df7bb948f83871029e41917de81fbed58738d4d
21:31 dalek rakudo: f9e5226 | jonathan++ | src/metamodel/Attribute.nqp:
21:31 dalek rakudo: Unbreak attribute introspection for .rw.
21:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​9e5226f9cdfde5400578c8b5748c572b53dc8cb
21:31 dalek rakudo: 7017d2b | jonathan++ | t/spectest.data:
21:31 dalek rakudo: Turn on S12-class/rw.t.
21:31 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​017d2b9ac93e14a5d9af88671563caa4b48cee7
21:34 tcurtis moritz: have nearly two days really passed without you finding any new bugs in my code? :)
21:50 Psyche^ joined #parrot
21:52 dalek pir: fb1e994 | bacek++ | src/POST/Compiler.pm:
21:52 dalek pir: Store generated Subs in proper namespaces
21:53 dalek pir: review: http://github.com/bacek/pir/commit/fb1​e99401517a268150c61fcd0eab3b2caa813e1
21:53 dalek pir: bba512d | bacek++ | src/PIR/Actions.pm:
21:53 dalek pir: Revert to lookup main sub by name.
21:53 dalek pir: review: http://github.com/bacek/pir/commit/bba​512dee0ef1d463e007554f9db7bfa0abb856b
21:53 dalek pir: 4163f7a | bacek++ | src/POST/ (2 files):
21:53 dalek pir: Factor out POST::Key.to_pmc method
21:53 dalek pir: review: http://github.com/bacek/pir/commit/416​3f7a16c39b74a3f0e3938071ec56a0d3f2a19
21:53 dalek pir: c16f19d | bacek++ | t/pbc/call.txt:
21:53 dalek pir: Add (failing) test for proper constant Sub handling.
21:53 dalek pir: review: http://github.com/bacek/pir/commit/c16​f19d8900f54358524cae745b2259ef055e16e
21:53 bacek hmmm... dalek reported commits in revert order...
21:55 sorear would you have preferred a topological sort?
21:56 integral joined #parrot
21:56 bacek straight forward timeline will be good enough :)
22:10 somebody_ joined #parrot
22:10 dalek parrot: r47967 | tcurtis++ | branches/gsoc_past_optimization/docs​/user/library/Tree/Pattern/Any.pod:
22:10 dalek parrot: Add POD for Tree::Pattern::Any.
22:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47967/
22:15 somebody__ joined #parrot
22:40 somebody_ joined #parrot
22:47 tcurtis Someone really should update docs.parrot.org.
22:48 tcurtis I don't know who has the ability to do that or I'd suggest they do so specifically.
22:49 darbelo tcurtis: That's would be the last realease manager, or Coke.
22:50 darbelo I think I had to let Coke do it when I did a release, but might be misremembering.
22:51 tcurtis Coke: ping
22:52 tcurtis thanks, darbelo.
22:52 tcurtis bacek: ping
23:02 GodFather joined #parrot
23:04 somebody__ joined #parrot
23:06 bacek tcurtis, pong
23:09 tcurtis bacek: do dynops need to be constant folded? How does IMCC determine which ops to fold? Is the big fat manually maintained list in IMCC_subst_constants it?
23:10 GodFather joined #parrot
23:10 bacek tcurtis, let me check. I'm not familiar with imcc
23:10 tcurtis Related question, how can I load the necessary dynops in NQP, if so?
23:11 bacek (imcc) looks like you are right about imcc approach.
23:11 bacek I think we can safely ignore dynops in pirate.
23:11 tcurtis Even the ones that IMCC appears to fold?
23:11 bacek Just because we can't enforce any semantics.
23:12 bacek Yes. I suspect this list wasn't updated after recent reshuffling of ops.
23:12 bacek (nqp) There is no way to load dynops in nqp, afaik
23:16 tcurtis Is .loadlib only valid outside of a .sub?
23:16 bacek yes
23:17 tcurtis Alright.
23:17 dalek joined #parrot
23:20 PerlJam joined #parrot
23:21 dukeleto joined #parrot
23:21 pmichaud joined #parrot
23:21 Util joined #parrot
23:23 dalek pir: f42d77a | bacek++ | src/POST/Sub.pm:
23:23 dalek pir: Return 0 for unspecified boolean modifier from POST::Sub.
23:23 dalek pir: review: http://github.com/bacek/pir/commit/f42​d77a2288e87646906fad6202e446004148754
23:23 dalek pir: 77f8e01 | bacek++ | src/POST/Compiler.pm:
23:23 dalek pir: Add more stuff into generated Sub PMC.
23:23 dalek pir: review: http://github.com/bacek/pir/commit/77f​8e01846bf3517515bf3ca1746554cc2b5abdc
23:23 dalek pir: a296e40 | bacek++ | src/POST/Sub.pm:
23:23 dalek pir: Fix POST::Sub.nsentry accessor.
23:23 dalek pir: review: http://github.com/bacek/pir/commit/a29​6e4015c5ea2a0d2e32242a3cd94b02f8c5783
23:25 tcurtis msg plobsing In IMCC_subst_constants http://trac.parrot.org/parrot/browser/​trunk/compilers/imcc/optimizer.c#L884 , several dynops are constant-folded. How does this work? Is it safe to do that? Does a lot of old PIR rely on constant-folded versions of the relevant dynops?
23:25 purl Message for plobsing stored.
23:27 tcurtis bacek, I'm msging plobsing about IMCC constant-folding dynops(since it does appear to cause certain PIR programs to work under IMCC but not with PIRATE).
23:27 ash_ http://trac.parrot.org/parrot/browser/​trunk/compilers/imcc/optimizer.c#L926 wow, imcc won't allow NUM's to be floats, they have to be doubles?
23:27 * tcurtis has a suspicion that the constant folding in IMCC might not actually even use the actual op.
23:27 ash_ (or long doubles)
23:28 dalek pir: a83f574 | bacek++ | src/POST/Compiler.pm:
23:28 dalek pir: Add workaround for old POST::Sub.subid behaviour.
23:28 dalek pir: review: http://github.com/bacek/pir/commit/a83​f574e344b34ea87c1e744922ae825ed064948
23:29 bacek tcurtis, it doesn't...
23:30 bacek tcurtis, do you have examples of dynops which doesn't work with pirate?
23:33 nopaste "tcurtis" at 192.168.1.3 pasted "bacek, here's an example of PIR code that runs under IMCC but doesn't under PIRATE unless we constant-fold some dynops" (23 lines) at http://nopaste.snit.ch/21784
23:33 bacek tcurtis, .loadlib NYI in PIRATE.
23:33 tcurtis Oh.
23:35 tcurtis Nevermind. It looks like there are constant variants of cmod and such.
23:37 somebody_ joined #parrot
23:38 dalek parrot: r47968 | Chandon++ | branches/gsoc_threads/src/pmc/timer.pmc:
23:38 dalek parrot: [gsoc_threads] Now with working Timers.
23:38 dalek parrot: review: http://trac.parrot.org/parrot/changeset/47968/
23:48 ash_ --m=32 doesn't seem to work on OS X...
23:48 ash_ (perl Configure.pl option)
23:48 somebody__ joined #parrot
23:51 bacek tcurtis, .loadlib is partially implemented now :)
23:51 dalek pir: 105a3d3 | bacek++ | src/PIR/Actions.pm:
23:51 dalek pir: Partially implement .loadlib handling.
23:51 dalek pir: review: http://github.com/bacek/pir/commit/105​a3d306066ce0c4412579350294e8ea3f521c2
23:54 Psyche^ joined #parrot
23:56 somebody_ joined #parrot

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

Parrot | source cross referenced