|
www.parrot.org/ | Parrot 1.4.0 "Mundo Cani" Released! Set by moderator on 21 July 2009. |
|||
| Coke | (while.test just segfaulted during a full run. run it by hand, it passes.) | 00:01 | |
| treed | I have a test on cardinal that periodically fails. Running it by hand is about the same. | 00:02 | |
| I got a chance to see the failure once. | |||
| The failing test is due to a blank line in the output. | |||
| but I swear I saw that line start to appear and then disappear | |||
| Coke | mine is actually segfaulting. =-) | ||
| treed | This only happens some of the time. | ||
| So I'm guessing that it must be something on my system being weird? | 00:03 | ||
| But it's always the same test. | |||
| Coke | if you can't find what makes it reproducible, goodness knows. | 00:04 | |
| might be another system it fails consistently on. I had that issue ages ago in partcl, where things would fail on darwin, but not linux. | 00:05 | ||
| Coke guesses he's not going to bother cutting a partcl release. | 00:06 | ||
| ~~ | |||
| asciiville | I'm not exactly sure how to ask this, but does anyone have an executive summary of what a PMC looks | 00:25 | |
| like to a shared library during a NCI operation? | |||
| I'm working with the <parrot src>/etc/SQLite3 source, and it appears that libsqlite3.so doesn't | |||
| like any of the PMCs I give to it during an NCI op. I have a workaround currently on github, but | |||
| want to make sure I'm heading down the right track. | |||
| sorry <parrot src>/etc/SQLite3 should be <parrot src>/ext/SQLite3 :) | 00:31 | ||
|
00:58
hoelzro joined
|
|||
| hoelzro | hello parrot folk | 00:59 | |
| is it possible to turn off certain opcodes at runtime? | |||
| cotto | hoelzro, The security PDD talks about that, but there's no implementation afaict. | 01:00 | |
| hoelzro | curses! | ||
| oh well | |||
| cotto | You could probably do something ugly from C if you really need to, but you get to keep the pieces if it breaks. | ||
| hoelzro | that's the current plan then | 01:01 | |
| cotto | hoelzro, what's your interest in this functionality? | ||
| hoelzro | cotto: I want to create an online REPL for Rakudo | ||
| cotto | Yes, but I don't know if there's even an eta. | ||
| hoelzro | like tryruby for Ruby | ||
| cotto | You could hop over to #perl6. They have a (afaict) safe evalbot. | 01:02 | |
| hoelzro | I'll ask about it | ||
| thanks | |||
| cotto | np. | ||
| Thanks for your interest. | 01:03 | ||
| hoelzro | Damian Conway and Patrick Michaud got me fired up at OSCON =) | ||
| cotto | I wish I could have seen Conway. | 01:15 | |
| hoelzro | he was pretty awesome | ||
| cotto | but doing that without actually going to OSCON is tricky | ||
| What'd he talk about? | |||
| hoelzro | I saw him for a Perl 6 update and for API design | 01:16 | |
| Tene | I read "fired up" as just "fired" the first couple of times I read that. | 01:25 | |
| hoelzro | that would have been bad =P | 01:27 | |
| treed | Those troublemakers. | 01:30 | |
|
01:30
TiMBuS joined
|
|||
| cotto | You can't trust those shady characters. | 01:32 | |
|
01:32
skv_ joined,
MoC joined
01:43
tetragon joined
01:50
tetragon_ joined
|
|||
| mikehh | codetest, benchmark and examples_tests FAIL, All others PASS (pre/post config, smolder, nqp_test fulltest) at r40272 - Ubuntu 9.04 amd64 | 02:09 | |
| codetest is a space after parens in imcc.y | 02:10 | ||
| the others are same as prev fails in r40269 above | 02:12 | ||
| cotto | Yay! I got callgrind to spit out understandable output for a simple C program! | 02:13 | |
| World domination is one step closer. | 02:14 | ||
|
02:28
mikehh_ joined
02:38
mokurai joined
02:40
mokurai1 joined
02:41
mokurai1 left
02:42
janus joined
03:20
donaldh joined
03:59
theory joined
04:06
theory joined
04:22
Andy joined
|
|||
| Andy | So does everyone's test fail a raft of packfile errors? | 04:24 | |
| nopaste? | |||
| purl | somebody said nopaste was 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 | "Andy" at 76.245.3.1 pasted "my test failures" (24 lines) at nopaste.snit.ch/17389 | 04:25 | |
|
04:30
bacek joined
|
|||
| bacek | yak... Do we have backup for moritz++ irclog? | 04:31 | |
| dalek | rrot: r40273 | petdance++ | trunk/t/pmc (7 files): fixed the filetypes for vi |
04:36 | |
| rrot: r40274 | petdance++ | trunk/t/pmc/array.t: fixing filetype for vim |
04:42 | ||
|
05:07
Zak joined
05:23
hoelzro joined
05:27
jjore joined
05:47
hoelzro joined
05:57
Zak joined
06:05
payload joined
|
|||
| Tene | Andy: also tools/dev/nopaste.pl | 06:10 | |
| cotto | paste | 06:24 | |
| paste? | |||
| purl | paste is (see: nopaste) or like glue but a little safer to sniff. or nopaste.snit.ch:8001/ or 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 | ||
| dalek | tracwiki: v1 | cotto++ | CallgrindFormat | 07:13 | |
| tracwiki: initial version | |||
| tracwiki: trac.parrot.org/parrot/wiki/Callgr...ction=diff | |||
|
07:18
patspam joined
07:20
donaldh joined
07:23
brooksbp joined
07:50
iblechbot joined,
bacek joined
|
|||
| cotto | hi bacek | 07:52 | |
|
07:59
contingencyplan joined
|
|||
| dalek | tracwiki: v2 | cotto++ | CallgrindFormat | 08:09 | |
| tracwiki: add annotated body of a profile | |||
| tracwiki: trac.parrot.org/parrot/wiki/Callgr...ction=diff | |||
| tracwiki: v3 | cotto++ | CallgrindFormat | |||
| tracwiki: fix numbers | |||
| tracwiki: trac.parrot.org/parrot/wiki/Callgr...ction=diff | |||
|
08:11
cognominal joined
08:14
ewilhelm_ joined
08:15
tokuhirom_ joined
08:36
chromatic joined
|
|||
| cotto | chromatic, trac.parrot.org/parrot/wiki/CallgrindFormat | 08:39 | |
| It doesn't cover everything we'd need to use but it's a good start. | 08:40 | ||
| chromatic | Do you feel like you understand it sufficiently? | 08:41 | |
| cotto | I haven't played with how it tracks jumps, but yes apart from that. | 08:42 | |
| chromatic | That'll be a good first cut then. | 08:43 | |
| We can get it to detect and report regular function calls. | |||
| cotto | Yup. That'll be a great first step. | 08:44 | |
| chromatic | Okay. I'll work on the refactoring tomorrow, so that we can work on this first reporting step next week. | 08:45 | |
| cotto | I still think it's a good idea to use an intermediate format that's post-processed into something Callgrind-compatible, though. | ||
| to avoid storing more state than necessary | 08:46 | ||
| chromatic | Write up that format and we can work on it. | 08:47 | |
| cotto | You mean a more formal version? | ||
| nm. You were referring to the intermediate format. | |||
| chromatic | Yes. | ||
| cotto | ok | 08:48 | |
|
08:49
payload joined
08:51
payload joined
|
|||
| dalek | rrot: r40275 | fperrad++ | trunk/compilers/imcc/imcc.y: [codingstd] fix c_parens |
09:02 | |
| rrot: r40276 | chromatic++ | trunk/compilers/imcc/imcparser.c: [IMCC] Regenerated compilers/imcc/imcparser.c, as per note in r40275 commit. |
09:09 | ||
|
09:52
payload1 joined
10:10
mikehh_ joined
10:12
cognominal joined
|
|||
| dalek | rrot: r40277 | allison++ | trunk/ports/ubuntu/changelog: [ubuntu] Since there are no longer any changes specific to Ubuntu, the |
10:13 | |
|
10:16
Whiteknight joined
|
|||
| dalek | rrot: r40278 | whiteknight++ | trunk/compilers/pirc/src/pircompunit.c: [bsr_jsr_ret] remove reference to ret from PIRC |
10:33 | |
|
11:05
mikehh_ joined
11:20
donaldh joined
|
|||
| dalek | rrot: r40279 | whiteknight++ | trunk/examples/benchmarks/stress.pasm: [bsr_jsr_ret] fix an issue with the benchmark tests that I didn't see before. kid51++ (and fperrad++ for the last fix) |
11:27 | |
| rrot: r40280 | whiteknight++ | branches/kill_stacks: [kill_stacks] creating a new branch to rip out stacks |
11:31 | ||
|
11:38
masak joined
|
|||
| dalek | rrot: r40281 | whiteknight++ | branches/kill_stacks: [kill_stacks] not ready for this yet, apparently. deleting branch, will get back to it later. |
11:51 | |
|
12:15
iblechbot joined
12:22
MoC joined
12:35
fdorothy joined
|
|||
| mikehh | examples_tests FAIL, All others PASS (pre/post config, smolder, nqp_test fulltest) at r40281 - Ubuntu 9.04 amd64 | 12:41 | |
| nopaste | "mikehh" at 90.209.201.189 pasted "examples_tests failure at r40281" (27 lines) at nopaste.snit.ch/17390 | 12:43 | |
| moritz | Whiteknight: just wanted to tell you that rakudo doesn't use push{action,mark} and popmark | 12:44 | |
| Whiteknight | thanks moritz | ||
|
12:48
ruoso joined
|
|||
| mikehh | are there any (dis)advantages building with g++ over gcc - I know NotFound prefers it | 12:52 | |
| dalek | rrot: r40282 | whiteknight++ | trunk/t/examples/subs.t: [bsr_jsr_ret] fix a problem in the examples tests. Thanks mikehh++ |
||
| jonathan | Whiteknight: Only time I used any of those, was when I used pushmark and popmark in the .Net => PIR translator. | 12:54 | |
| Whiteknight | okay, thanks | ||
| jonathan | Whiteknight: IIRC, I *may* have been able to eliminate the need for them with some smarter static analysis. | ||
| Though mapping .Net's exception model on to Parrot's had already been lots of effort. :-) | 12:55 | ||
| Coke updates parrot and finds a broken partcl. | 12:57 | ||
| Whiteknight | Coke: so, the normal? | ||
| Coke | ayup. | 12:58 | |
| apparently I had used bsr in a few places. | |||
| Whiteknight | the horror | 12:59 | |
| mikehh | rakudo (240b984) builds on parrot r40269 - make test PASS, make spectest (up to 27743) PASS - t/spec/S06-advanced_subroutine_features/lexical-subs.rakudo - TODO passed: 4 | 13:00 | |
| jonathan | That'll be the thing chromatic++ fixed yesterday :-) | 13:01 | |
| mikehh | Coke: where's the best place to get info on partcl so I can include it in my testing routine | ||
| Coke | code.google.com/p/partcl/issues/detail?id=88 | 13:02 | |
| mikehh | sorry that was parrot r40281 for rakudo | ||
| Coke | mikehh: code.google.com/p/partcl/ | ||
| mikehh | ok I will have a look | 13:03 | |
|
13:05
kid51 joined
|
|||
| Coke | if you're feeling particularly masochistic, 'make test' and 'make spectest' are both interesting. 'make specinfo' is like spectest, but updates the files in docs/ so you can compare to previous results. | 13:05 | |
| (showing more clearly when spec test files start regressing) | |||
| kid51 | Good morning all | 13:06 | |
| Since Whiteknight removed 3 opcodes yesterday, do we have to run 'make opsrenumber' | 13:07 | ||
| ? | |||
|
13:07
tetragon joined
|
|||
| Whiteknight | no, I ran that in branch | 13:11 | |
| you might need to make realclean | |||
| kid51 | But I see this in trunk: | 13:13 | |
| $ grep -nE 'bsr|jsr|ret' src/ops/ops.num | |||
| 25:cpu_ret 2 | |||
| 40:bsr_i 16 | |||
| 41:bsr_ic 17 | |||
| 42:ret 18 | |||
| 45:local_return_p 21 | |||
| 46:jsr_i 22 | |||
| 47:jsr_ic 23 | |||
| 63:returncc 39 | |||
| 69:set_returns_pc 45 | |||
| Coke | GAH | ||
| kid51 | 82:rethrow_p 58 | ||
| 812:pic_set_returns___pc 788 | |||
| I'm not an expert here, but it looks like some of the deleted codes are still numbered. | |||
| Whiteknight | kid51: I don't have those in my trunk | 13:14 | |
| kid51 | Alright, maybe I'm looking at the wrong box. | 13:15 | |
| I thought I had updated on both Linux and Darwin. | |||
| My error; I hadn't updated on Darwin. | 13:16 | ||
| Whiteknight | oh, okay | ||
| dalek | kudo: 4c31fb7 | moritz++ | build/PARROT_REVISION: bump PARROT_REVISION to get better handling of lexical subs |
13:18 | |
|
13:37
rg joined
13:42
fperrad joined
14:11
szabgab joined
14:14
asciiville joined
14:36
hoelzro joined
15:13
hoelzro joined
15:17
szabgab joined
15:20
donaldh joined
15:48
mikehh_ joined
15:52
mikehh__ joined
16:05
kid51 joined
16:44
szabgab joined
16:47
Psyche^ joined
17:01
chromatic joined
17:06
tetragon_ joined
17:22
payload joined
17:26
mokurai joined
17:56
Whiteknight joined,
Andy joined
18:13
tetragon joined
|
|||
| dalek | TT #876 created by whiteknight++: Deprecate pushaction, pushmark, popmark | 18:21 | |
|
18:25
iblechbot joined
19:01
Zak joined
19:20
donaldh joined
|
|||
| dalek | rdinal: 5b4c4e4 | treed++ | src/classes/Array.pir: Exlicitly make Array.size respond to elements vtable. |
19:21 | |
|
19:22
Zak joined
|
|||
| dalek | rrot: r40283 | whiteknight++ | branches/kill_stacks: creating a branch to remove stacks |
19:30 | |
| treed | Can anyone comment on the relative speed of using an opcode vs. just calling the method that provides that vtable? | 19:35 | |
| i.e. Which, if either, is faster? | 19:36 | ||
| (I expect that using a vtable is faster than finding a method.) | 19:38 | ||
| moritz too | 19:39 | ||
| Whiteknight | finding the method isn't so bad, it's passing the parameters that is slow | 19:49 | |
| well, passing and processing them | |||
| treed | And you don't have to do that with a vtable? | ||
| Whiteknight | well, yes and no | 19:50 | |
| purl | Go not to the Elves for counsel, for they shall say both no and yes. | ||
| treed | Haha. | ||
| Thanks, perl. | |||
| purl | |||
| purl | yes, treed? | ||
| Whiteknight | a VTABLE written in C doesn't need argument processing. A VTABLE written in PIR does | ||
| in that case, a VTABLE written in PIR is probably going to be slower then a METHOD written in PIR because it needs to recurse into a new runloop to execute it | 19:51 | ||
| treed | Well, in my case, any vtable will be in PIR. | ||
| Huh. | |||
|
19:51
Zak joined
|
|||
| Whiteknight | if you take a look in src/pmc/object.pmc, calling a VTABLE on an object actually calls a C VTABLE, which in turn calls a new runloop to execute the PIR override | 19:52 | |
| whereas calling a METHOD written in PIR happens in the current runloop | |||
|
19:56
Zak joined
|
|||
| moritz | wouldn't it be more efficient to detect that on the caller side and continue within the current runloop? | 19:58 | |
| or would that slow down all the C VTABLEs too much? | |||
| dalek | rdinal: 2527236 | treed++ | src/classes/Array.pir: Undo the last commit. treed-- |
20:01 | |
| jonathan | One issue is that we don't know if the C vtable needs to call the PIR and get the value back and twiddle it, or something. | 20:02 | |
| Not always anyway. Though usually that's not needed. | |||
| Even if you could avoid spawning another runloop though, I fear that the end result would still be that the parameter passing was the costly part. | 20:03 | ||
| If I understand the motivation for L1 correctly, vtables would be written in that in the future? In which case we may lose the calling boundary issue. | |||
| treed | L1? | 20:04 | |
| purl | well, L1 is a hypothetical language that would be used to implement PMCs and PIR-visible ops so that they could all be easily jitted. or irclog.perlgeek.de/parrot/2009-04-21#i_1083550 or rt.perl.org/rt3/Ticket/Display.html...txn-471982 or magical unicorns and flying puppies. | ||
| dalek | rrot: r40284 | whiteknight++ | branches/kill_stacks (5 files): [kill_stacks] reimplement pushaction, pushmark, and popmark opcodes in terms of a regular RPA PMC instead of stacks |
20:05 | |
| Whiteknight | moritz: the problem is that some VTABLEs are called from C code inline, so we can't just pass the pointer back to the runloop | 20:06 | |
| jonathan wonders if the puppies are flying because they grew wings, or because they were kicked off a cliffe. | |||
|
20:07
donaldh_ joined
20:13
aardvark joined
20:15
Zak joined
|
|||
| dalek | rrot: r40285 | whiteknight++ | branches/kill_stacks (6 files): [kill_stacks] Kill the stack system. Kill it dead. |
20:16 | |
| Whiteknight | jonathan: Yes, it's the intention that L1 will be used to implement VTABLEs and Ops, so we can avoid runloop recursion | ||
| or, at least, avoid most cases of it | |||
| dalek | rrot: r40286 | whiteknight++ | branches/kill_stacks (3 files): [kill_stacks] some miscellaneous cleanups |
20:19 | |
| Whiteknight | that whole process was actually much faster then I was expecting | 20:20 | |
| cotto | msg darbelo In the future, try to avoid blog urls that end in a dot. They're easy to misparse. | 20:24 | |
| purl | Message for darbelo stored. | ||
| cotto | Whiteknight, in what cases won't L1 avoid runloop recursion? | 20:32 | |
| Whiteknight | cotto: anywhere that we are calling into a VTABLE from C will cause a recursion | 20:33 | |
| dalek | rrot: r40287 | whiteknight++ | branches/kill_stacks (8 files): [kill_stacks] remove some of the remaining references and support infrastructure for POP(). We don do dat no mo. |
||
| Whiteknight | the solution is to just write more and more and more in L1 instead of C | 20:34 | |
| cotto | true | ||
|
20:38
Zak joined
20:40
Zak joined
|
|||
| donaldh_ | When I run rakudo to generate PIR and then try to execute the PIR I get Class '[ 'parrot' ; 'Perl6MultiSub' ]' not found. | 21:04 | |
| moritz | looks like some missing loalib statements, or whatever they are called | ||
| donaldh_ | I can't for the life of me figure out why. | ||
| moritz | donaldh_: irclog.perlgeek.de/perl6/2009-06-30#i_1276192 | 21:07 | |
| donaldh_ | moritz: thanks, that works. | 21:08 | |
| It's strange that it works, since I had already straced parrot and watched perl6_group.so getting loaded. | 21:11 | ||
| moritz | maybe in the wrong namespace/HLL/whatever? | 21:12 | |
| donaldh_ | I guess it must be. | 21:15 | |
|
21:17
bkuhn joined
|
|||
| bkuhn | Hey, if I want to take a look at pynie, which codebase should I be looking at: the one in the parrot SVN or the one in the Google Code pynie-specific SVN? | 21:18 | |
| moritz | bkuhn: I don't think there are pynie sources left in the parrot repo. | 21:19 | |
| jonathan | bkuhn: Hi! I was under the impression that all languages had left Parrot SVN. | ||
| moritz | bkuhn: not in any version since 1.0 | ||
| bkuhn | hrm, maybe my parrot checkout is old. :) | ||
| jonathan | bkuhn: So almost certainly you want the one on Google Code. | ||
| :-) | |||
| moritz | and update to a newer parrot ;-) | 21:20 | |
| bkuhn | ah, moritz, the weirdness is that git-svn apparently left behind the languages dir! | 21:23 | |
| moritz | bkuhn: ah right, git does not care about directories at all, contrary to svn | 21:24 | |
| bkuhn looks for a git command that will throw away all untracked files. | 21:27 | ||
| Ah git clean | |||
| Tene | donaldh_: the issue is that "load_bytecode 'perl6.pbc'" is being called from the 'perl6' HLL instead of the 'parrot' HLL. | ||
| donaldh_: and that means that the types it ends up loading from the dynpmc .so get put in the 'perl6' HLL | |||
| This is a parrot bug. | 21:28 | ||
| donaldh_ | Tene: thanks, though it looks like the intended behaviour since the .loadlib calls are after the .HLL perl6 directive in perl6.pir | 21:30 | |
| Is the bug that they end up in the parrot HLL in a normal invocation ? | 21:31 | ||
| jonathan | I'm not sure if there's a way to specify the HLL a PMC should live in. | 21:32 | |
| Tene | donaldh_: rakudo doesn't currently have a workaround for this parrot bug in its generated PIR. | ||
| jonathan: there isn't, and there should be. | 21:33 | ||
|
21:42
Zak joined
|
|||
| bkuhn | Hey, is the PCT not installed by default when you do a 'make install'? | 21:42 | |
| asciiville | Does anyone know of any current information available regarding statement of direction or standardization for Parrot database interaction? | 21:52 | |
|
21:53
Zak joined
21:59
Zak joined
22:02
kid51 joined
|
|||
| dalek | rrot: r40288 | whiteknight++ | trunk (83 files): [kill_stacks] merge in the kill_stacks branch. Stacks are no more |
22:04 | |
|
22:08
Zak joined
|
|||
| dalek | rrot: r40289 | whiteknight++ | branches/bsr_jsr_ret: [bsr_jsr_ret] remove this unnecessary branch, already merged to trunk |
22:08 | |
| rrot: r40290 | whiteknight++ | branches/kill_stacks: [bsr_jsr_ret] remove this unnecessary branch, already merged to trunk |
|||
|
22:18
theory joined,
Zak joined
22:37
rg1 joined
|
|||
| treed | Is it possible to get a key that was given to a subrule? | 22:40 | |
| mikehh | All tests PASS (pre/post config, smolder, nqp_test fulltest) at r40290 - Ubuntu 9.04 amd64 | 22:54 | |
|
23:18
tetragon joined
23:21
donaldh joined
|
|||
| kid51 | confirmed mikehh's result on Linux/i386 at r40290 | 23:26 | |
|
23:31
patspam joined
|
|||
| mikehh | Oh and rakudo (4c31fb7) builds on parrot r40290 - All tests PASS make test/ make spectest (up to r27748) | 23:32 | |
| I couldn't gewt partcl to build - it seems to require an installed parrot | 23:33 | ||
| s/gewt/get/ | |||
| kid51 | ISTR discussion on list to that effect | 23:34 | |
| ... but don't rely on my memory | |||
| mikehh | it broke with Can't open perl script "/usr/local/lib/parrot/1.4.0-devel/tools/dev/gen_makefile.pl": No such file or directory | 23:35 | |
| kid51 | Hmm. That 1.4.0-devel looks a bit suspicious | 23:36 | |
| mikehh | I used something like perl Configure.pl --parrot-congig=../parrot/parrot_config | ||
| s/congig/config/ | 23:38 | ||
| I was going to mess around with Configure.pl to make it more like the rakudo one - but got sidetracked | 23:39 | ||
| A website I am supposed to help look after just got wiped - the person responsible is in Hospital at the moment and the hosting company just cleared it out | 23:44 | ||
| kid51 | bad luck and trouble! | ||
| mikehh | I am on their contact list but never heard from them - they claim they have no backups anymore | ||
| I have my own but have to upload them - it's going to takre an age | 23:45 | ||
| kid51 | Well that's a hosting company that doesn't deserve new business. | ||
| kid51 witnesses cloudburst in Brooklyn | 23:46 | ||
| mikehh | I got hold of the person I normally deal with - a senior VP, and I think some heads are going to roll | ||
| The people I work for there - have been major customers for years | 23:47 | ||
| even though this is a more personal site | 23:48 | ||
| their other sites are ok | 23:49 | ||
| Khisanth | hmm thunder while it was bright and sunny was a lot more unusual :) | 23:51 | |
| kid51 | Khisanth: You in NYC? Have we met? | 23:52 | |
| Khisanth | I am in Brooklyn but no | 23:53 | |
| kid51 | Am always trying to identify people in area for F2F meetups | 23:55 | |