|
Parrot 3.9.0 "Archaeopteryx" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 19 October 2011. |
|||
|
01:29
bacek_at_work joined
01:32
Coke joined
01:34
aloha joined
01:44
aloha joined
01:46
Coke joined
01:47
bacek_at_work joined
01:59
Coke joined
02:31
benabik joined
|
|||
| dalek | kudo/nom: b9f048b | Coke++ | t/spectest.data: track failure, run fudged tests. |
02:34 | |
|
04:50
nbrown joined
05:05
bacek_at_work joined
05:06
aloha joined
|
|||
| dalek | rrot: 62b3a6c | petdance++ | / (3 files): made the bocksize function PARROT_CONST_FUNCTION |
05:34 | |
| rrot: 36cdff3 | petdance++ | / (2 files): Outbound arg in Parrot_io_read_buffer is now ARGOUT. Consted local vars. |
|||
|
06:59
SHODAN joined
07:13
dod joined
07:15
mj41 joined
|
|||
| dalek | kudo/nom: 41441b8 | moritz++ | src/ (5 files): native int variant of postcircumfix:<[ ]> Contains a patch to Perl6::Actions by jnthn++ |
08:05 | |
|
08:14
jsut joined,
lucian joined
|
|||
| dalek | kudo/nom: f77becd | jnthn++ | / (6 files): Merge branch 'nom' of github.com:rakudo/rakudo into nom |
10:21 | |
|
10:56
jsut_ joined
11:38
Psyche^ joined
12:02
benabik joined
|
|||
| dalek | kudo/nom: 0698d30 | mls++ | src/Perl6/Actions.pm: rework when/default implementation so that the call to succeed() happends outside of the block A block can be left by an exception handler or a call to leave(), but we still need to call succeed() in those cases. We now also check the return value of the block. |
12:07 | |
| kudo/nom: a968837 | jnthn++ | src/ops/perl6.ops: Harden decontainerize op to avoid segfaults. |
|||
| kudo/nom: 5206c8e | jnthn++ | src/Perl6/Actions.pm: A few small cleanups after the mls++ patch, mostly just to give variables more meaningful names (like try not to store something that's not a block in a variable with block in its name :-)). |
|||
| kudo/nom: 0cce1ae | mls++ | src/Perl6/Actions.pm: do not catch control exceptions with try {} |
12:19 | ||
|
12:26
mtk joined
12:42
whiteknight joined
|
|||
| dalek | TT #783 closed by whiteknight++: Lack of garbage-collectible packfiles can lead to memory leaks | 12:54 | |
| TT #783: trac.parrot.org/parrot/ticket/783 | |||
| TT #1869 closed by whiteknight++: Move Parrot::Embed into its own repo | |||
| TT #1869: trac.parrot.org/parrot/ticket/1869 | |||
| whiteknight | good morning, #parrot | 12:55 | |
|
13:03
PacoLinux joined
13:11
smash joined
13:12
benabik joined
|
|||
| benabik | o/ #parrot | 13:13 | |
| whiteknight | hello benabik | ||
| benabik | whiteknight: How's life? | ||
| whiteknight | benabik: good. We went out looking at houses yesterday, again | 13:14 | |
| Our realtor has turned us into her life's mission, so we spent most of the afternoon at looked at 13 houses | |||
| benabik | Wow! Whirlwind tour. | ||
| whiteknight | srsly. We are putting in an offer on the best one tonight. If that doesn't go well, we're going to put in an offer on the next one down the list | 13:15 | |
| benabik | Yeah, sounds like real estate. Still finding houses you like, I hope. | ||
| whiteknight | we've got 5 we would be happy to move into, assuming they all stay on the market long enough. I asked and it's not legal for us to float more than one offer at a time | ||
| benabik | Well, I think it's legal if you're willing to buy more than one. :-D | 13:16 | |
| whiteknight | oh yes, finding houses we like has never been the problem. It's the people who own the houses who have always been the problem | ||
| dalek | rrot/whiteknight/tt_1910: f7842f8 | Whiteknight++ | t/src/extend.t: fix a stupid mistake. PackFile* != Parrot_PackFile. Some compilers didn't care that we mixed pointer types, but g++ sure does |
||
| smash | hello everyone | 13:17 | |
| whiteknight | hello smash | ||
| benabik | o/ smash | ||
| dalek | rrot: f7842f8 | Whiteknight++ | t/src/extend.t: fix a stupid mistake. PackFile* != Parrot_PackFile. Some compilers didn't care that we mixed pointer types, but g++ sure does |
13:27 | |
| rrot: 3e1bbd4 | Whiteknight++ | / (43 files): Delete file which has been deleted from master, but was not deleted in the branch |
|||
| benabik | whiteknight: Did you just merge tt_1910? The message "Delete file which has been deleted from master" is a little odd to see on master. :-D | 13:28 | |
| moritz | whiteknight: merging branches into master with --no-ff makes it look less odd | 13:29 | |
| benabik | Mostly because I saw branch: A, master: AB. | 13:31 | |
| whiteknight | I committed it on master | ||
| because the file was deleted on master | |||
| I probably could have worded it differently | |||
|
13:36
lucian joined
|
|||
| dalek | TT #1910 closed by whiteknight++: Review and Dissolve old embedding API | 13:42 | |
| TT #1910: trac.parrot.org/parrot/ticket/1910 | |||
| benabik | And now Parrot::Embed definitely needs a rewrite. | 13:44 | |
| dalek | kudo/nom: ab61a0f | mls++ | src/ (3 files): Rework exception handling. Now follows the specifiaction and unrolls at the end of the exception. We use two new opcodes for this: perl6_invoke_catchhandler and perl6_rethrow_skipnextctx. The former restores the call chain that was in use when the exception was thrown, the latter is used to skip the unwanted frame when an exception has to be rethrown. |
13:46 | |
| kudo/nom: 3e7f4bd | jnthn++ | src/core/Exception.pm: Correct indentation. |
|||
| kudo/nom: 1904776 | jnthn++ | src/Perl6/Actions.pm: Block that we left through a CATCH should evaluate to the caught exception (note, some missing type check stuff yet). |
|||
|
13:49
lucian_ joined
13:53
bluescreen joined
13:58
benabik_ joined
|
|||
| atrodo | =~ | 14:10 | |
| whiteknight | benabik: yes, it does. I attempted it at one point, but I was far out of my depth. Parrot::Embed is very messy, and XS is completely foreign to me | 14:20 | |
| benabik | whiteknight: That's about what I got out of it too. Looks like a complete rewrite is needed at this point due to the extreme differences between old and new embed. Perl-side API might be able to be kept intact, but the internals need _work_. | 14:22 | |
| Although XS didn't look too too bad. There are definitely some tricks to it, but I was able to cargo-cult the hairiest bits from the existing code. | 14:23 | ||
| Although I did end up with some strange error about things being the wrong type at destruction. I dunno. | 14:29 | ||
|
14:41
JimmyZ joined
|
|||
| dalek | rrot/whiteknight/eval_pmc: 86d410e | Whiteknight++ | / (7 files): Remove Eval PMC and all mentions of it (surprisingly few) from the source. Some tests fail. Most of those were relying on behavior of Eval to implement invoke vtable, which packfileview does not reproduce. Those tests are in error and need to be reviewed |
14:43 | |
| benabik | What did Eval do? Was it a wrapper around Packfile*? | 14:45 | |
| And Eval.invoke() could set off :load subs and call main⦠But I guess it's better to make that sequence explicit. | 14:46 | ||
| benabik is talkative because he doesn't want to write his thesis pre-proposal. | |||
| Coke | if you invoked the old style PIR compiler, you'd get an Eval back. (which usually had a Sub at index 0, that you could then run.) | 14:47 | |
| benabik | Yeah. When I was working on nqp_pct, I added a stage that took a Packfile and returned the main sub from it. | 14:49 | |
| PackfileView, I think. | |||
|
14:50
nbrown joined
|
|||
| whiteknight | Eval.invoke would invoke the :main sub. :load subs are exected as soon as the packfile is loaded | 14:54 | |
| benabik | Er, I meant PackfileView.invoke. Blah. | 14:55 | |
| whiteknight | Eval assumed all that stuff was done automatically. PackfileView doesn't assume anything, and provides interfaces to invoke things you want, when you want | ||
| dalek | rrot/mls/directaccess: e08823b | mls++ | compilers/pct/src/PAST/Node.pir: fix stupid copy&paste bug |
14:58 | |
| TT #488 closed by whiteknight++: Parrot::Interpreter - cannot load PCT.pbc - cannot find PCT/Grammar.pbc | 15:01 | ||
| TT #488: trac.parrot.org/parrot/ticket/488 | |||
| whiteknight | msg cotto Can you take a look at TT #1515? I can address this kind of thing when I do some of the PCC-related work I have planned, but I want to know whether this should be permissable or whether duplicate named args should continue being an error | ||
| aloha | OK. I'll deliver the message. | ||
| benabik | Ack. I thought I had gotten all the P::E TTs. | 15:02 | |
| whiteknight | it's okay, not all of them are named in an obvious way | 15:09 | |
| benabik | I think I got the last one now. | 15:11 | |
| whiteknight | there will always be stragglers | 15:13 | |
| dalek | TT #1811 closed by whiteknight++: r48674 broke int/float division in partcl-old | 15:17 | |
| TT #1811: trac.parrot.org/parrot/ticket/1811 | |||
| TT #1990 closed by whiteknight++: GC bug with new embedding API | |||
| TT #1990: trac.parrot.org/parrot/ticket/1990 | |||
| TT #292 closed by whiteknight++: [CAGE] Update all Pod documentation to use sane, modern headings | |||
| TT #292: trac.parrot.org/parrot/ticket/292 | |||
| TT #537 closed by benabik++: Parrot::Interpreter - crash when calling new twice | |||
| TT #537: trac.parrot.org/parrot/ticket/537 | |||
| TT #1298 closed by whiteknight++: opcodes, warnings, and exceptions | |||
| TT #1298: trac.parrot.org/parrot/ticket/1298 | |||
| TT #273 closed by whiteknight++: Fix system-dependent code in src/gc/system.c | |||
| TT #273: trac.parrot.org/parrot/ticket/273 | |||
|
15:19
bluescreen joined
|
|||
| Coke | was parrot/embed.h recently not-installed? | 15:31 | |
| whiteknight | I merged the TT #1910 branch this morning, that file was deleted | 15:32 | |
| dalek | TT #2134 closed by benabik++: Move src/pbc_disassemble.c to frontend/pbc_disassemble/main.c | 15:33 | |
| TT #2134: trac.parrot.org/parrot/ticket/2134 | |||
| Coke | did you test any languages that use dynpmcs? | ||
| the .c files that are generated still refer to parrot/embed.h | |||
| figures the one time I try to build partcl in a year, and it's /freshly/ broken. ;) | |||
| benabik | Hah. | ||
| whiteknight | hmm...the dynpmcs in the repo still generate fine. That's weird. I'll look into it | ||
| Coke | I was just doing a fresh build on partcl-old to verify TT#1811 | 15:34 | |
| FYI, this is with a fresh parrot checkout, a fresh parrot install (wiped the previous install dir), and an updated and realcleaned partcl/partcl from GH | 15:35 | ||
| sorear | Rakudo uses dynpmcs too | ||
| dalek | nxed: 29f760c | NotFound++ | examples/fly.winxed: use builtin floattime instead of a pirop in example fly |
||
| benabik class & | 15:36 | ||
| Coke | I don't /think/ this is related, but feather has a SUPER old parrot installed in /usr/bin | 15:42 | |
| $ /usr/bin/parrot --version | |||
| /usr/bin/parrot: error while loading shared libraries: libparrot.so.0.6.1: cannot open shared object file: No such file or directory | |||
| someone should probably nuke that. | |||
| aloha, ask alester if there's a plan for an ack feature for tracking use'd modules in a script, so I can do ack --follow pmc2c.pl "thing" and figure out which of the 30 refactored modules thing is now hiding in. | 15:44 | ||
| Coke cries at different bot syntax. | |||
| PerlJam | Coke: that seems highly perl-specific. | 15:45 | |
| Coke | whiteknight: AAHAHAHAH | 15:50 | |
| whiteknight | ? | ||
| Coke | PerlJam: yup. | ||
| whiteknight: I found the bug! | |||
| whiteknight | what bug? | ||
| Coke | github.com/partcl/partcl/blob/mast...int.pmc#L5 | 15:51 | |
| whiteknight | oh, awesome. So it isn't a problem with the merge? | ||
| Coke | nope. However, the next bug is worse: | 15:52 | |
| *** glibc detected *** /home/coke/bird/bin/parrot: malloc(): memory corruption: 0x090e3270 *** | |||
| Coke sighs. | 15:53 | ||
| whiteknight | blah | ||
| dalek | rtcl: c4e4441 | coke++ | src/pmc/tclint.pmc: parrot/embed.h doesn't exist anymore. |
||
| whiteknight | we have been seeing a little bit of memory-related weirdness lately. jnthn++ put in a bug about a segv he was seeing | 15:54 | |
| Coke | occurs during: | 15:55 | |
| /home/coke/bird/bin/parrot --output=runtime/tcllib.pbc runtime/tcllib.pir | |||
| if I kill the --output, it gives me the less horrifying: | 15:57 | ||
| Null PMC access in type() | |||
| current instr.: 'mappings' pc 28 (runtime/tcllib.pir:49) | |||
| whiteknight | blarg | 15:58 | |
| Coke | looks like tclint = get_class 'TclInt' | 15:59 | |
| is now returning PMCNULL | |||
| ... is Eval gone now, or were you just /talking/ about removing it? | 16:00 | ||
|
16:04
dmalcolm joined
|
|||
| whiteknight | Eval is still there. It's gone in a branch | 16:04 | |
| I haven't merged that to master yet | |||
| probably wont for a while | |||
| Coke | ok. | 16:08 | |
| (because that would potentially explain the behavior, if :init :load :whatever handling had changed. | 16:09 | ||
| whiteknight | I don't think that should have changed, no | ||
| Coke | when did -t4 stop giving sub-level profiling? | 16:10 | |
| profiling is a bad word. tracing. | |||
| whiteknight | I have no idea. I don't use -t for anything | ||
| Coke | more importantly, how can I get the same functionality today? | 16:11 | |
| whiteknight | no idea. Maybe with the profiling runcore? | ||
| Coke | *cry* | ||
| whiteknight | I wonder why -t4 wouldn't work. I suspect it should | ||
| clearly it's something we aren't testing for | |||
| Coke | -t4 is giving me something that looks suspiciously like -t1 | ||
| dalek | kudo/nom: 8895107 | jnthn++ | src/core/traits.pm: Improve implementation of handles trait now that we have |$c available. |
16:15 | |
| kudo/nom: 7305387 | jnthn++ | src/binder/bind.c: Fix bug where binder failed to handle native types properly when slurpy arrays or captures were involved. |
|||
| Coke opens a ticket on partcl to note that it's dead, and a ticket on parrot about the -t4 issue. | 16:27 | ||
| cotto | ~~ | 16:34 | |
| cotto is in the vmil 2011 workshop | 16:35 | ||
| There was a dart keynote that was really hard not to troll. | 16:36 | ||
| looks like a Cog talk is next on the agenda | 16:37 | ||
| whiteknight | Cog? never heard of it | ||
| cotto | smalltalk vm | ||
| apparently | 16:38 | ||
| looks squeaky | |||
| may have to start paying attention rsn | |||
| chromatic++ mentioned it as being pretty cool | 16:40 | ||
| Coke | are there any advances in debugging parrot in the past year or so? (now that I cannot use -t4?) | 16:48 | |
| whiteknight | Coke: I can't think of any | ||
| Coke: the -t4 thing is probably a temporary bug | 16:49 | ||
| Coke | So, part of the bug, anyway, is that :init and :load are both run when you run parrot foo.pir now. | 16:51 | |
| nopaste | "Coke" at 192.168.1.3 pasted ":init :load ?" (12 lines) at nopaste.snit.ch/90097 | 16:52 | |
| dalek | kudo/nom: 732d6cb | jnthn++ | / (2 files): Optimize contextual lookups. Since every print/say does them, and we do print a lot during the spectests, this gives a > 5% improvement to spectest time. |
||
| cotto | It's great to see Rakudo being taught to generate efficient code. | 16:53 | |
|
16:58
fperrad joined
|
|||
| cotto | hio fperrad | 16:59 | |
| next talk: Invited Talk: Designing the Dart programming language with a simple virtual machine in mind | 17:09 | ||
| I wish I'd gotten more than 3.5 hours of sleep. | 17:10 | ||
| www.cs.iastate.edu/%7Edesign/vmil/2...gram.shtml (schedule) | |||
|
17:12
jsut joined
|
|||
| Coke | so, is my nopaste a bug, or is this intentional now? | 17:13 | |
|
17:19
contingencyplan joined
|
|||
| cotto | just ran into tewk++ | 17:27 | |
| whiteknight | Coke: :init and :load are both running? That shouldn't be | ||
| that's a bug | |||
| Coke | whiteknight: opening ticket. | ||
| whiteknight | Coke: I think we have tests for that in the parrot suite. Does it only happen in partcl-old or can you reproduce it elsewhere? | 17:28 | |
| Coke: also, did it happen before the tt_1910 merge, or does it only happen afterwards? | |||
| Coke | whiteknight: the nopaste (and now the ticket) have sample pir. no partcl required. | 17:30 | |
| whiteknight | oh, okay. I didn't see the nopaste | ||
| that is troubling. I thought we had tests to ensure against that exact behavior | 17:31 | ||
| Coke | whiteknight: I have not run a bisect. | ||
| whiteknight | oh wait | ||
| you don't have a :main | |||
| if you don't have :main, the first sub (load) is called as main | |||
| not the sub named "main" | |||
| Coke | whiteknight: argh, right. moment: | 17:33 | |
| closed the ticket. Thanks; it almost explained the behavior I was seeing in partcl so I didn't question it further. | 17:36 | ||
| of course, still getting memory corruption errors in partcl. ;) | 17:37 | ||
| dalek | kudo/nom: 3fbb574 | jnthn++ | src/Perl6/Actions.pm: Add an nqp::sqrt_n. |
17:38 | |
| kudo/nom: 53997c6 | jnthn++ | src/core/Int.pm: Make Int.Bridge a bit cheaper. |
|||
| kudo/nom: 10331e0 | jnthn++ | src/core/Num.pm: Use nqp::sqrt in Num.sqrt. |
|||
| kudo/nom: 84cdffd | jnthn++ | src/core/Complex.pm: Just use nqp::sqrt in Complex.abs, since we're doing all the other bits with nqp ops. |
|||
|
17:47
pbaker joined
18:05
dukeleto joined
|
|||
| dukeleto | ~~ | 18:05 | |
| dukeleto waves from Git Together 2011 | |||
| dukeleto killed his irc proxy and restarted it. Evidently, it had a fit | 18:06 | ||
| sorear: can you unban me from #perl6? I think my ircproxy was having a bad day. | 18:07 | ||
|
18:25
benabik joined
18:28
soh_cah_toa joined
18:33
zpmorgan joined
18:34
mj41 joined
|
|||
| dukeleto | moritz: can you unban me from #perl6 ? | 18:39 | |
| dalek | kudo/nom: 1fd3f82 | jnthn++ | src/Perl6/Actions.pm: Make it possible for optimizer to do better with the loop construct (though needs --optimize=3). |
18:43 | |
| dukeleto | RTEMS is close to switching over to git: git.rtems.org/ | 18:44 | |
| whiteknight | nice | 18:46 | |
| moritz | dukeleto: unbanned | 19:02 | |
|
19:12
zpmorgan joined
|
|||
| dukeleto | moritz++ | 19:15 | |
|
19:26
zpmorgan joined
19:34
zpmorgan joined
|
|||
| cotto | see soh_cah_toa | 19:38 | |
| seen soh_cah_toa | |||
| aloha | soh_cah_toa was last seen in #parrot 1 hours 10 mins ago joining the channel. | ||
| cotto | msg soh_cah_toa I just got out of a talk about DwarfPython, which uses Dwarf magic to try to eliminate the distinction between native and python code. It looked pretty awesome and magical. | 19:39 | |
| aloha | OK. I'll deliver the message. | ||
| cotto | msg soh_cah_toa I have a CD of the talk papers (srsly, acm?) and will share it when I have access to a cdrom. | 19:40 | |
| aloha | OK. I'll deliver the message. | ||
| cotto | msg soh_cah_toa Here's the guy's blog: www.cs.ox.ac.uk/people/stephen.kell/blog/ | 19:41 | |
| aloha | OK. I'll deliver the message. | ||
|
19:45
zpmorgan joined
19:47
benabik joined
19:53
benabik_ joined
20:02
zpmorgan joined
|
|||
| dalek | nxed: e4f9434 | NotFound++ | t/advanced/10multi.t: test 'multi' modifier |
20:23 | |
|
20:51
mj41 joined
|
|||
| dalek | nxed: 83cf596 | NotFound++ | t/harness: update harness to allow test files that use 'done_testing' |
20:54 | |
| nxed: b0f0d6c | NotFound++ | winxedst1.winxed: improve diagnostic in wrong or unimplemented usages of 'multi' |
20:56 | ||
| dukeleto | github.com/apenwarr/avebench - cool suite of memory benchmarks across languages | 20:58 | |
| apenwarr.ca/diary/2011-10-pycodecon...enwarr.pdf | 21:03 | ||
| very interesting results | |||
| NotFound | Pythong is not slow because you can write critical parts in C? I've read that argument even for Turbo Basic years ago }:) | 21:07 | |
| benabik | "Python's not slow, you just have to write the fast bits in another language"? | 21:08 | |
| That's an interesting argument tehre. | |||
| NotFound | (changing 'C' for 'inline assembler', but is the same kind of argument) | ||
| dukeleto | NotFound: you could say the same thing about Perl 5 | 21:09 | |
| the interesting results are the memory benchmarks | |||
| the java GC kills all performance that a JIT might provide | |||
| NotFound | dukeleto: I cam say the same thing about anything, even about spreadsheet macros. | 21:10 | |
| dukeleto | i mentioned those memory benchmarks, because i think it would be good to add parrot languages and see what the results are | 21:14 | |
| NotFound | Interesting the points about refcounting versus gc. I'm using refcounting in winxedxx | 21:19 | |
| BTW winxedxx is amazingly fast in some tests. | 21:20 | ||
|
21:37
mj41_nb joined
21:51
soh_cah_toa joined
|
|||
| soh_cah_toa | dukeleto: featherspec format is in docs/feathers/featherspec.pod on the soh-cah-toa/featherspec branch | 22:44 | |
| dukeleto: it's just json but it will include a lot more metadata | 22:46 | ||
|
22:50
bluescreen joined
|
|||
| cotto | alvis++ for volunteering for working on the docs (not in isolation, by any means) and alvis++ again for 4 levels of footnotes, including a footnote with a footnote | 22:58 | |
| btw, if you feel like we're telling you to do something without giving you enough direction, file a bug against me and I'll address it. | 23:01 | ||
| It'll be a process. | |||
| soh_cah_toa | alvis++ indeed | 23:02 | |
| very awesome | |||
| cotto | java extensions for parallelism: habanero.rice.edu/Habanero_Home.html | 23:15 | |
| apparently safe | 23:16 | ||
| summary of the important bits at habanero.rice.edu/hj.html | 23:18 | ||
| bonus points for overloading "phasers" | |||
| msg whiteknight parallelism primitives to steal are clearly spelled out at habanero.rice.edu/hj.html . Thoughts? | 23:20 | ||
| aloha | OK. I'll deliver the message. | ||
|
23:29
benabik joined
|
|||
| cotto | hi benabik | 23:37 | |
| sorear | dukeleto: Hi I'm back | 23:39 | |
| dukeleto: moritz dealt with? | |||
|
23:43
whiteknight joined
|
|||
| benabik | o/ cotto | 23:47 | |
| dalek | nxed: fc73948 | NotFound++ | / (2 files): support keyed class in 'multi' |
23:48 | |
| cotto | NotFound++ # I was going to ask about that when I saw the patch from earlier today. | 23:50 | |
|
23:50
mudkip joined
|
|||
| whiteknight | good evening, #parrot | 23:51 | |
| cotto | 'evening, whiteknight | ||
| whiteknight | hello cotto. How are you doing today? | 23:53 | |
| cotto | dead tired. I got back from the gsoc summit at 12 and had to take off for vmil at 4:30. | 23:54 | |
| still, finding some cool stuff and people | |||
| including tewk | |||
| 7 cups of coffee help | 23:55 | ||
| the crash may be ugly | |||
| dukeleto | cotto: i feel ya. So much tired is accumulating. | 23:57 | |