|
Parrot 2.5.0 Released! | parrot.org | Log: irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | GSOC Students: trac.parrot.org/parrot/wiki/GSoCersStartHere | Priorities: merge gc_massacre, remove deprecated items, add deprecation notices for 2.6, close tickets. Set by moderator on 25 June 2010. |
|||
|
00:02
kid51 joined
00:05
shockwave joined
|
|||
| shockwave | Hi. How many bits is a Parrot (pir) int? | 00:06 | |
| bacek | shockwave, system dependant... | 00:07 | |
| it's typedef for long | |||
| (At least on my box) | |||
| kid51 | see, perhaps, config/auto/sizes.pm | ||
| darbelo | It can be set at Configure time. So, as many as you want it to be? | 00:08 | |
| dalek | r: eb565e5 | bacek++ | (2 files): Implement .tailcall PBC generating |
||
| tcurtis | I believe there has been some speculation that disparities between the size of INTVAL and the size of pointers may cause problems for Parrot. I don't recall whether that turned out to actually be the case, though. | 00:09 | |
| darbelo | Some code in parrot code probably assumes that INTVALs are big enough to hold a pointer. | 00:11 | |
| That can cause all sorts of breakage if you make your intvals too small. | |||
| tcurtis | So, as many as you want it to be, but not as few as you want it to be, necessarily. | 00:12 | |
| shockwave | I looked at config/auto/sizes.pm, but it's too much for me. | ||
| I think on my box they're 32 bits. | |||
| darbelo | On a 32bit box, that's the most likely option. | 00:13 | |
| shockwave | I'm on a 64bit box, though. | ||
| When I do: | |||
| $I10000001 = 9999999999 | |||
| $I50000001 = add $I10000001, 1 | |||
| I get: | |||
| darbelo | You should grep config_lib.pir for intvalsize if you want to make sure. | ||
| shockwave | -2147483647 | 00:14 | |
| purl | -2147483647 | ||
|
00:14
japhb joined
|
|||
| darbelo | Or query it from PIR, if you need that information in your programs. | 00:14 | |
| On OpenBSD amd64, I have set $P0["intvalsize"], "8" | |||
| shockwave | I'm on Windows 7, 64bits. | 00:15 | |
| But, 32bits should be ok for me. | |||
| I just wanted to know about limits and things. | |||
| (It doesn't seem to overflow) | 00:16 | ||
| oh | |||
| Duh, it does. | |||
| darbelo | shockwave: gcc or msvc? | ||
| shockwave | msvc | ||
| add 9999999999, 1 == -2147483647 | 00:17 | ||
| That's overflow | |||
| I suck. | |||
| darbelo | Are you sure it's not compiling a 32-bit executable? Parrot trusts the settings of the perl used to run Configure.pl | ||
| If you run a 32-bit perl you'll end up with a 32-bit parrot. | 00:18 | ||
| tcurtis | shockwave: look in include/parrot/config.h for typedef SOMETHING Parrot_Int; | ||
| shockwave: INTVAL is a typedef for Parrot_Int, so that'll tell you what your build of Parrot has for INTVAl. | 00:20 | ||
| darbelo | You can also check the "iv" value in config_lib.pir for that. | ||
| On my box it looks like set $P0["iv"], "long" | 00:21 | ||
| tcurtis couldn't remember where to look to see the value for the "iv" and went to the header. | |||
| shockwave | darbello: Oh, that makes sense. | ||
| I do have a 32bit perl. | |||
| I couldn't get the 64bit version working on my PC for some reason. | |||
| So I just say, 'fuck it, I'll use the 32bit version". | 00:22 | ||
| s/say/said | |||
| darbelo | shockwave: To be fair, you are probably bettor off like that ;) We don't have any 64-bit windows testers. | ||
| shockwave | :) | ||
| I'll live with the 32bit version. | |||
| darbelo | I think whiteknight once managed to build and test parrot for 64 bit windows, but it involved some Configure overrides to get it working. | 00:23 | |
| tcurtis will be a 64-bit Windows tester if he ever gets around to doing any coding on his Windows install. | 00:24 | ||
| darbelo | Hah! Found the enty in PLATFORMS | ||
| shockwave | I'll get acquainted of how parrot treats overflow when setting ints, add, etc. That's what I'm mostly concerned with. In the future (like next year), I'll pay around with the 64bit version. | ||
| darbelo | win64-amd64-msvc_9.0 8 N N ? ? Y*1 N ? 20090720 | ||
| Remarks: | |||
| *1 64-bit MSVC uses 32-bit int and long values. For 64-bit use --ccflags="-GS- -MD" --intval="long long" --opcode="long long" | |||
| shockwave | As always, thanks guys. | 00:25 | |
| tcurtis | Of course, I'm unlikely to do that until I can convince the Boot Camp driver disk that came with my computer that yes, my model of macbook is new enough for Boot Camp, as opposed to Apple having include the disk as a free frisbee. | 00:27 | |
| shockwave: We're always glad to be helpful. | 00:28 | ||
| s/include/included/ | |||
| darbelo wonders where his collection of old AOL frisbees ended up... | 00:30 | ||
| dalek | r: 7201b8c | bacek++ | src/POST/Compiler.pm: Replace pir::die with self.panic. Fix methodcalls with no args. |
00:31 | |
| tcurtis | bacek, I've gotten all the binary math ones constant-folded. I suppose I'll go ahead and fold the unary math ops before working on bitwise ops. | 00:47 | |
| bacek | tcurtis++ # Hooray! | 00:52 | |
| mikehh | pir/PIRATE (7201b8c) - build ok / test PASS - parrot at r47953 - Ubuntu 10.04 amd64 (gcc with --optimize) | 00:54 | |
| dalek | rrot: r47969 | Chandon++ | branches/gsoc_threads/src (2 files): [gsoc_threads] Remove dead timers code from the scheduler. |
01:00 | |
|
01:29
dalek left,
dalek joined
01:47
plobsing joined
|
|||
| dalek | rtcl-nqp: 7f26a12 | Coke++ | (3 files): both t/*_namespace.t test run to completion. |
01:51 | |
| rtcl-nqp: 5a4ae42 | Coke++ | (2 files): avoid TAP parser errors in cmd_proc. |
|||
| rtcl-nqp: 17d6439 | Coke++ | build/Makefile.in: no need to special case test files anymore. |
|||
|
01:59
eternaleye joined
|
|||
| Coke | tcurtis: pong | 02:35 | |
|
02:35
janus joined
|
|||
| tcurtis | Coke: can you update the docs at docs.parrot.org? They're rather out of date. Or are they only updated on supported releases? | 02:37 | |
| Coke | the release manager needs to do it. | 02:38 | |
| which is what I said the last time someone asked. =-) | |||
| also, as a backup, allison & particle (at least) also have privs. | 02:39 | ||
| ... but since it's been weeks, yah, I'll do it. | |||
| tcurtis | Coke++, thanks. I keep going to docs.parrot.org/parrot/latest/html/ops.html and forgetting about the ops that have been moved to dynops. | 02:42 | |
| Coke | you can 'make html' locally, btw. | 02:48 | |
| tcurtis | I do when I remember that docs.parrot.org isn't up-to-date. | 02:51 | |
| dalek | TT #1700 created by bacek++: OpLib caching doesn't survive after initializing of parrot trace. | 02:55 | |
| TT #1700: trac.parrot.org/parrot/ticket/1700 | |||
| Coke | docs.parrot.org/parrot/latest/html/? is now up to date. | 02:56 | |
| (sans ? will update after the cache expires.) | |||
|
02:57
TiMBuS joined
03:23
bacek_mobile joined
|
|||
| bacek_mobile | Coke, can you create ticket about outdated ops2c documentation link? | 03:24 | |
|
04:22
shockwave joined
04:23
shockwave left
05:58
jsut joined
|
|||
| tcurtis | Yay! No more arithmetic ops left unfolded! | 07:05 | |
| plobsing | tcurtis: how are you handling the folding of ops that may throw exceptions? | 07:39 | |
| tcurtis | plobsing: ....I'm not, yet. | 07:40 | |
| plobsing | example: div | ||
| tcurtis | s/No more arithmetic ops left unfolded!/No more arithmetic ops left unfolded! But PIRATE may die if you try to divide by zero..../ | 07:41 | |
| plobsing: How does IMCC handle it? | |||
| plobsing | it unfolds it | ||
| in otherwords it becomes (set $temp, $const1; div $const2, $temp) | 07:42 | ||
| I'd actually be tempted to say thats the better option unless optimization is enabled. POLS. | |||
| tcurtis | POLS? | 07:43 | |
| purl | POLS is, like, Principle of Least Surprise | ||
| plobsing | you asked for a div op? you get a div op. | ||
| tcurtis: regarding your previous question about IMCC and dynop folding... either the dynop is loaded and it is safe, or it isn't and it will raise an error that propagates outwards to become a parse error. | 07:48 | ||
| but, bigger picture, the list of ops that can be constant folded is hardcoded ATM. I'd like to see that become a flag on the ops. | 07:50 | ||
| ideally we would have no hardcoded lists of ops for anything | |||
| tcurtis is trying to decide whether he should rewrite the way .transform works so that returning multiple nodes to replace the one works(even though that wouldn't make sense for most kinds of nodes), or to simply return an array or something and run a final pass at the end that does the appropriate thing(especially since when transforming PAST, this problem doesn't really come up). | |||
| dalek | rrot: r47970 | plobsing++ | branches/dynop_mapping/src (2 files): eliminate creation of duplicate debug statements in pbc_merge |
07:51 | |
| tcurtis | plobsing: well, I was more concerned about if you loaded a different dynop with the same name. But then again, IMCC knows at compile time what dynoplibs will be loaded anyway, so it's not really a problem, I suppose. | ||
| plobsing | if you name a different dynop the same name but different semantics as a core-lib dynop, you're asking for it | 07:52 | |
| tcurtis | True enough. | 08:02 | |
|
09:09
lucian joined
09:51
fperrad joined
|
|||
| bacek | aloha, humans | 10:50 | |
| msg tcurtis Good work! We do need ability to handle list of nodes from transform function. E.g. "if const, label" can return any("goto label", ()). add_i_n should be rewritten as "$Ntmp = $1; add_n_n $Ntmp, $2", etc, etc. It's just another generalization :) | 10:53 | ||
| purl | Message for tcurtis stored. | ||
| bacek | msg tcurtis We can disable folding of div/mod ops. There is div_i_ic_ic version (same for mod and numval versions) | 10:54 | |
| purl | Message for tcurtis stored. | ||
|
11:22
lucian_ joined
11:39
mmcleric joined
12:06
khairul joined
12:13
kid51 joined
12:15
clinton joined
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#34700), fulltest) at r47970 - Ubuntu 10.04 amd64 (g++ with --optimize) | 12:33 | |
|
12:38
ambs joined
|
|||
| mikehh | pir/PIRATE (7201b8c) - build ok / test PASS - parrot at r47970 - Ubuntu 10.04 amd64 (g++ with --optimize) | 12:39 | |
| dalek | r: 69b85d3 | bacek++ | t/ (2 files): Start adding (failing) tests for Sub modifiers |
12:40 | |
| r: 5d3e1f3 | bacek++ | src/POST/Sub.pm: Rename POST::Sub.init into .is_init to avoid conflict with PCT::Node.init. |
|||
| r: 4c9ddc9 | bacek++ | src/PIR/Actions.pm: Change logic of :main sub selection to more grokable. |
|||
| purl | dalek: that doesn't look right | ||
| r: 8eb00b1 | bacek++ | (2 files): Set Subs flags. Requires parrot 47950+ |
|||
| bacek | mikehh, you tested "ancient" pirate :) | 12:41 | |
| mikehh | bacek: yeah - I tried a checkout on post-optimizations - what do I need to do | 12:46 | |
| dalek | rrot: r47971 | khairul++ | branches/gsoc_instrument (3 files): Added test for Instrument::EventDispatcher |
12:47 | |
| bacek | mikehh, I think parrot's gsoc_optimizations branch. | ||
| speaking of which... | |||
| purl | well, speaking of which... is there a date set yet? | ||
| mikehh | bacek: will look at that, meanwhile will test your up-to-date bit :-} | 12:48 | |
| bacek | msg chromatic I would like tcurtis branch merged into trunk sooner than later. It's required for pirate. Or we can move it into separate repo and use as external project. | 12:49 | |
| purl | Message for chromatic stored. | ||
| bacek | msg tcurtis I asked chromatic about "I would like tcurtis branch merged into trunk sooner than later. It's required for pirate. Or we can move it into separate repo and use as external project." | 12:50 | |
| purl | Message for tcurtis stored. | ||
|
12:51
pmichaud joined
|
|||
| bacek | pmichaud, aloha | 12:52 | |
| pmichaud | bacek: aloha | 12:53 | |
| mikehh | bacek: getting some test failures now :-{ | ||
| bacek | pmichaud, can you convert github/parrot to "organization"? | ||
| mikehh, erm... Let me re-check local version. | |||
| pmichaud | bacek: will do sometime soon, yes. I want to read more about it :) | 12:54 | |
| bacek | pmichaud, fair enough :) | ||
| mikehh, t/02-post? | |||
| mikehh | bacek: yeah | 12:55 | |
| bacek | mikehh, sigh... String comparison of POST is way too fragile... | 12:57 | |
|
12:57
hanekomu_9 joined
|
|||
| bacek | msg tcurtis I've got (crazy) idea - use your Tree::Pattern to test PIRATE's POST/Parse trees instead of string comparison. Is it doable? | 12:58 | |
| purl | Message for tcurtis stored. | ||
| hanekomu_9 | ".local string", assigning to it, then declaring the same var as .const produces a bus error. gist.github.com/462553 - is this a known issue? | 13:00 | |
| not assigning to the .local string doesn't produce an error | |||
| bacek | hanekomu_9, ouch. Can you create ticket for it? | 13:04 | |
| purl, trac? | |||
| purl | trac is a web-based software project management and bug/issue tracking system emphasizing ease of use and low ceremony. It provides an interface to the Subversion revision control systems, integrated Wiki and convenient report facilities. projects.edgewall.com/trac/ or Python, SQLite and ClearSilver or killing killtrac or a bug-tracking tool or at trac.parrot.org/parrot/ or slow or REALLY slow | ||
| bacek | trac.parrot.org/parrot/ | 13:05 | |
| purl | i guess trac.parrot.org/parrot/ is back on line. | ||
| hanekomu_9 | done: trac.parrot.org/parrot/ticket/1701 | 13:09 | |
| but | |||
| dalek | r: e8a6652 | bacek++ | t/post/ (5 files): Fix POST test failures. mikehh++ |
||
| hanekomu_9 | the formatting is off | ||
| bacek | hanekomu_9++ # thanks! | 13:10 | |
| I fixed formatting. | |||
| hanekomu_9 | thanks | 13:11 | |
| mikehh | bacek: ok that works | 13:13 | |
| pir/PIRATE (e8a6652) - build ok / test PASS - parrot at r47970 - Ubuntu 10.04 amd64 (g++ with --optimize) | 13:14 | ||
| dalek | TT #1701 created by hanekomu++: .const string of a .local string that's been assigned to -> bus error | 13:20 | |
| TT #1701: trac.parrot.org/parrot/ticket/1701 | |||
| bacek | msg fperrad Can you bring some light on how to build dynops with distutils? | 13:25 | |
| purl | Message for fperrad stored. | ||
| dalek | rrot: r47972 | jonathan++ | trunk/runtime/parrot/library/P6object.pir: [p6object] Fix a bug so that Foo.HOW.WHAT returns the proto-object for the metaclass as it should, not Foo. |
13:37 | |
| fperrad | ping bacek | 13:51 | |
| bacek | fperrad, pong | ||
| fperrad | bacek, as example for dynops, see github.com/fperrad/wmlscript/blob/m.../setup.pir | 13:52 | |
| bacek | fperrad, thanks! | ||
| Yay! | 13:54 | ||
| It builds. | 13:55 | ||
| purl | now run the tests! | ||
| dalek | rrot: r47973 | mikehh++ | branches/gsoc_past_optimization/MANIFEST: re-generate MANIFEST |
||
| rrot: r47974 | mikehh++ | branches/gsoc_past_optimization/docs/user/library (5 files): set svn properties |
|||
|
14:02
TonyC joined
14:09
nopaste joined
14:11
JimmyZ joined
|
|||
| dalek | rrot: r47975 | mikehh++ | branches/gsoc_past_optimization/docs/user/library/PCT/Pattern.pod: fix codetest failure - linelength |
14:11 | |
| rrot: r47976 | mikehh++ | branches/gsoc_past_optimization/docs/user/library/Tree/Pattern.pod: fix codetest failure - linelength |
|||
| rtcl-nqp: 65f1889 | Coke++ | (2 files): Austin-ize [info] subcommands, cleaning up arg handling. |
14:15 | ||
| rrot: r47977 | mikehh++ | branches/gsoc_past_optimization/docs/user/library/Tree/Pattern (2 files): fix codetest failure - linelength |
14:28 | ||
| rrot: r47978 | mikehh++ | branches/gsoc_past_optimization/docs/user/library/Tree/Walker.pod: fix codetest failure - linelength |
|||
| rtcl-nqp: d6a32b8 | Coke++ | (2 files): [switch] fix -- processing; |
14:38 | ||
| kudo: ffe80d7 | jonathan++ | src/ (2 files): Re-implement is default trait for multis. |
14:51 | ||
| kudo: 5954d61 | jonathan++ | t/spectest.data: Turn on S12-methods/default-trait.t. This means that S12 is no longer the |
|||
| kudo: 9551482 | jonathan++ | src/ (2 files): First cut of starting to get 'is hidden' do work again. Not a complete |
|||
| purl | i heard implementation was a bit mental. | ||
| kudo: f509251 | jonathan++ | src/metamodel/ClassHOW.pir: Rip out old hidden implementation. |
|||
| kudo: e5540ec | jonathan++ | src/ (2 files): Get hides working again. |
|||
| kudo: bb68aed | jonathan++ | src/cheats/parrot/P6metaclass.pir: Take a couple of steps towards mix-ins to metaclass instances being less broken |
|||
| kudo: 039780e | jonathan++ | (3 files): Bump PARROT_REVISION up to latest for .WHAT.HOW fix. Tidy up various places have same interface for P6metaclass in that sense. |
|||
| kudo: d27eb3c | jonathan++ | src/metamodel/RoleToInstanceApplier.nqp: One fix to RoleToInstanceApplier to bring us a step closer to mixing into |
|||
| rrot: r47979 | mikehh++ | branches/gsoc_past_optimization/MANIFEST.generated: resort MANIFEST.generated (and remove tabs) |
15:00 | ||
| Coke | Austin++ | 15:03 | |
| JimmyZ | rakudo: say { 'hi', 'wo'; }(); # and crazy too, sorry this one | 15:14 | |
| oh | |||
|
15:20
Mokurai joined
|
|||
| mikehh | gsoc_past_optimization branch - All tests PASS (pre/post-config/ make corevm/make coretest, test, fulltest) at r47979 - Ubuntu 10.04 amd64 (g++) | 15:21 | |
|
15:25
tcurtis joined
15:27
eternaleye joined
15:28
cotto joined
|
|||
| cotto | ~~ | 15:28 | |
|
15:30
theory joined
15:35
TonyC joined
15:36
joeri joined
15:37
nopaste joined
15:42
fperrad joined
|
|||
| hanekomu_9 | parrot hates me. | 15:48 | |
| the simple coroutine example from docs.parrot.org/parrot/latest/html/...s.pod.html - the one that calls yield() three times - doesn't work | 15:49 | ||
| it says "Cannot resume dead coroutine" after the 4th call to MyCoro() | |||
| I'm probably doing something wrong since I assume that at least the examples from the docs will work. | 15:50 | ||
| mikehh | hanekomu_9: not necessarily - unfortunately the docs are not as up to date as we would like | 15:54 | |
| let me check it out | |||
| hanekomu_9 | thanks | 16:01 | |
| mikehh | hanekomu_9: It's not you - get the same | 16:06 | |
| hanekomu_9 | hm | ||
| ok thank | |||
| s | |||
|
16:07
fperrad joined
16:11
JimmyZ joined
|
|||
| mikehh | hanekomu_9: not sure about the example - the .yield works fine, but it does not restart after the return (don't know if it should?) | 16:13 | |
| hanekomu_9 | yes, that's what I meant | ||
| i guess it should - as a user of the subroutine I don't care whether I've been yielded to or returned | |||
|
16:19
shockwave joined
|
|||
| shockwave | Hi | 16:19 | |
| purl | hey, shockwave. | ||
| shockwave | I was looking in the docs section but couldn't find anything related to it. Is there a doc describing the overflow/underflow behavior of pir? | 16:20 | |
| mikehh | hanekomu_9: according to the docs - it should restart - it becomes dead after the return, and so the next call should restart it. | 16:27 | |
| hanekomu_9: do you want to file a ticket | |||
|
16:27
shockwave left
|
|||
| hanekomu_9 | ok | 16:27 | |
| dalek | TT #1702 created by hanekomu++: Cannot resume dead coroutine | 16:41 | |
| TT #1702: trac.parrot.org/parrot/ticket/1702 | |||
|
16:57
JimmyZ joined
17:11
eternaleye_ joined
17:46
mmcleric joined
18:01
GodFather joined
18:30
kid51 joined
18:37
fperrad joined
20:06
LoganLK joined
20:08
dukeleto joined
20:15
dalek joined
20:24
plobsing joined
20:30
dalek joined
21:33
lucian joined
|
|||
| Coke | holy crap, someone fixed trac.parrot.org/parrot/ticket/1131 ? | 22:22 | |
| mikehh | rakudo (d27eb3c) builds on parrot r47979 - make test PASS, spectest_smolder -> #34709 (pugs r31539) FAIL - Ubuntu 10.04 amd64 (g++ with --optimize) | 22:39 | |
| t/spec/S32-num/rat.rakudo - Failed test: 798 | |||
| 18 TODO PASSes in 4 files | |||
| partcl-nqp (d6a32b8) - make ok, make test FAIL - t/cmd_incr.t - Failed test: 12 (t/cmd_expr.t - TODO passed: 287) - parrot at r47979 - Ubuntu 10.04 amd64 (g++ with --optimize) | 22:47 | ||
| Coke | mikehh: that incr test fails about once every 10 times. | 22:50 | |
| pretty sure it's a LTM bug triggered by hash key ordering. | 22:51 | ||
| dalek | rtcl: bda790d | Coke++ | t/cmd_lsort.t: underlying parrot issue fixed. |
||
| mikehh | Coke: yeah - I ran the tests again and it passed - let me update and try again | 22:54 | |
| dalek | TT #1131 closed by coke++: segfault in Parrot_assign_p_p after merge of pcc branch. | 22:59 | |
| TT #1131: trac.parrot.org/parrot/ticket/1131 | |||
| mikehh | partcl-nqp (d6a32b8) - make ok, make test PASS (t/cmd_expr.t - TODO passed: 287) - Files=62, Tests=1264 - parrot at r47979 - Ubuntu 10.04 amd64 (g++ with --optimize) | 23:09 | |
| partcl (bda790d) - make ok, make test PASS - Files=74, Tests=1382 - parrot at r47979 - Ubuntu 10.04 amd64 (g++ with --optimize) | 23:10 | ||
| pir/PIRATE (e8a6652) - build ok / test PASS - parrot at r47979 - Ubuntu 10.04 amd64 (g++ with --optimize) | 23:13 | ||
| winxed r532 - make ok, make test/test1/test2 PASS - parrot at r47979 - Ubuntu 10.04 amd64 (g++ with --optimize) | 23:17 | ||
|
23:32
joeri joined
23:54
Psyche^ joined
|
|||