#parrot Parrot 0.6.4 "St. Vincent Amazon" Released | parrotcode.org/ | 15 new, 648 open, 80 stalled tix | logged in irclog.perlgeek.de/parrot/today
Set by moderator on 28 July 2008.
dalek r30240 | jkeenan++ | opsrenum: 00:52
: Add functionality to add -- but not delete -- opcodes in the post-1.0 Parrot. Add additional tests.
diff: www.parrotvm.org/svn/parrot/revision?rev=30240
00:52 Ademan joined
bacek morning everyone 01:23
Whiteknight good morning bacek 01:25
01:33 tetragon joined
bacek Whiteknight: how is GC stuff going? 01:38
Limbic_Region [19:56] <@Whiteknight> (Garbage collector)-- 01:46
bacek Limbic_Region: so, there is already less garbage after -- ;) 01:53
kid51 All: If you have any reason to object to application of patch in rt.perl.org/rt3/Ticket/Display.html?id=57780 (provide for multiple verbose steps during configuration, change Configure.pl's output somewhat) please comment in ticket in next day. Thanks. 02:06
dalek r30241 | jkeenan++ | opsrenum: 02:23
: Improve inline comments and POD.
diff: www.parrotvm.org/svn/parrot/revision?rev=30241
kid51 Anyone know who's doing next week's release? 02:33
02:40 tetragon_ joined
dalek r30242 | jkeenan++ | trunk: 03:13
: 4 config step tests were failing to clean up after themselves, leaving results of C probes in top-level directory. 3 cases fixed; one remaining.
diff: www.parrotvm.org/svn/parrot/revision?rev=30242
03:15 baa joined
dalek r30243 | jkeenan++ | trunk: 03:20
: 4 config step tests were failing to clean up after themselves, leaving results of C probes in top-level directory. 1 remaining cases fixed.
diff: www.parrotvm.org/svn/parrot/revision?rev=30243
kid51 must sleep 03:21
purl $kid51->sleep(8 * 3600);
03:47 petdance joined 05:25 buildbot joined 05:39 Psyche^ joined 05:41 purl joined 06:35 Zaba_ joined 06:38 ambs left 06:51 smash joined 07:36 Psyche^ joined 08:23 particle1 joined 08:35 Ademan joined
dalek allison@perl.org | hackathon_yapc_eu_2008: 09:14
link: www.perlfoundation.org/parrot/index...pc_eu_2008
allison@perl.org | hackathon_yapc_eu_2008: 09:15
link: www.perlfoundation.org/parrot/index...pc_eu_2008
09:35 gaz joined
dalek r30244 | pmichaud++ | trunk: 09:50
: [rakudo]: Some additional notes on things in the ROADMAP
diff: www.parrotvm.org/svn/parrot/revision?rev=30244
09:53 Whiteknight joined 10:30 mmcleric_ joined 10:36 szbalint joined 10:40 kid51 joined, kj joined 10:41 MeGaMiC joined 11:03 MeGaMiC joined
dalek r30245 | bernhard++ | trunk: 11:05
: [Pipp]
: Update the TODO list.
diff: www.parrotvm.org/svn/parrot/revision?rev=30245
r30246 | kjs++ | trunk: 11:06
: [pirc/new] add documentation and generate full-signatured opnames from opnames + their arguments
: + %union type cleanup
: + several other tweaks.
diff: www.parrotvm.org/svn/parrot/revision?rev=30246
r30247 | bernhard++ | trunk: 11:09
: [Pipp] add increment and decrement
: Some reformating.
diff: www.parrotvm.org/svn/parrot/revision?rev=30247
11:10 Whiteknight joined 11:12 ank joined
dalek allison@perl.org | pdd27mmd_tasklist: 11:19
link: www.perlfoundation.org/parrot/index...d_tasklist
r30248 | jonathan++ | trunk: 11:29
: [rakudo] Load types for parameters and use them to exclude candidates with incompatible types. Add some tests for this.
diff: www.parrotvm.org/svn/parrot/revision?rev=30248
r30249 | bernhard++ | trunk: 11:30
: [Pipp] Add impl of extension_loaded(), that always returns false.
: Add var_dump() for booleans.
diff: www.parrotvm.org/svn/parrot/revision?rev=30249
allison@perl.org | pdd27mmd_tasklist: 12:11
link: www.perlfoundation.org/parrot/index...d_tasklist
r30250 | allison++ | trunk: 12:16
: [pdd] Refine the interface for MultiSubs, providing lookups for dispatch
: alternates without invocation.
diff: www.parrotvm.org/svn/parrot/revision?rev=30250
13:32 particle joined 13:34 davidfetter joined 13:56 gryphon joined
dalek r30251 | fperrad++ | trunk: 14:05
: [Lua] merge branch opengl4lua
diff: www.parrotvm.org/svn/parrot/revision?rev=30251
r30252 | kjs++ | trunk: 14:12
: [pirc/new] line too long in pirsymbol.c; this is now fixed.
diff: www.parrotvm.org/svn/parrot/revision?rev=30252
kj Coke: what kind of test is this 'smolder' test, and how do I run it? 14:14
NotFound kj: make smolder_test
kj NotFound: ok, thanks 14:15
why is it called 'smolder', what does that word mean?
NotFound kj: I think is the name of software used to analyse the reports. 14:16
kj i see. thanks 14:17
14:25 Limbic_Region joined 14:26 Coke joined
Limbic_Region chromatic ping 14:26
Coke kj: pong.
purl, smolder?
purl smolder is sourceforge.net/projects/smolder or web-based smoke test aggregator used by developers and testers to upload (automated or manually) and view smoke/regression tests using the Test Anything Protocol (TAP).
kj Coke: NotFound already helped me. Sorry for your effort on test failures.
Coke I subscribe to the RSS feed, so when something like that starts failing, I get notified pretty quickly. =-) 14:27
Limbic_Region purl msg chromatic "Perl 6 Design Minutes for 25 June 2008" indicates "The Perl 6 design team met by phone on 11 June 2008." and yet Larry indicates he has already attended YAPC (which didn't happen until after June 11)
purl Message for chromatic stored.
Coke no worries. I figured if I posted a few of those more people would subscribe tot he feed, and I'd get a better long term response than just fixing them. 14:28
kj where can I subscribe? :-)
Coke smolder.plusthree.com/app/public_pr...details/8, pick one of the feeds 14:29
NotFound I fixed the first failure yesterday, don't see the ticket until this morning. 14:31
jonathan pmichaud: I have booked a room in the same hotel as you for tomorrow night. 14:38
Late night hacakthon is on! :-)
Coke NotFound: saw that you closed it, thanks. 14:43
kj jonathan: ping 14:50
jonathan kj: pong 14:51
kj hi
istr you're knowledgable on the bytecode stuff, is that right?
jonathan Vaguely. :-)
kj :-) 14:52
jonathan (As in, I wrote the PDD...)
kj do you know what's the current status of it?
i mean, is the PDD implemented?
or is the current implementation to be revised
jonathan It's partially implemented.
kj ok
jonathan A little in trunk
And much more done by Infinoid++ in a branch
kj ah ok. so at some point that will be merged back 14:53
(and that would imply I should ask Infinoid on details?)
dalek r30253 | fperrad++ | opengl4lua:
: [Lua] merged in trunk
diff: www.parrotvm.org/svn/parrot/revision?rev=30253
jonathan Yes, what do you want to know?
I may have an answer. :-)
kj well, I don't have any particular question at this point; I have to investigate in it a bit more. But for PIRC, I'd like to generate a PBC file as opposed to PASM code, what it does now 14:55
but I have trouble visualizing how the PMC constant stuff works
for instance, Subs, labels, and keys too are represented by PMC constants 14:56
(according to pbc_disassemble)
jonathan Yes, subs are PMCs 14:59
Labels are just in the fixup table.
Keys - yes, PMCs too.
dalek r30254 | coke++ | no_builtin_methods:
: This branch was recently merged to trunk.
diff: www.parrotvm.org/svn/parrot/revision?rev=30254
kj but what makes up a sub?
i mean, i know a sub as in : .sub main blablabla .end 15:00
jonathan See Sub.pmc
Or Closure.pmc
(second subclasses first)
kj are constant pmcs frozen?
jonathan They say where in the bytecode the sub starts.
Yes.
kj mmm ok
and a label is just an address? 15:01
jonathan I *think* so.
kj I've been trying to understand how imcc does this, but it's very complex, it seems
not a line of comments :-(
jonathan Yes. :-(
16:02 sjansen joined
pmichaud jonathan++ # room for tomorrow 16:11
16:17 iblechbot joined
dalek r30255 | rgrjr++ | trunk: 16:32
: Fix sorting.
diff: www.parrotvm.org/svn/parrot/revision?rev=30255
16:32 Theory joined 16:46 cotto-work joined 16:50 magnachef_ joined 16:51 Ademan_ joined, rblackwe_ joined 16:52 japhb_ joined 16:53 workbench joined 16:54 Piper joined
Piper Hi there. I am Piper. I am now publicly logging this channel. If you don't want to be logged, please leave now. 16:54
16:54 purl joined 16:56 confound_ joined, cotto_home joined, Andy joined, Andy left 17:11 pako joined 17:29 purl joined 17:33 rurban joined 17:49 asjo joined 17:53 Theory joined 18:14 smash joined
smash hello everyone 18:14
davidfetter boa noite, smash 18:21
rurban hi smash, everyone watching olympics 18:23
smash rurban: fair enough :P
NotFound playing mario party 18:42
smash particle: ping 18:43
particle smash: pong 18:44
smash hiya, do you remember changing 'say' to an opcode ?
particle coke did that in the past few weeks iirc 18:45
why?
smash hmm.. i'm trying to figure out why 'say a' is more than twice slower than 'print a && print "\\n"' 18:46
particle eew
smash exactly
the code basically is the same, a printf and a puts 18:47
but i already tried changed that and i don't think the problem is there
particle where's the code?
purl the code is message mapping => usually pulled straight from the RFC
smash with two fprintfs 'say' t's still much slower
s/t's/it's/ 18:48
i was tweaking the code in src/ops/io.ops
particle what are you using for a benchmark? 18:50
smash a stupid scren that gets as an argument, and then simply prints an integer argument times argumet 18:52
s/scren/script/
19:03 DietCoke joined
smash DietCoke: hi 19:03
DietCoke hio 19:04
smash it was you that implemented 'say' as an opcode ?
DietCoke yup. 19:06
They are naive copies of the print opcodes.
I suspect if you're seeing a 2x slowdown, it's because PIO_putps or _PIO_STDOUT is slow
(that gets invoked 2x in say.) 19:07
NotFound What type of argument are you using?
DietCoke but it shouldn't be slower than 2 invocation of print.
smash hmm, i already tried to change that
but i can try look at it again
particle there used to be a println op that printed \\n
DietCoke it was removed at one point because "say ''" does that, IIRC.
particle right, but it could give clues 19:08
DietCoke (or because print "\\n" does. it was rather special purpose.)
I think it would make more sense investigating the comparison between the two existing ops, but ok. =-)
smash well, i can paste the script i'm using to benchmark it if you guys want to take a look at it
DietCoke that will save me the effort of creating my own, yes please.
smash but i don't see nothing wrong in the benchmarking script
nopaste good enough or want by e-mail ? 19:09
DietCoke either
particle: how goes? 19:10
particle meh
i'm not losing weight or anything productive like you
DietCoke purl, 282-224.6 19:11
purl 57.4
smash DietCoke: mail sent 19:15
NotFound PIO_puts calls PIO_write, and this builds a parrot string. The string building can be the culprit. 19:16
smash let me quickly change that an run the benchmark again
DietCoke running at 1000; I see no substantial difference. 19:18
smash run it with 5000
DietCoke trying that now. also running it with >/dev/null 19:19
NotFound By the way, print and say opcodes with strings calls string_length, and that can be a costly operation.
DietCoke at 2000 iterations, I'm seeing say beat print by 0.5s 19:21
Are you actually letting the output go to the screen?
(rather than redirecting it somewhere?)
that could be affecting your timings, no?
purl, 39.996 - 39.245 19:23
purl 0.75100000000
DietCoke print is 3/4 of a second faster at 3000 iterations... 19:24
This seems like noise.
smash DietCoke: i'm doing sending the output to /dev/null 19:25
s/doing//
DietCoke originally, or trying again?
smash running again now 19:26
DietCoke also, any local modifiations to your bird?
(going for the 5000 iterations now.)
Might also be interesting to have parrot tell you how many gc runs it did.
(at the end)
smash (modifications) nope, i only have local changes on branches 19:27
(gc) yes, or maybe just turning it off
DietCoke anyway, I don't see how it -could- be slower, on the face of it. it should be quicker, with one less op dispatch going on. wierd. 19:28
smash my thought exactly
DietCoke within a second, the 5K iterations are teh same. 19:29
NotFound print "\\n" prints a parrot string, the current say implementation prints a C string.
DietCoke NotFound: which should make say even faster, neh?
NotFound DietCoke: not, because it builds a parrot string from the C string and prints it.
DietCoke ... so it's not printing a C string. =-) 19:30
NotFound It calls PIO_puts with a C string.
print "\\n" does not do that.
DietCoke right. that's printing an actual parrot string. 19:31
so say is printing a c string, and print is printing a parrot string.
I would tend to think that not having to deal with a parrot string is marginally faster. 19:32
or are you saying that PIO_puts is converting a C string to a parrot string internally?
NotFound DietCoke: but PIO_puts calls PIO_write, and PIO_write builds a parrot string and send it to the IO layer.
And print "\\n" send the parrot string to the IO layer more directly. 19:33
DietCoke FSV of more directly. PIO_putps is doing more work than PIO_puts
smash: also, I was comparing .pir times, not PBC times. 19:34
smash nods.
DietCoke it is possible that with what notfound is saying, the PBC has to do less work because more work was done at compile time. 19:35
so I'd throw that into the diagnostic mix, too.
(has to do less work for print) 19:36
Could always try doing the CONST_STRING trick on the "\\n" we're using there.
NotFound I'm just saying that the way say works looks too complicated. 19:37
"%f" must be FLOATVAL_FMT, it isn't? 19:41
smash why it's not "%f\\n" ? 19:42
i'm trying that right now 19:43
NotFound FLOATVAL_FMT "\\n" must work in any decent C compiler. 19:44
smash nods.
19:49 particle joined
DietCoke well, again, the say opcodes were just a naive copy of code elsewhere; I was trying to remove other special purpose code, not make them go fast. =-) My feelings will not be hurt if you make them zippy. =-) 19:58
~~
20:00 Zaba joined, particle1 joined
NotFound The %f thing is not to make it faster, is to make it correct. 20:07
smash yes
but the "slowness" problem is not in there
(at least by my tests)
20:14 mmcleric_ joined
NotFound There is a GC call inside one of the functions used, but I think is ifndef'ed. 20:15
tewk Whats the tiny url service dalek used to convert everything to? 20:23
20:24 desertmax joined
particle1 xrl.us iirc 20:25
20:29 cognominal joined 20:34 Theory joined 20:58 confound joined 21:04 smash joined
cotto-work was there ever a discussion/conclusion about HLL interoperability at YAPC? 22:12
22:17 kid51 joined
cognominal cotto-work, there will be a hackathon at Copenhagen tomorrow. This will be a good time to ask your questions 22:17
22:22 Limbic_Region joined 22:27 diakopter joined, diakopter left 22:30 diakopter joined
cotto-work heh. I'll be away from irc. 22:32
I'm sure someone will bring it up 22:33
davidfetter heh
22:33 Theory joined 22:51 cognominal joined 23:00 tetragon joined 23:16 cognominal joined