|
www.parrot.org | 1.5.0 "TEH PARROTZ!" Released! | Weekly development focus: Bugfixing and stability. Keep those branches merging! Set by moderator on 26 August 2009. |
|||
| mikehh | partcl r639 builds on parrot r40820 - make test - Most tests file with no subtests run or segmentation fault - Files=74, Tests=95 | 00:03 | |
| cardinal builkds on p[arrot 40820 - make test fails after running a few tests - get_pmc_keyed() not implemented in class 'String - rake aborted | 00:10 | ||
| darbelo: I will try that patch later - need some sleep - bbl | 00:11 | ||
| bacek_at_work | darbelo: (nopasted patch) just cast it explicitly. Something like "PARROT_DECNUMCONTEXT(SELF)->ctx->round = (rounding)rnd" | 00:16 | |
|
00:17
patspam joined
|
|||
| dalek | cnum-dynpmcs: r176 | darbelo++ | trunk/src/pmc/decintcontext.pmc: Undo r175, it broke DecIntContext for some reason. |
00:38 | |
| darbelo | mikehh: no need to patch, just svn up ro r176 | 00:39 | |
| msg mikehh no need to patch, just svn up to r176 | 00:40 | ||
| purl | Message for mikehh stored. | ||
| darbelo | msg Well, r177 actually. | 00:43 | |
| purl | Sorry, I've never seen well, before. | ||
| dalek | cnum-dynpmcs: r177 | darbelo++ | trunk/src/pmc/decnumcontext.pmc: Add explicit casts to a few lines. This should help the c++ build. |
||
| darbelo | msg mikehh Well, r177 actually. | ||
| purl | Message for mikehh stored. | ||
| jrtayloriv | What is the proper way to go about converting a test to use test_more.pir when the tests just check to make sure a certain point in the code is reached, for instance in this test -- pastebin.com/d7aaff738 -- in the sub 'init', where it is just checking that "init" gets printed, should I just replace the print statement with an ok(1==1, 'entered init()') ? | 01:05 | |
| cotto | ok(1, "...") is fine for that purpose | ||
| darbelo | also, jrtayloriv check out nopaste, it automatically puts likns your pastes to this channel (if you tell it to). | 01:13 | |
| nopaste.snit.ch is the cannonical url | 01:14 | ||
| jrtayloriv | darbelo, thanks -- will do | ||
| darbelo | or you can ask purl: | ||
| nopaste? | |||
| purl | nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) or gist.github.com/ or paste or gtfo | ||
| TonyC | put the channel name on the end of the url and it selects that channel by default | ||
| so nopaste.snit.ch/parrot (not in the factoid, or you'd get all the random pastes in here) | 01:15 | ||
| cotto | anyone on windows care to try a patch? | 01:16 | |
| darbelo | Failed 17/17 test programs. 0/14629 subtests failed. | 01:18 | |
| I just love order of destruction bugs. | |||
| jonathan | cotto: I need to sleep now, I'm afraid. | ||
| cotto: But I may have time tomorrow. | 01:19 | ||
| cotto | I'll bug you if nobody else volunteers. | ||
| darbelo | I've been meaning to set up a windows environment to see how badly decnum-dynpmcs fails there. | 01:20 | |
| TonyC | the certicate is received as part of the https handshake, but it doesn't look like LWP exposes it | ||
| darbelo | I'll let you know if I get one going. | ||
| TonyC | wrong channel | ||
| nopaste | "jrtayloriv" at 67.246.145.82 pasted "yet another question about converting tests :)" (59 lines) at nopaste.snit.ch/17697 | 01:34 | |
| bacek_at_work | jrtayloriv: yes. This is correct. | 01:37 | |
| jrtayloriv | thanks | ||
| darbelo | Hmm. Smolder is reporting my failures as passes. | 01:41 | |
| Is tehere a particular way/place to repport that? | 01:42 | ||
| cotto | particle, can you test a patch against pluggable_runcores on windows? | 01:43 | |
| treed | Coke: Planet Parrot doesn't seem to have picked up the update yet. | 01:55 | |
| dalek | TT #953 created by darbelo++: [gc] t/op/copy.t failure in OpenBSD amd64 | 01:59 | |
|
01:59
darbelo left
|
|||
| cotto | Coke, are you on windows? | 02:00 | |
|
02:12
theory joined
|
|||
| bacek_at_work | Yay! t/op/copy.t failure! I spent 4 hours yesterday thinking it was my fault in context_pmc3 branch... | 02:12 | |
| with exactly same backtrace... Sigh. | 02:13 | ||
| dalek | rrot: r40821 | cotto++ | branches/pluggable_runcore (8 files): [profiling] first attempt at an abstraction layer for high-resolution timing, including an untested win32 implementation |
02:14 | |
| cotto | anyone on win32, please check out pluggable_runcore, lmk if it builds and see if parrot.pprof is generated when you pass parrot -Rprofiling . | 02:20 | |
| Happily there's about 4 lines of windows-specific code, so it should be pretty easy to fix if I messed it up. | 02:21 | ||
| dalek | rrot: r40822 | cotto++ | branches/pluggable_runcore/config (7 files): [config] use hints instead of #defines to try to figure out the best available timing method darbelo++ for putting together most of the patch |
||
|
02:24
mokurai joined
02:28
TiMBuS joined
|
|||
| cotto | Now the only excuse I have for not merging is that my code is crappy and doesn't work, rather than being crappy, not working and not being cross-platform. | 02:30 | |
|
02:36
janus joined
02:37
skv_ joined
|
|||
| dukeleto | cotto: that is a start | 03:00 | |
| msg darbelo i helped fix a bug in smolder a while ago that didn't correctly see that some tests coredump. you may have found another bug. mpeters is the person to talk to, but I know where in the code to look, can you show me a nopaste of the error that is not caught correctly? | 03:02 | ||
| purl | Message for darbelo stored. | ||
| dukeleto | how do I tell purl to delete messages once I have seen them? | 03:04 | |
| cotto | messages erase | 03:05 | |
| you don't even have to read them first ;) | |||
| dukeleto | cotto++ | 03:07 | |
| nopaste | "jrtayloriv" at 67.246.145.82 pasted "Why are the regsave_marked() tests being ignored?" (130 lines) at nopaste.snit.ch/17698 | 03:08 | |
| dukeleto | jrtayloriv: can i see the output you get from "prove -v t/op/gc.t" and the entire file as well? | 03:11 | |
| jrtayloriv | dukeleto, yes -- one moment | 03:12 | |
| treed has successfully managed to get rake test:all to keep running other tests when something bails out. | 03:14 | ||
| nopaste | "jrtayloriv" at 67.246.145.82 pasted "There are actually 117 tests." (270 lines) at nopaste.snit.ch/17699 | 03:15 | |
| jrtayloriv | And, for instance, if you add an ok(1) as the first instruction in regsave_marked() it doesn't see the new test. | 03:16 | |
| It still only sees 115 tests. | |||
| And it properly counted everything before regsave_marked, so I think it has something to do with my use of .namespace in vanishing_ret_continuation() | 03:17 | ||
| dukeleto | jrtayloriv: the -v on prove is somewhat important :) | 03:18 | |
| jrtayloriv | dukeleto, oops -- didn't see that, sorry -- I'll post it up again. | 03:19 | |
| dukeleto | jrtayloriv: is it possible to put all of your tests before the namespaces that you declare? | ||
| jrtayloriv: what happens if you move the regsave_marked test to the top of the file ? | 03:20 | ||
| jrtayloriv: you probably have found a bug, but not the one you are testing for :) Those are the best kind | |||
| nopaste | "jrtayloriv" at 67.246.145.82 pasted "jrt4@localhost ~/code/parrot-t" (16 lines) at nopaste.snit.ch/17700 | 03:22 | |
| jrtayloriv | dukeleto, it might also just be that I mistranslated it from PASM to PIR -- I'll post up the original test ... one sec | 03:23 | |
| dukeleto | jrtayloriv: your test is throwing an exception that you are not catching | ||
|
03:25
Andy joined
|
|||
| nopaste | "jrtayloriv" at 67.246.145.82 pasted "====================== Origina" (113 lines) at nopaste.snit.ch/17701 | 03:26 | |
| jrtayloriv | dukeleto, Is the uncaught exception something I did wrong, or a bug? | 03:27 | |
| dukeleto | jrtayloriv: not sure yet | 03:29 | |
| jrtayloriv: can you atttach the entire gc.t file to the ticket at trac.parrot.org/parrot/ticket/950 so that others can test it out? you can try running the PIR test under the debugger and getting a backtrace. then you can break out gdb if you really want to nuke the embankment :) | 03:31 | ||
| jrtayloriv: ./parrrot_debugger t/op/gc.t | 03:32 | ||
| jrtayloriv | dukeleto, Should I attach the current copy (i.e. with regsave_marked() at the top of the file), or the original, or both? | ||
| dukeleto | jrtayloriv: do they both have the same behavior? if so, one should be fine | ||
| jrtayloriv: then type "c" then enter | 03:33 | ||
| jrtayloriv: "h" or "help" to get a basic description of the parrot debugger commands | |||
| jrtayloriv | parrot_debugger just gave me exactly the same output as prove -v (namely --> pastebin.com/d6db83426) | 03:35 | |
| I'll play around with the debugger for a moment, and then attach gc.t to the ticket. | 03:36 | ||
|
03:37
payload joined
|
|||
| treed | purl: msg jdv73 I fixed the Rakefile so that the test suite (and therefore "rake report") will complete even when individual tests bailout. When bailout occurs, the output from that test will simply be "FAILED TO COMPILE". Let me know if something else would work better with smolder. | 03:45 | |
| purl | Sorry, I've never seen jdv73 before. | ||
| treed | huh. | ||
| purl: msg jdv79 I fixed the Rakefile so that the test suite (and therefore "rake report") will complete even when individual tests bailout. When bailout occurs, the output from that test will simply be "FAILED TO COMPILE". Let me know if something else would work better with smolder. | |||
| purl | Message for jdv79 stored. | ||
| treed | Aha. | 03:46 | |
| purl: msg mikehh Latest update to cardinal will cause the test suite complete after the point where compilation fails. | |||
| purl | Message for mikehh stored. | ||
| dalek | rdinal: 8d2377f | treed++ | Rakefile: Fix the Rakefile so that test suites will still complete if individual files bail out. |
||
| dukeleto | jrtayloriv: you may want to try "gdb parrot" then "run t/op/gc.t" then "bt full" | 03:49 | |
| jrtayloriv | dukeleto, I'm trying to set a breakpoint in parrot_debugger at line 26 with 'break 26', but then when I do 'continue', it just runs until exit and doesn't stop at my breakpoint. | 03:50 | |
| dukeleto | jrtayloriv: yeah, breakpoints don't work. Forgot to tell ya'. Here is your gold watch :) Want to add a ticket for it? | 03:51 | |
| jrtayloriv | 'bt full' in gdb gave "no stack" | ||
| treed | purl: msg coke that Coding Red still isn't on planet parrot | 03:52 | |
| purl | Message for coke stored. | ||
| dukeleto | jrtayloriv: there are lots of tests (that I wrote) for breakpoints, but the debugger lies and *says* it is setting breakpoints, and that is what the tests test, but it just goes ahead and doesn't do that. We need a test that physically verifies that the breakpoint is stopped at, not that the debugger says it has set one | ||
| msg coke i would like to get on planet parrot, do you have a preferred flavor of rss/atom feed? | 03:53 | ||
| purl | Message for coke stored. | ||
|
03:53
mrsaturn joined
|
|||
| dukeleto | jrtayloriv: i guess we need to set the proper gdb breakpoint to get proper bt | 03:55 | |
| jrtayloriv | I just set one for null_pmc_access | 03:56 | |
| Is that a good place to start? | 03:57 | ||
| Here is what I got with that --> pastebin.com/d458513f9 | 04:00 | ||
| dukeleto | jrtayloriv: the function before null_pmc_access is Parrot_set_p_sc, that means a PMC is being set to a constant string, but the PMC seems to be NULL | 04:02 | |
|
04:10
allison joined
|
|||
| jrtayloriv | dukeleto, Should I post any of the gdb session on the ticket along with the gc.t file and the error from prove -v? | 04:13 | |
| dukeleto | jrtayloriv: yes please and thank you | ||
|
04:15
kyle_l5l joined
04:20
mokurai joined
04:21
mrsaturn joined
|
|||
| jrtayloriv | dukeleto, posted up everything on the ticket -- sorry for pestering you :) | 04:25 | |
| dukeleto | jrtayloriv: no pestering, it was fun. good work on the gdb stuff | 04:26 | |
| bacek_at_work | jrtayloriv: you missed 'newclass' on line 45 in gc-broken | 04:35 | |
| jrtayloriv: it probably cause failure on line 61 | 04:36 | ||
| dukeleto | bacek: that would do it | ||
| jrtayloriv | doh :) | 04:37 | |
| bacek_at_work | Sorry to tell it so late :) | 04:38 | |
| dukeleto | bacek++ | 04:39 | |
| bacek_at_work | __get_string should be marked with ":vtable". Double underscores are deprecated afaik | ||
|
04:40
skv_ joined
|
|||
| jrtayloriv | bacek_at_work, Thanks :) -- but now I'm getting this --> pastebin.com/d707e07ae | 04:43 | |
| bacek_at_work | try :method :vtable | 04:45 | |
| and remove "get_params". | 04:47 | ||
| bah. sorry | |||
| get_params/set_params is PASM. Just use .param and .return(value) | 04:48 | ||
| in regsave you don't need params. Just use "self" | 04:49 | ||
| jrtayloriv | bacek_at_work, I saw some tests in t/op/calling.t that use get_params in PIR -- is this not right? | ||
| bacek_at_work | jrtayloriv: you can use get_params in pir | 04:50 | |
| but .param is cleaner and easy to understand | |||
| jrtayloriv | got it -- thanks again. | ||
| bacek_at_work | pir is just syntax sugar for pasm. But very nice sugar :) | 04:52 | |
|
04:59
beta left
|
|||
| jrtayloriv | bacek_at_work, I'm not understanding what you mean by "just use self" -- could you point me to something that I could read to understand this? | 04:59 | |
| dukeleto | jrtayloriv: methods get a variable called "self" | 05:00 | |
| jrtayloriv | dukeleto, right -- but how would I replace the get_params 0, $P2 statement by using self? -- I think my problem must be that I'm not understanding what get_params 0 is doing there. | 05:01 | |
| I'm pretty understand what "self" is -- basically, it just refers to the object that the method is being invoked from, right? | 05:03 | ||
| dukeleto | jrtayloriv: are there docs for get_params? | ||
| jrtayloriv | dukeleto, very little -- pdd03 and the docs/op/core.pod | 05:04 | |
| dukeleto | jrtayloriv: yes, I see that | 05:05 | |
| jrtayloriv | I couldn't figure out what the 0 flag did for get_params | ||
| dukeleto | jrtayloriv: it gets the 0-th argument to the method. i think you can just replace $P2 with self | 05:11 | |
| and get rid of the get_params call | |||
| jrtayloriv | dukeleto, OK, so the 0th arg to every method is self, followed by the parameters that are passed in? | 05:12 | |
| dukeleto | jrtayloriv: bingo | ||
| jrtayloriv | thanks :) ... I might add that to the docs somewhere later, if it's not in there somewhere -- that would have been very helpful to know. | 05:13 | |
| dukeleto | jrtayloriv: from docs/pdds/pdd19_pir.pod 'The variable "self" automatically refers to the invocating object, if the | 05:16 | |
| subroutine declaration contains "method".' | |||
| jrtayloriv | well there we have it :) | ||
| I converted it to not use params, and just use self, but now it's back to another Null PMC error again ... pastebin.com/d4f2254fa | 05:21 | ||
|
05:22
marius joined
|
|||
| jrtayloriv | nm | 05:24 | |
| dukeleto | jrtayloriv: hmm, i don't think you can assign to self. you can use an unused $P* register | 05:25 | |
| jrtayloriv: this is what is blowing up : getprop $P12, "buffer", self | |||
| jrtayloriv: hmm, that is assigning to $P12 actually, right ? | 05:26 | ||
| jrtayloriv | yes | ||
| dukeleto | jrtayloriv: but the order of the args may be wrong | ||
| i have never used getprop | |||
| jrtayloriv | it was actually the line 'setprop $P2, "buffer", $P12' should have been 'setprop self, "buffer", $P12' | 05:27 | |
| the order was right for getprop | |||
| dukeleto | this makes me want to type "parrotdoc -f getprop" or somesuch. maybe someone should write that | ||
| jrtayloriv: nice work | |||
| jrtayloriv: so the test works now? | |||
| jrtayloriv | nope :) | ||
| pastebin.com/d1ea092e3 | 05:30 | ||
| I still think I might be doing something wrong with .namespace too -- see how it says the bit about 'nonexistent sub sweep_1' ? That's the sub defined right below regsave_marked() | 05:31 | ||
| bacek_at_work | jrtayloriv: more sugar! "getprop $P12, "buffer", self" is same as '$P12 = getprop self, "buffer"' | ||
| jrtayloriv | bacek_at_work, same w/ setprop as well? | 05:33 | |
| i.e. setprop $P12, "buf", $P14 ----> $P12 = setprop "buf, $P14 | |||
| dukeleto | jrtayloriv: yes | 05:35 | |
| jrtayloriv: all opcodes follow that convention. "opcode arg1, arg2, arg3" is the same as "arg1 = opcode arg2, arg3" | 05:36 | ||
| jrtayloriv: the opcodes are actually implemented as the 3 arg versions, and then the "a = b" syntax in sugar in PIR | |||
| cotto | sweet sweet sugar | 05:37 | |
| seen chromatic | 05:38 | ||
| purl | chromatic was last seen on #parrot 2 days, 9 hours, 10 minutes and 46 seconds ago, saying: will not be at the meeting tomorrow. [Aug 24 20:21:11 2009] | ||
| cotto | unusual, that | ||
| bacek_at_work | dukeleto: "all" is deprecated. Only opcodes which returns value | ||
| dukeleto | cotto: it is nice weather in portland :) | 05:39 | |
| bacek: touché | 05:40 | ||
| jrtayloriv: funky stuff | 05:46 | ||
| jrtayloriv: do you have the latest version attached to the ticket, with the getprop/setprop fixes? | 05:47 | ||
| jrtayloriv | dukeleto, no -- I'll post it up and overwrite the old version of gc.t--broken (since it is still broken) | 05:48 | |
| dukeleto | sounds good | 05:49 | |
| jrtayloriv | done. | 05:50 | |
|
05:51
mokurai left
|
|||
| dukeleto | jrtayloriv: moving the namespaces to the end of the file makes all the tests run, but the first 2 still fail | 05:57 | |
| jrtayloriv: looks like it wants namespace [ ] instead of namespace [""] | 06:01 | ||
| jrtayloriv: just attached my version to the ticket | 06:05 | ||
| jrtayloriv | dukeleto++ | 06:08 | |
| dukeleto | jrtayloriv: it seems that the giving .namespace an empty string versus nothing is a whole different ball-game | 06:09 | |
| anybody know if that is a bug or a feature? | |||
| bacek_at_work | [] and [""] different namespaces | ||
| dukeleto | bacek_at_work: danke. so [] is the root namespace while [""] is the namespace formerly known as an empty string? | 06:10 | |
| jrtayloriv | What would [""] be useful for? | 06:11 | |
|
06:12
uniejo joined
|
|||
| dukeleto | jrtayloriv: if you wanted a namespace called "" :| | 06:13 | |
| jrtayloriv: it does not reset to the normal root namespace. that is the important part | |||
| jrtayloriv | yep, just wandering what type of situation that might come up in -- thanks for figuring that out. | 06:14 | |
| dalek | rrot: r40823 | NotFound++ | trunk/t/pmc/undef.t: [t] add a new assign to undef test and modify check on the existing ones |
06:32 | |
| dukeleto | jrtayloriv: do you know why the first 2 tests fail? | ||
| jrtayloriv | dukeleto, no idea -- I'm trying to figure that out right now | 06:34 | |
|
06:36
HG` joined
06:43
UltraDM joined
|
|||
| jrtayloriv | dukeleto, Since the return values from newclass aren't getting used anywhere, I can just throw both of them into $P0, right? | 06:45 | |
| instead of $P9 = newclass "Source" and $P10 = newclass "Source::Buffer" | |||
| (I don't understand why the author of the test did that) | 06:46 | ||
| dukeleto | jrtayloriv: there is a difference to the garbage collector probably. i would leave it the same :) | 06:47 | |
| jrtayloriv | ok | ||
| dukeleto | jrtayloriv: got it | 06:49 | |
| jrtayloriv | duk3leto, As far as numbering, would it matter if I changed the PMC registers to be all single digits to improve readability? There are only 7 PMC registers used in the test, so can I just use $P1 ... $P7 instead? | 06:50 | |
| dukeleto | jrtayloriv: i found the issue. we were trying to return things in a pasm style instead of ".return(foo)" | ||
| jrtayloriv: in theory, yes. in practice, watch out for macros, because they can alter the behavior of registers in odd ways | 06:51 | ||
| jrtayloriv: i will give you a working file and you can refactor it :) | |||
| jrtayloriv: i just attached the working version at trac.parrot.org/parrot/ticket/950 | 06:52 | ||
| jrtayloriv | dukeleto, Thanks :) | 06:53 | |
| dukeleto | jrtayloriv++ for doing most of the hard work | ||
| jrtayloriv | bah | ||
| moritz | allison++ # context_pmc3 review | 06:58 | |
| allison | moritz: :) | ||
| moritz | I don't understand it all, but it sounds thorough and sensible | ||
| bacek_at_work | allison: hi | ||
| purl | hello, bacek_at_work. | ||
| moritz | (and it also sounds like a lot of work to me) | 06:59 | |
| allison | bacek: hi | ||
| purl | what's up, allison. | ||
| bacek_at_work | allison: CONTEXT_FIELD and CURRENT_CONTEXT_FIELDS macros are temporary. I'm in progress of replacing them with proper functions. | ||
| allison | bacek: okay, that'll work | 07:01 | |
| bacek_at_work | allison: I put '//' and 'XXX' specially to quick find broken stuff. | ||
| just to remind my self where I cut corner. | |||
| allison | bacek: as long as they don't make it back into trunk, that's fine (we've just had a lot of XXX leak back into trunk over the years, with some major clean up work required to get rid of it) | 07:02 | |
| bacek_at_work | And I tend to disagree with CONTEXT macro. It backward incompatible anyway. Because Parrot_Context structure is changed. | ||
| allison: (XXX) yep. | 07:03 | ||
| allison | bacek: what's changed in the structure? | ||
| bacek: you should be able to keep the structure the same | |||
| bacek_at_work | I store PMC* instead of Parrot_Context*. | ||
| allison | that's the interpreter structure | ||
| bacek_at_work | no | 07:04 | |
| allison | I mean what's changed in the Parrot_Context structure that's stored as the data element of the Context PMC? | ||
| bacek_at_work | caller_ctx and outer_ctx | ||
| they were Parrot_Context* before. | |||
| allison | that's fine, it's pretty minor | ||
| and, you already have functions to replace it | 07:05 | ||
| bacek_at_work | s/to replace/to fetch content/ - yes | ||
| allison | we're going to deprecate CONTEXT(interp) anyway, so there's no reason to change it to return a PMC | ||
| bacek_at_work | ok | 07:06 | |
| I'll replace cx prefix with pcc over weekend. CONTEXT_FIELD and CURRENT_CONTEXT_FIELD will be finally removed too. | |||
| allison | bacek: the biggest thing I was concerned about going into the review was possible modifications to extend/embed API functions, but you | 07:08 | |
| managed to avoid those | |||
| bacek_at_work | btw, what "cx" prefix stand for? | 07:09 | |
| allison | Concurrency Xheduler | 07:10 | |
| 'cs' was already taken | |||
| bacek_at_work | heh :) | ||
| anyway, I hit big roadblock with GC... TT#953... | 07:13 | ||
|
07:27
iblechbot joined
|
|||
| NotFound | I think I got it! Cross your fingers... | 07:36 | |
| mikehh | messages | 07:39 | |
| dalek | rrot: r40824 | NotFound++ | trunk/src/ops/set.ops: [ops] fix copy opcode. Should fix all recent double-free errors |
07:43 | |
| NotFound | rakudo spectest PASS :) | 08:22 | |
| mikehh | NotFound++ | 08:24 | |
| examples_tests PASS | |||
|
08:31
masak joined
|
|||
| mikehh | All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40824 - Ubuntu 9.04 amd64 (g++) | 08:35 | |
| NotFound | Gooooooood :) | 08:36 | |
| mikehh | rakudo (ec2f831) builds on parrot r40824 - make test / make spectest (up to r28077) PASS - Ubuntu 9.04 amd64 (g++) | 08:42 | |
|
08:47
skv_ joined
|
|||
| mikehh | partcl r639 builds on parrot r40824 - make test fails the same 6 tests but all subtests PASS - Ubuntu 9.04 amd64 (g++) | 08:48 | |
| cardinal (8d2377f) builds on parrot r40824 - make test - 593 tests were run, from 98 files, 510 tests passed, 0 of which were unexpected. 82 tests failed, 82 of which were expected. | 08:58 | ||
| cardinal There was 1 test file that reported fewer results than were planned: gen_time.pir, There were 3 complete failures: gen_08-class.pir, gen_alias.pir, gen_freeze.pir | 09:01 | ||
| decnum_dynpmcs r177 builds on parrot r40824 (g++) - make test gives a fail but all subtests PASS (Failed 17/17 test programs. 0/14629 subtests failed) - Ubuntu 9.04 amd64 (g++) | 09:10 | ||
| bacek_at_work | Yay! NotFound++! | 09:18 | |
|
09:20
Whiteknight joined
|
|||
| NotFound | Whiteknight: Have you seen r40824 ? | 09:21 | |
| Whiteknight | no | 09:23 | |
| NotFound | Whiteknight: looks like the copy opcode was the root of all evil | 09:24 | |
| Whiteknight | bacek has been having problems with the t/op/copy.t test in his branch | 09:26 | |
| I bet this will help him out too | |||
| jonathan | Ah, broken copy op woulda caused problems in Rakudo for sure. It's used very heavily. | 09:30 | |
| dalek | tracwiki: v34 | kjs++ | PIRCDevelopment | ||
| tracwiki: info about AST node types | |||
| tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff | |||
|
09:44
skv_ joined
|
|||
| Whiteknight | NotFound: so are all the bugs fixed now? | 10:01 | |
| bacek_at_work | Whiteknight: you wish :) | 10:03 | |
| Yay! Only one test failing in my branch after merge with latest trunk! | |||
| NotFound | Whiteknight: looks like they are, yes | 10:04 | |
| Whiteknight | NotFound++ | 10:06 | |
| bacek_at_work: awesome! | |||
| purl | i think awesome is a window manager or at awesome.naquadah.org or awesome! | ||
| Whiteknight | which test, the exceptionhandler one? | ||
| bacek_at_work | t/op/annotate. | 10:08 | |
| but it based on exceptions | 10:09 | ||
| ok 16 - backtrace has enough elements | 10:10 | ||
| Null PMC access in get_string() | |||
| current instr.: 'backtrace_annotations' pc 428 (t/op/annotate.t:113) (loo.py:3) | |||
| mikehh | partcl make spectest (completed in 43 minutes) (logged) | 10:12 | |
| Whiteknight | bacek: you saw allison's email? | 10:15 | |
|
10:17
PacoLinux joined
|
|||
| bacek_at_work | Whiteknight: we've discussed it couple of hours ago | 10:19 | |
| Whiteknight | ok | ||
| I have to go get ready for work. Later | 10:20 | ||
|
10:37
donaldh joined
11:00
MoC joined
11:21
donaldh joined
11:52
whiteknight joined
11:55
payload joined
12:21
Taulmarill joined
12:23
ruoso joined
|
|||
| dalek | rrot: r40825 | NotFound++ | trunk/src/oo.c: fix a leak due to a forgotten item in the conversion of Object PMC to auto_attrs |
13:16 | |
| Coke | msg cotto I am not normally on windows, but can be if the need is great. | 13:36 | |
| purl | Message for cotto stored. | ||
| Coke | treed: pinged Ask about planet parrot, will let you know. | 13:41 | |
| Right now tcl skips spec tests where all the tests fail or skip. | 14:00 | ||
| I'm thinking of re-enabling all the tests that run to completion; this should help catch more segfaults before they're introduced. | 14:01 | ||
| s/before/when/ | |||
| I think this will impact me and mikehh and no one else. =-P | 14:02 | ||
|
14:03
whiteknight_ joined
|
|||
| whiteknight | good morning #parrot | 14:13 | |
| Coke | hey. | 14:20 | |
| whiteknight | hello Coke | 14:22 | |
|
14:22
Psyche^ joined
|
|||
| mikehh | All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40825 - Ubuntu 9.04 amd64 (gcc) | 14:25 | |
|
14:34
bacek joined
|
|||
| Coke | error:imcc:syntax error, unexpected DOT ('.') in file 'EVAL_132522' line 46 | 14:37 | |
|
14:37
JimmyZ joined
|
|||
| Coke | ugh. I get 97% of the way through expr.test now before a memory panic. | 14:39 | |
| (which is much further than before. just so close. :| | |||
|
14:39
MoC joined
|
|||
| dalek | rrot: r40826 | NotFound++ | trunk/src/pmc/scheduler.pmc: [pmc] enable mutex destroy in scheduler |
14:43 | |
|
14:44
iblechbot joined
14:50
kjeldahl joined
|
|||
| jrtayloriv | I am working on converting a test from using pir_output_is to using test_more.pir. I am having an off-by-one problem that I think has to do with a check for recursion_depth/recursion_limit --pastebin.com/d1cc9ad8b ... Is the problem here due to the fact that the pir_output_is statement starts in :main while the test_more.pir test function is a sub that is called from :main? | 14:51 | |
|
14:53
MoC joined
|
|||
| jrtayloriv | Basically, I could just lower the check to look for 8 instead of 9, or raise recursion_limit to 11, right? | 14:53 | |
| bacek | jrtayloriv: either way will work | ||
| jrtayloriv | bacek, thanks | 14:54 | |
| mikehh | partcl r639 builds on parrot r40825 - make test same as before - Ubuntu 9.04 amd64 (gcc) | 14:56 | |
| rakudo (ec2f831) builds on parrot r40825 - make test / make spectest (up to r28079) PASS - Ubuntu 9.04 amd64 (gcc) | 14:57 | ||
| Coke | mikehh++ | 14:58 | |
|
15:07
kjeldahl joined
15:09
HG` joined
15:11
kjeldahl joined
15:20
donaldh joined
15:23
payload joined
|
|||
| Coke wanders out. Ping me via email. | 15:26 | ||
|
15:26
rdice joined
15:28
payload1 joined
15:31
desertm4x joined
|
|||
| dukeleto | msg jrtayloriv let me know if you want me to commit the version of gc.t that I attached or wait for your changes | 15:32 | |
| purl | Message for jrtayloriv stored. | ||
| jrtayloriv | dukeleto, I'm on the last test right now | 15:33 | |
| dukeleto | jrtayloriv: sweet | 15:34 | |
| jrtayloriv | that way, we won't have to have two files | ||
| dukeleto | jrtayloriv: yes, less churn is better | ||
| jrtayloriv | I'm just reading up about how coroutines are dealt with so that I make sure I convert this one correctly | 15:35 | |
| dukeleto, And there was an error (mine) left over in the version you attached (vanishing_ret_continuation() had a leftover 'end' from PASM -- which is why we had to move regsave_marked to the top) | 15:38 | ||
|
15:38
darbelo joined
|
|||
| dukeleto | jrtayloriv: yes, get rid of those "end" statements | 15:38 | |
| jrtayloriv | What does --> get_params ' ' <-- do? Does it just pop a parameter off of the stack and throw it away? | 15:47 | |
|
15:53
theory joined
|
|||
| dalek | rrot: r40827 | jkeenan++ | branches/tt936_install_pct: Creating branch to work on tt936. |
15:57 | |
| darbelo | dukeleto: saw your msg. There's an example of smolder mis-detecting failures in TT #953, which is where I first noticed it. | 15:58 | |
| dukeleto | darbelo: yes, i saw that ticket. looks like smolder is goofing on detecting the return code | 16:00 | |
|
16:01
kid51 joined
|
|||
| jrtayloriv | dukeleto, I attached a patch to the ticket | 16:02 | |
| dukeleto, gc.2.t is supposed to be the finished version of gc.t -- type | |||
| gc.t--patch is the patch from svn diff | |||
| kid51 | I just had 5 minutes of trouble joining ircperlorg. Has anyone else experienced this? | ||
| moritz | kid51: sometimes (only seldom for me) the DNS round robin suggests a server that's a bit broken | 16:03 | |
| kid51: in that case I pick a different IP | |||
| jrtayloriv | lol -- typo talking about my typo ... let's try that again ... dukeleto, gc.2.t is supposed to be the finished version of gc.t -- typo | 16:04 | |
| dukeleto | jrtayloriv: i will look at it later today | 16:08 | |
| jrtayloriv | dukeleto, great -- thanks again for helping me work through it. | ||
|
16:17
MoC joined
|
|||
| dalek | rrot: r40828 | jkeenan++ | branches/tt936_install_pct/MANIFEST.generated: Change package for 4 PCT-related .pbc files from [pct] to [main] so that they install with 'make install' rather than 'make install-dev'. |
16:19 | |
| purl | dalek: that doesn't look right | ||
| darbelo | mikehh: ping | 16:31 | |
|
16:45
whiteknight joined
17:01
buildbot joined
17:03
mokurai joined
|
|||
| duk3leto | jkeenan++ for making pct part of the normal install and making rakudo happy | 17:07 | |
|
17:09
HG` joined
|
|||
| dalek | cnum-dynpmcs: r178 | darbelo++ | trunk/src/pmc/decbase.pmc: Hmm. Look at what sneaked in in a previous commit. |
17:14 | |
| jrtayloriv | I was going to start working on converting t/op/jit.t from pasm/perl to pure PIR, but I had a question involving how PIR does register allocation. Is 'set $I0, 1' in PASM exactly the same as '$I0 = 1' in PIR? I was wondering if it might not always be the same since PIR has unlimited # of registers. As long as I am only talking about registers that exist in PASM, will the set statements in PIR always be equivalent? | 17:30 | |
| for example, do these do the same thing --> pastebin.com/d34f88040 | |||
| mikehh | darbelo: pong | 17:32 | |
| whiteknight | jrtayloriv: no | 17:35 | |
| in PIR "$I20" is automatically allocated and mapped. in PASM, "I20" is the 20th register | 17:36 | ||
| the $ symbol is used in PIR, not PASM, and indicates that it is automatically managed | 17:37 | ||
| darbelo | mikehh: Can you tell me what tests failed for you on decnum-dynpmcs? | ||
| jrtayloriv | whiteknight, sorry I meant 'set I0, 1' for the PASM example. | ||
| whiteknight | yeah, okay | ||
| duk3leto | jrtayloriv: they do the same thing, but they have different workings behind the scenes | 17:38 | |
| jrtayloriv | right, so since these are trying to test something that is automatically taken care of in PIR, they need to be left as PASM correct? | ||
| mikehh | darbelo: all failed I think but all subtests passed - they exited with code 11 which I think is a segfault | ||
| darbelo | Did one of the few last lines look like 'Failed 17/17 test scripts. 0/14629 subtests failed.' | 17:39 | |
| mikehh | exactly | 17:40 | |
| duk3leto | jrtayloriv: you may want to keep using the "add" function instead of +. whether to use the 2 or 3 arg form is up to you | ||
| mikehh | Failed 17/17 test programs. 0/14629 subtests failed | ||
| darbelo | Then it's parrot's fault ;) | 17:41 | |
| mikehh | in other words passed all 14629 subtests | ||
| exit from t/harness | |||
| all test had Non zero wait status 11 | 17:43 | ||
| darbelo | It's a segfault during interpreter destruction. If you look at the coredump you'll se it dies at Parrot_pmc_destroy called (ultimately) from Parrot_exit. | ||
| jrtayloriv | duk3leto, Well, I was going to just move on to something else if those tests need to remain in PASM -- thanks for pointing out about the 2 arg version of add, though -- didn't know I could do that. | 17:44 | |
| mikehh | darbelo: that's right - I am re-running with latest parrot now | 17:45 | |
| darbelo | mikehh: What platform are you on? I hadn't seen that happen outside of OpenBSD so far. | ||
| mikehh | Ubuntu 9.04 amd64 | 17:47 | |
|
17:47
mberends joined
|
|||
| mikehh | darbelo: same story at r176 on parrot r40825 built with gcc | 17:49 | |
| darbelo | Hmm. Nevermind, I haven't tested on linux after the Great Merging took place, and this was introduced there. | ||
| mikehh | yeah - a lot of problems have been fixed - but not all | 17:50 | |
| whiteknight | this is why it's good to merge things so early in the release cycle: so we have plenty of time to fix bugs | ||
| mikehh | whiteknight :-} | 17:51 | |
| I am going to switch to i386 (have to re-boot at the moment) I still can't get VirtualBox to work properly with my wireless connection | 17:52 | ||
| darbelo | whiteknight: Definitely. Of course, parrot releases so often that 'early in the release' is, at most, a week. | 17:53 | |
| mikehh | still trying though | ||
| NotFound | Most destroy problems should be fixed at head now | 17:56 | |
| duk3leto | jrtayloriv: i am not sure if that test requires pasm, but it was using the add function initially, so best to keep it the same | 17:59 | |
| jrtayloriv: which test file are you attacking next? | |||
|
18:01
jan joined
|
|||
| jrtayloriv | duk3leto, Not sure yet. | 18:02 | |
| mikehh | anyway bbiab | 18:04 | |
| cotto | jonathan, ping | 18:06 | |
|
18:08
mikehh joined
|
|||
| mikehh | ok back - on Ubuntu 9.04 i386 for a bit | 18:09 | |
| darbelo | NotFound: most, but not mine :) | 18:11 | |
| duk3leto | jrtayloriv: i am working on t/pmc/integer.t, anyelse else is fair game | 18:12 | |
|
18:12
iblechbot joined
18:13
kid51 joined
|
|||
| darbelo | NotFound: I can confirm that TT#953 does looks fixed here, tough. | 18:16 | |
| cotto | msg jonathan When you have a few minutes, please checkout pluggable_runcore and let me know if it builds and if it generates a sane parrot.pprof when run with -Rprofiling . | 18:26 | |
| purl | Message for jonathan stored. | ||
| dalek | rrot: r40829 | cotto++ | branches/pluggable_runcore (2 files): [profiling] remove some redundant info from the profile and a minor cleanup |
||
| cotto | msg jonathan Here "sane" means that the second column of numbers looks like it could represent the time taken by the specified opcode. examples/pir/sudoku.pir is a good test if you don't have any complex pir lying around. | 18:30 | |
| purl | Message for jonathan stored. | ||
| mikehh | All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40828 - Ubuntu 9.04 i386 (g++) | 18:41 | |
| dalek | rrot: r40830 | cotto++ | branches/pluggable_runcore (186 files): bring profiling_runcore up-to-date with trunk |
18:42 | |
| cotto | s/profiling/pluggable/g | 18:44 | |
|
18:46
mberends joined
|
|||
| mikehh | rakudo (ec2f831) builds on parrot r40828 - make test / make spectest (up to r28081) PASS - Ubuntu 9.04 i386 (g++) | 18:48 | |
| partcl r639 builds on parrot r40828 - make test 6 tests fail, but all subtests PASS - Files=74, Tests=1325 - Ubuntu 9.04 i386 (g++) | 18:53 | ||
|
18:54
jrtayloriv joined
|
|||
| particle | q: does parrot check interrupts while sleeping? | 18:54 | |
| whiteknight | depends what you mean by both those things | 18:57 | |
| particle | sleep 10000; # can parrot detect sigint during this time? | 18:58 | |
| apparently perl 5 can't, but ruby can | |||
| whiteknight | I don't think so | ||
| particle | that stinks :( | ||
| whiteknight | I'm not 100% sure, you might want to add some tests and maybe file a ticket | ||
| the sleep opcode basically defers to the sleep() function internally, which is OS-dependent | 18:59 | ||
| particle | that'd be an interesting test to write.... | ||
| mikehh | decnum_dynpmcs r178 builds on parrot r40828 - make test - same story all subtests PASS - Failed 17/17 test programs. 0/14629 subtests failed - Ubuntu 9.04 i386 (g++) | ||
| particle checks out pluggable_runcore for cotto | 19:00 | ||
|
19:01
desertm4x joined
|
|||
| darbelo | cotto: pluggable_runcore (r40830) reports "All tests successful." and apparently sane values for 'parrot -Rprofiling examples/pir/sudoku.pir' on OpenBSD amd64 | 19:01 | |
|
19:03
HG` joined
|
|||
| moritz | CLA? | 19:09 | |
| purl | i think CLA is Contributor License Agreement or www.perlfoundation.org/contributor_..._agreement or www.parrot.org/foundation/legal or www.parrot.org/files/parrot_cla.pdf | ||
| Tene | particle: from what I remember of the pdds, parrot *should*, but it currently doesn't comply with that. | 19:10 | |
| mikehh | cardinal (8d2377f) builds on parrot r40828 - make test - 593 tests were run, from 98 files, 511 tests passed, 0 of which were unexpected, 82 tests failed, 82 of which were expected | ||
|
19:11
davidfetter joined
|
|||
| mikehh | cardinal There were 3 files that completely failed to compile: gen_08-class.pir, gen_alias.pir, gen_freeze.pir | 19:11 | |
| cardinal - that's on Ubuntu 9.04 i386 (g++) (there was a partial failure on amd64 that didn't occur here) | 19:13 | ||
| cotto | particle, thanks. | 19:16 | |
|
19:16
Andy joined
|
|||
| mikehh | lua (47c85a4) fails to build on parrot r40828 - Ubuntu 9.04 i386 - first error ./luanumber.pmc:310: error: uninitialised const ‘n’ | 19:23 | |
| particle | cotto: src\\runcore\\cores.c(677) : error C2065: 'Parrot_DynOp_core_cgp_1_5_0' : undeclared identifier | 19:27 | |
| same for _cg_ | 19:28 | ||
| cg and cgp are gcc-only | |||
| mikehh | I need to switch back to amd64 - bbiab | 19:35 | |
| cotto | particle, does that mean those runcores should be #ifdef'd away on win32? | 19:38 | |
| particle | ayep | 19:40 | |
| i believe there's already runcore detection you can use | |||
| check parrot_config | |||
|
19:42
nixfreak_ joined
|
|||
| particle | they should be ifdef'd away for non-gcc, not on win32. we have gcc on win32, but i'm using msvc | 19:43 | |
| nixfreak_ | using win32 , installed parrot , I looked its saved on the Env variables. ran news.pasm didn't work | ||
| do I need to have perl6 as a depend or is perl already in the win32 package ? | 19:44 | ||
| cotto | is HAVE_COMPUTED_GOTO what we're looking for? | 19:47 | |
| darbelo | cotto: Most likely. That's passed as a -D on the Makefile CFLAGS | 19:48 | |
| nopaste | "cotto" at 74.61.2.46 pasted "#ifdef away cp* runcores on platforms without computed goto" (21 lines) at nopaste.snit.ch/17703 | 19:49 | |
| cotto | particle, how's that patch? | ||
| particle | cotto: HAVE_COMPUTED_GOTO doesn't exist in my lib/Parrot/Config/Generated.pm | ||
| i don't have parrot_config since parrot didn't build. | |||
| looking... | |||
| that'll probably work... applying and rebuilding | 19:51 | ||
| nixfreak_ | anyone have an idea about win32 ? | 19:58 | |
| treed | So I'm on Windows right now. | 19:59 | |
| How kind of environment is used to work with parroty stuff on Windows? | |||
| Also, how do I delete messages from purl's queue? | 20:00 | ||
| moritz | treed: you can either use the cygwin stack, or msvc++ | ||
|
20:00
mikehh joined
|
|||
| moritz | 'delete messages' or 'messages delete' | 20:00 | |
| treed | Probably better to do cygwin. | ||
| it's "messages eras" | 20:01 | ||
| erase | |||
| darbelo | treed: I think mingw was also an option. | 20:02 | |
| particle | treed: i use msvc | ||
| some folks use strawberry perl | |||
| treed | Is itfree? | ||
| cotto | If you want the ms toolchain, you can use express edition for no cost. | ||
| particle | yes, msvc 2008 express is free | ||
| and it has a visual debugger that's quite good | |||
| treed | Neat. | 20:03 | |
| particle | but, translationparty.com/#3531871 | ||
| treed | Although I want to get cardinal running on it. | 20:04 | |
| Can you integrate other build systems with it? | |||
| The idea here is to make sure that the Rakefile works on Windows. | |||
| So that I feel better about deleting the old makefile. | 20:05 | ||
| darbelo | treed: Kill now. Apologise later. | ||
| particle | i know nothing of rakefiles. what's the make engine for that? | ||
| treed | It uses Rake, which is ruby. | ||
| particle | well, there's native ruby on windows, so you should be fine | 20:06 | |
| treed | But installing rake? | ||
| I guess I should see if that requires cygwin or something. | |||
| Or if rubygems works without cygwin. | |||
| It's been ages since I've done any dev work on Windows. | 20:07 | ||
| darbelo | treed: Doesn't that put you into a chicken-and-egg situation with you own build system? | 20:08 | |
| treed | Hm? | 20:09 | |
| Rake isn't running on Cardinal | |||
| Cardinal's not that advanced yet. | |||
| And that would make builds even slower. | 20:10 | ||
| darbelo | I mean that you need a working Ruby to build your Ruby :) | 20:11 | |
| treed | Sure. | ||
| You need a working C compiler to compile GCC, too. | |||
| But fortunately, you should be able to build Cardinal on any platform and use it anywhere Parrot works. | 20:12 | ||
| So even if Ruby somehow doesn't work, but Parrot does, once Cardinal's sufficiently advanced, it's all good. | |||
| darbelo is baffled by the idea of bootstrapping interpreters, but is sure he will get over it eventually. | 20:15 | ||
| duk3leto | treed: is cardinal implementing ruby 1.8.x or 1.9.x ? | ||
| particle | almost all c compilers are written in c | ||
| treed | It's targeting 1.9 + future. | 20:16 | |
| So it has at least one feature that's only in ruby SVN. | |||
| darbelo | particle: Yeah. And once you get your C compiler going you write everything else in C, paying the bootstrap tax only once. | 20:17 | |
| treed | I made that call on the basis of the fact that it'll probably be a year or two before Cardinal gets into a reasonable beta state. | ||
| And I'd rather not have to continually play catch-up. | |||
| So we'll start forward looking and hopefully converge with the feature-set at somepoint. | |||
| Although some non-Ruby features are targetted as well. | 20:18 | ||
| We have gather/take, and I'd like to get P6 regex available, too. | |||
| (But behind require statements.) | |||
| (Although gather isn't behind that yet.) | |||
| I want cardinal-only features to require positive acknowledgement. | |||
| So "require 'cardinal/gather'" etc | |||
| So that the coder realizes when he's using them that these features are not portable to other Rubies. | 20:19 | ||
| duk3leto | treed: interesting. thanks for the info, my cow-orker was asking about it. I am trying to recruit new hackers for you :) | 20:20 | |
| treed | Awesome, thanks. | ||
| I intend to write out this policy at some point. | |||
| It's mostly been kicking around in my head. | 20:21 | ||
| I also want to write a timeline policy. | |||
| ie, what circumstances must hold before I'll consider an alpha release, etc. | |||
| cotto | particle, does the win32 build work? | 20:22 | |
| particle checks the vm, running in the background | |||
| cotto: smolder.plusthree.com/app/public_pr...port/26649 | 20:23 | ||
| it compiles, and tests rather well | |||
| cotto | how does it work when run with -Rprofiling ? | ||
| duk3leto | treed: what you just told me about ruby 1.8/1.9/extra features would make a good blog post ;) | 20:24 | |
| cotto | using examples/pir/sudoku.pir for example | ||
| particle | c:\\Users\\particle\\dev\\parrot\\pluggable_runcore>parrot -R=profiling examples\\pir\\hanoi.pir | ||
| main: Unrecognized runcore '=profiling' specified. | |||
| treed | duk3leto: Yeah, that's kinda what's been kicking in my head waiting to be written. | ||
| cotto | -Rprofiling should work | ||
| (no =) | |||
| particle | why does that work? | 20:25 | |
| and you need to update parrot -h | |||
| it does work, btw. | |||
| cotto | will do | ||
| particle | i got 1301 lines in parrot.pprof | 20:26 | |
| cotto | -h doesn't mention = (but I'll add profiling) | ||
| particle | yeah, forgot parrot doesn't like =, but it does like -R profiling | 20:27 | |
| whichithinkismoreclear | |||
|
20:28
theory joined
|
|||
| cotto | That's suspiciously short. Mine's at 1M lines and growing. | 20:29 | |
| Can you nopaste the first 50 or so lines? | |||
| particle | i ran hanoi | ||
| much shorter :) | |||
| darbelo | $ wc -l parrot.pprof | 20:30 | |
| 1566075 parrot.pprof | |||
| cotto | That's the same length I get. Could you nopaste? | ||
| darbelo | *all* of it ? | 20:31 | |
| cotto | particle, not darbelo | ||
| nopaste | "particle" at 76.121.106.245 pasted "hanoi.pir profiling output" (1301 lines) at nopaste.snit.ch/17704 | 20:32 | |
| particle | nopaste.pl++ | ||
| cotto | well crap. | 20:33 | |
| That second column should be the per-instruction timing, not 0. | |||
| darbelo | cotto: examples/pir/sudoku.pir might not be the best thing to ask people to run. | ||
| cotto | darbelo, agreed. | ||
| I guess I'll use parrot | 20:40 | ||
| Parrot_floatval_time until I figure out something less broken. | |||
| particle | gimme a simple c program to compile and run here | 20:41 | |
| nixfreak_ | treed there is a win32 binary for parrot | ||
| treed was just going to build it from source. | 20:43 | ||
| Since Cardinal needs a build_dir still. | |||
| cotto | particle, the code I was trying to use is in config/gen/platform/win32/hires_timer.c | ||
| it should be easy to adapt | |||
| nixfreak_ | in perl installed with the win32 package ? | 20:44 | |
| or do I need to grab perl6 for windows ? | |||
| particle | the parrot windows binary does not install any hlls | ||
| nixfreak_ | I heard cardinal is faster then python using the VM is that true ? | 20:45 | |
| treed | Very, very unlikely. | ||
| Unless you mean once it's been parsed. | |||
| Even still, very unlikely. | |||
| The parser is hideously slow. | |||
| nixfreak_ | bummer | ||
| how about pynie | |||
| purl | it has been said that pynie is code.google.com/p/pynie/ or a Python implementation for the Parrot virtual machine | ||
| treed | The test suite takes 8 minutes for me. | ||
| 7:30 can be shaved off if you pre-compile | 20:46 | ||
| nixfreak_ | interesting | ||
| treed | If you run that same suite with just ruby, it's 2 seconds. | ||
| And I'm pretty sure Python's supposed to be faster than Ruby. | |||
| I haven't tried pynie. | |||
| nixfreak_ | so there really isn't any benefit to parrot yet then ? | ||
| treed | I hope sometime soon we can start fixing Cardinal's parser. | ||
| Not with Cardinal. | |||
| nixfreak_ | please correct if I am wrong | ||
| treed | I can't speak for the other HLLs. | ||
| Cardinal is still very pre-alpha. | 20:47 | ||
| Rakudo seems fairly advanced. | |||
| Tene | treed: I'm waiting for the PGE refactors to happen before I start working on Cardinal's parser. | ||
| treed | But I haven't played with it much, and I'm not a perl guy. | ||
| Tene: *nod* | |||
| nixfreak_ | me either | ||
| darbelo | Lua was pretty advanced too IIRC | ||
| nixfreak_ | yep I heard that is the most stable one | 20:48 | |
| what depends do I need to run pasm files ? | |||
| treed | Just the parrot binary, I think. | ||
| Unless it references other files. | |||
| When cardinal enerates a pir file, the generated files need cardinal.pbc available to run. | 20:49 | ||
| nixfreak_ | its not working for me | ||
| all I am trying to do is run news.pasm | |||
| treed | Dunno what that is. | ||
| nixfreak_ | one sec | ||
| treed | And I don't have a working parrot onmy W7 partition. | ||
|
20:49
payload joined
|
|||
| nixfreak_ | Running Parrot | 20:50 | |
| Once you've installed Parrot, run it. Create a test file called news.pasm. .pasm files contain Parrot Assembly Language (PASM) instructions; this is a low-level language native to the Parrot virtual machine. | |||
| say "Here is the news for Parrots." end | |||
| Here is the news for Parrots. | |||
| Now run this file with: | |||
| $ parrot news.pasmwhich will print: | |||
| treed | say and end on the same line? | ||
| treed doesn't do PASM directly much. | 20:52 | ||
| Try this as news.pir: | |||
| nixfreak_ | no its not two lines | ||
| treed | .sub main :main | ||
| say "Here is the news for Parrots." | |||
| .end | |||
| That's the PIR equiv. | 20:53 | ||
| nixfreak_ | how do compile that ? | ||
| treed | no need | 20:54 | |
| parrot can run it directly | |||
| If you wanted to see it as pasm, I think you could do "parrot --target=pasm news.pir" | |||
| treed can't test this, though. | |||
| particle | you can compile to bytecode with parrot -o whatever.pbc | ||
| nixfreak_ | ??? whats the interperter command | ||
| treed | just parrot | ||
| particle | nixfreak_: parrot foo.pir | ||
| that will run your pir file | 20:55 | ||
| Tene | treed: --target is a PCT thing | ||
| particle | --target=pasm is a ... | ||
| yep | |||
| nixfreak_ | yeah parrot isn't recognized | ||
| but the env is correct , I hate windows | |||
| Tene | parrot -o foo.pasm foo.pir | ||
| will work | |||
| nixfreak_ | k | ||
| particle | nixfreak_: do you have activestate perl installed? | 20:56 | |
| treed | Tene: I use --target on parrot all the time. Do you mean that you need to specify an HLL pbc? | ||
|
20:56
theory joined
|
|||
| nixfreak_ | lol thats what I was trying to ask you guys | 20:56 | |
| Tene | treed: no, you don't. you pass a --target option to a program running on parrot. | ||
| treed | Oh, I see. | ||
| Tene | treed: everything after the .pbc or .pir or whatever are arguments to the program. | 20:57 | |
| particle | nixfreak_: activestate perl 5.* | ||
| there is no perl 5 running on parrot | |||
| anyway, AS perl has a batchfile called 'pwhich' which is a 'which' equivalent | |||
| pwhich parrot | |||
|
20:58
hercynium joined
|
|||
| particle | should tell you where parrot.exe is found in your path | 20:58 | |
|
21:05
rdice joined
21:10
Whiteknight joined
|
|||
| cotto | particle, can you tell me the return value of GetProcessTimes in the profiling code? It may be a configuration issue. I'd assumed that a process would always have permission to query information about itself. | 21:14 | |
| nixfreak_ | ok ahh makes sense C:\\Parrot-1.4.0>parrot -o news.pasm | 21:16 | |
| 'parrot' is not recognized as an internal or external command, | |||
| damn | 21:17 | ||
| I bet I have to install perl6 | |||
| treed | That's not what that error message indicates. | ||
| It's not "Parrot tried to start and failed because something's missing" | |||
| It's "I can't find Parrot." | |||
| particle | nixfreak_: dir parrot.exe | 21:19 | |
| dalek | kudo: 3a274d9 | pmichaud++ | (9 files): Move infix:<+> into the setting, making it available for operator have to modify the Whatever handling slightly (but not too badly). We also take a bit of a performance hit, but so far it doesn't seem too onerous in the spectests. Next step is to do the same for infix:<-> and see what happens. |
||
| kudo: 9976deb | moritz++ | docs/release_guide.pod: [docs] Su-Shee++ volunteers for Feb 2009 release |
|||
| kudo: 62f5110 | pmichaud++ | (7 files): Move infix:<-> into the setting, making it overloadable as well. builtins. |
|||
| purl | builtins are pure perl | ||
| kudo: 32e9d79 | pmichaud++ | (2 files): Move the WhateverCode helper functions out of build/gen_whatever_pir.pl With this change, we simply need to migrate the remaining operators into the setting, and when that's done, we can eliminate build/gen_whatever_pir.pl and build/gen_junctions_pir.pl entirely. |
|||
| kudo: 93cd932 | moritz++ | : Merge branch 'master' of git@github.com:rakudo/rakudo |
|||
| treed | Good god. | ||
| purl | Great Googly Moogly! | ||
| particle | cotto: int ret = GetProcessTimes(GetCurrentProcess(), &creation, &exit, &kernel, &user); | 21:21 | |
| printf("\\n\\n<<<<<%d>>>>>\\n\\n\\n", ret); | |||
| rebuild parrot, nothing like that prints out anywhere | |||
| cotto | I suspect it'll be non-zero | ||
| Only the profiling runcore uses that code. It won't be hit without -Rprofiling | 21:22 | ||
| particle | non-zero means success, and that's what i'd suspect | ||
| >parrot -R profiling examples\\pir\\hanoi.pir | |||
| ...just regular hanoi output... | |||
| cotto | this is a joy | 21:23 | |
| particle | wrapped inside a happiness | 21:25 | |
| particle needs a nap | |||
| darbelo | particle: try with fprintf() | ||
| cotto | If I were playing with it I'd try fprintf to stderr, but I don't have a clue why printf wouldn't work. | 21:26 | |
| I'm so glad I don't regularly work with the windows api. Every time I get near it it makes me sad. | 21:27 | ||
| darbelo | Or maybe 'fprintf(runcore->prof_fd, "\\n\\n<<<<<%d>>>>>\\n\\n\\n", ret);' just to make extra-sure. | ||
|
21:27
bacek joined
|
|||
| particle | fprintf(stderr... nada | 21:28 | |
| nothing doing, darbelo :( | 21:29 | ||
| i'm beginning to think this function isn't called anywhere | |||
| cotto | debuggering time? | 21:30 | |
| particle | after a nap, yes | ||
| particle buggers off & | |||
| cotto | If a certain job possibility pans out, I'll have more access to windows boxes than I'll know what to do with. | 21:31 | |
| Actually I can use QueryPerformanceCounter if GetProcessTimes doesn't work, but I'd really like to avoid the noise from context switches and other processes. | 21:34 | ||
| particle, let me know if the following patch yields a saner profile. | 21:41 | ||
| nopaste | "cotto" at 74.61.2.46 pasted "patch to use QueryPerformanceCounter for profiling" (17 lines) at nopaste.snit.ch/17706 | ||
| dalek | rrot: r40831 | cotto++ | branches/pluggable_runcore/src/runcore/cores.c: [profiling] #ifdef away some runcore init functions on unsupported platforms |
||
|
21:44
payload joined
21:50
joeri joined
|
|||
| nixfreak_ | sweet I got it now | 21:53 | |
| I'm retarted | |||
| thanks particle | |||
|
21:53
beta joined
22:02
japhb joined
|
|||
| bacek | Good morning | 22:04 | |
| purl | And good moroning to you, bacek. | ||
|
22:05
Whiteknight joined
22:09
theory joined,
mokurai joined
|
|||
| Whiteknight | NotFound++ # Kicking ass! | 22:10 | |
|
22:13
cognominal joined
|
|||
| dalek | rrot: r40832 | bacek++ | branches/context_pmc3/src/pmc/exception.pmc: [pmc] Fix check for NULL sub_pmc in Exception.backtrace. |
22:15 | |
| rrot: r40833 | bacek++ | branches/context_pmc3 (19 files): Bring branch up-to-date with trunk. |
22:19 | ||
| rrot: r40834 | bacek++ | branches/context_pmc3/t/native_pbc (4 files): Rebuild native pbc... |
|||
|
22:41
rg1 joined
22:43
jan joined
|
|||
| dalek | kudo: 4276205 | pmichaud++ | (7 files): Move infix:<*>, infix:</>, and infix:<**> to setting. |
22:43 | |
| treed | Lots of rakudo work today | 22:47 | |
| bacek | Yay! TT#154! | 23:00 | |
| Whiteknight: around? | 23:01 | ||
| NotFound: ping | |||
| Whiteknight | hello | 23:02 | |
| purl | niihau, Whiteknight. | ||
| Whiteknight | what do you need bacek? | ||
| bacek | Whiteknight: world domination of course | 23:03 | |
| Whiteknight: can you take a look at TT#154? | |||
| Whiteknight | sure thing | ||
| dalek | cnum-dynpmcs: r179 | darbelo++ | trunk/ (2 files): Make the configuration of decTest a command line option of Configure.pl (default |
||
| bacek | This is almost identical to my current problems in context_pmc3 | 23:04 | |
| Whiteknight | really? | 23:05 | |
| bacek | YA RLY! | ||
| Whiteknight | okay | 23:06 | |
| bacek | PIR "can_handle" method isn't invoked. | ||
| t/pmc/exceptionhandler.t, test 7 | |||
|
23:11
joeri left
23:12
michel__ joined
|
|||
| Whiteknight | let me fire up GDB and see what I can find | 23:12 | |
| bacek | Whiteknight: ok, thanks! | ||
| $dayjob time. | 23:14 | ||
| See you soon! | |||
|
23:21
mokurai joined
|
|||
| Whiteknight | purl msg bacek get_handler IS getting called in test 7. It's returning 0. | 23:27 | |
| purl | Message for bacek stored. | ||
| Whiteknight | purl msg bacek nevermind, you were right. can_handle is not getting called. Some other Sub is being called. I don't know what it is | 23:32 | |
| purl | Message for bacek stored. | ||
|
23:34
bacek joined
|
|||
| Whiteknight | nopaste? | 23:35 | |
| purl | nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) or gist.github.com/ or paste or gtfo | ||
| nopaste | "whiteknight" at 69.249.176.251 pasted "Parrot_PCCINVOKE snapshot for bacek++" (15 lines) at nopaste.snit.ch/17708 | 23:37 | |
| bacek | Whiteknight: erm... Looks about all right... | 23:39 | |
| Whiteknight | bacek: I think I have it figured out | ||
| Parrot_PCCINVOKE only works for C-based methods, not PIR oes | |||
| ones* | |||
| bacek | Yay! Whiteknigh++ | ||
| Whiteknight | if you look at Parrot_PCCINVOKE, it never calls runops() to run the PIR function | ||
| bacek | Yeah... I spent a lot of time inside this function... | 23:40 | |
| But how it works in trunk? Accidentally? | |||
| Whiteknight | let me look | ||
| I don't know how it works in trunk | |||
| doesn't make any sense | 23:41 | ||
| bacek | indeed... Some dark scary magic feel I. | ||
| Whiteknight | UNLESS the context isn't being initialized, there is non-zero garbage in the registers, and that's being returned on failure | ||
| bacek | valgrind conplains about using of uninitilised values in Parrot_cx_find_handler_local | 23:42 | |
| So, you probably right. | |||
| cotto | So it's so broken that it works. Wow. | ||
| bacek | sigh... | 23:44 | |
| Whiteknight | fixed | 23:45 | |
| bacek | Whiteknight: you can add something like 'say "CAN I?"' into sub can_handle and run with -t4. | ||
| Whiteknight | (temporary, hack fix) | ||
| incoming (you're gonna love this) | 23:46 | ||
| bacek hiding under desk | 23:47 | ||
| duk3leto runs for cover | |||
| cotto | oh boy! I love train wrecks. | 23:48 | |
| Whiteknight | then you're going to love this next commit | 23:49 | |
| bacek wrecking train into cotto | |||
| Whiteknight | it's a perfect example of why we need Allison's PCC magic | ||
| "help me Allison-Kenobi, you're my only hope" | |||
| dalek | rrot: r40835 | whiteknight++ | branches/context_pmc3 (2 files): [context_pmc3] hack fix for bacek++. YOU CANNOT UNSEE MY EVIL ONCE YOU HAVE SEEN IT |
||
| treed | o/` Instead of just Obi-Wan, you've got Obi-Two... o/` | 23:50 | |
| Whiteknight | ...probably should have put an XXX comment in there | ||
| find a unicode glyph of a middle finger | |||
| bacek | Whiteknight: ☢☢☢☢ | 23:51 | |
| Whiteknight | perfect! | ||
| purl | perfect is the enemy of good enough. | ||
| Whiteknight | The packfile tests all fail on my machine now | 23:53 | |
| cotto | I ❤ Unicode. | ||
| Whiteknight | but they are the only ones | ||
| bacek | In ☭, ☢ and ☣ ☞☠ | ||
| mk_native_pbc... | |||
| Whiteknight: t/compilers/pge/06-grammar failing on my box. But it always produce different results... | 23:59 | ||