www.parrot.org/ | Parrot 1.4.0 "Mundo Cani" Released!
Set by moderator on 21 July 2009.
00:03 bacek joined 00:38 Zak joined 00:39 mrsaturns12 joined 00:41 perlguiman joined 00:44 tendas joined 00:45 tendas left
dalek cnum-dynpmcs: r123 | darbelo++ | trunk/aux/decTest/src/pct/actions.pm:
[decTest] Tweak the past so that each test get's it's own sub. Output is now

show this to be marginally less slow than before. I have no clues as to why, however.
00:47
purl Stop complicating things.
00:58 perlguiman left
darbelo Great. Now the bot is giving me coding advice. 00:58
00:59 bacek joined
darbelo OTOH it seems like it was good advice. purl++, I guess. 00:59
kid51 purl, nice bot 01:00
purl kid51: i'm not following you...
kid51 purl++
01:18 hiroyuk__ joined
kid51 must sleep 02:10
purl $kid51->sleep(8 * 3600);
chromatic use.perl.org/~missingthepoint/journal/39359 02:11
GeJ Just read it. When $life permits (hopefully in a couple of weeks), I'd like to do the same and resume my Parrot activity. 02:25
davidfetter $life->alloc(8 * interval '1 hour') 02:26
dang! 02:27
02:42 janus joined 02:46 dukeleto joined 03:20 donaldh joined
dalek rrot: r40296 | chromatic++ | trunk/config (2 files):
[config] Fixed splint temporary directory detection by adding a TEMPDIR
03:26
TT #859 closed by chromatic++: 'make splint' needs graceful failure message
03:41 Andy joined
dalek ose: r83 | Austin++ | trunk/src/parser/statements.pg:
Fixed syntax error in statements.pg
03:56
04:13 abesapien joined 04:26 tetragon joined 04:29 dukeleto joined 04:45 japhb joined
dalek rdinal: 166f0ee | (Danius Michaelides)++ | (2 files):
Implement reverse_each().
06:01
rdinal: d830bad | (Danius Michaelides)++ | (3 files):
Implement Array#fetch() with test.
06:03 uniejo joined 06:44 desertm4x joined
dalek rrot: r40297 | dukeleto++ | trunk/t/tools/parrot_debugger.t:
Add some tests for the basic parrot_debugger commands
07:04
07:21 donaldh joined 07:31 iblechbot joined
dalek rrot: r40298 | chromatic++ | trunk/src/pmc/continuation.pmc:
[PMC] Avoided dereferencing a potentially NULL pointer before checking for
07:45
chromatic :526 07:52
dalek rrot: r40299 | chromatic++ | trunk/src/gc/alloc_register.c:
[GC] Moved a pointer dereference after the check for its NULLness (Coverity CID
07:53 Zak joined
dalek rrot: r40300 | chromatic++ | trunk/src/pmc/parrotinterpreter.pmc:
[PMC] Moved a pointer dereference after the check for its NULLness in
07:59
rrot: r40301 | chromatic++ | trunk/src/pmc/exception.pmc:
[PMC] Rearranged code in Exception's destroy() vtable entry to check pointer
08:14
rrot: r40302 | chromatic++ | trunk/compilers/imcc/pbc.c:
[IMCC] Removed a NULL pointer check after a successful dereference of that

annotations, something is far, far wronger than e_pbc_emit() can handle
  (Coverity CID #410).
08:17
08:35 mokurai left
dalek TT #879 created by jessevdam++: isa does not take (correctly) namespace, pmcarray,stringarray 08:37
rrot: r40303 | chromatic++ | trunk/src/oo.c:
[OO] Freed object attributes when created directly in Parrot_oo_clone_object();
08:38
TT #880 created by jessevdam++: class associated to namespace ["parrot";"Class"] gets overridden 09:08
09:23 einstein joined
mikehh post config tests FAILing - see TT#878 09:27
codetest FAIL, post config FAIL (see TT #878), all others PASS (pre config, smolder, nqp_test fulltest) at r40303 - Ubuntu 9.04 amd64 10:00
mj41 Hi. ftp://ftp.parrot.org/pub/parrot/releases/devel/1.4.0/ ... failed to change directory 10:05
moritz mj41: 1.4.0 is not a devel/ release 10:06
mj41 oh, .. but link is on www.parrot.org/news/2009/Parrot-1.4.0 10:07
Infinoid good catch 10:09
moritz mj41: thanks for pointing that out, I just fixed the link
10:11 bacek joined 10:13 patspam joined 10:38 wayland76 joined 10:42 HG` joined 10:45 ttbot joined 10:46 jimmy joined
bacek o hai 10:52
nopaste "mikehh" at 90.209.128.139 pasted "codetest failures at r40303" (61 lines) at nopaste.snit.ch/17414 10:53
"mike" at 90.209.128.139 pasted "PATCH for codetest failures at r40303" (52 lines) at nopaste.snit.ch/17415
mikehh orry that should have been mikehh in the patch - codetest PASSes after the PATCH 10:54
I kmywekeard is skipping occaisionally
that was I think my wireless keyboard is skipping keypresses on occaision 10:55
wayland76 Looks like it. You need to get an Avant Stellar keyboard 10:56
Or maybe an Optimus Maximus :)
mikehh I got a Micro$oft Wireless Keyboard and Mouse - which actually fits my fingers properly - less typing mistakes in general - BUT ..... 10:58
dalek rrot: r40304 | bacek++ | trunk (2 files):
[cage] Fix codetest failures. Patch courtesy mikehh++
mikehh This is my forth keyboard after one of my grandsons spilt *Coke* on my old favourite 10:59
4th and that was Coca-Cola 11:00
wayland76 I think an Avant Stellar could be easily cleaned
(Btw, if you haven't seen the pricetag on either keyboard I mentioned, you haven't gotten the tease yet :) ) 11:01
(Even though I do actually have an Avant Stellar :) )
mikehh :-}
wayland76 For those who can't be bothered looking, the Avant Stellar is relatively cheap at around $189 11:03
:)
Whereas the Optimus Maximus came out at, IIRC, $1800, and is still over $1000
But don't knock it until you've seen it -- it's *extremely* cool. If it were say $300, I'd probably have one already :) 11:04
Maybe even at $400 :) 11:07
mikehh isn't that the one that is completely customizable with 100+ LED key layouts or something 11:17
I think it was a russian design or somethhing like that 11:19
wayland76 mikehh: That's the one :) 11:20
The legendary keyboard -- I don't think one's ever been seen in the wild, just conspiracy theorist photos :)
(afk, sorry &) 11:21
11:21 donaldh joined
mj41 TapTinder and ttbot are back online ... tt.ro.vutbr.cz/buildstatus/pr-Parrot/rp-trunk 11:44
11:45 flh joined 11:53 ruoso joined 11:56 skv joined 12:28 whiteknight joined 12:29 tetragon joined
whiteknight good morning #parrot 12:31
kid51: ping 12:32
dalek TT #881 created by cono++: Due to locale settings, HEAD revision of svn was 0. 12:35
mikehh post-config (buildtools_tests) FAIL (see TT #878) - All Others PASS (pre-config, smolder, nqp_test, fulltest) at r40304 - Ubuntu 9.04 amd64 12:37
12:48 jimmy joined 12:55 whoppix joined 13:02 Whiteknight joined
dalek rrot: r40305 | whiteknight++ | trunk/src/ops/ops.num:
[ops] renumber the ops again because last time i apparently didn't do it correctly. Thanks kid51++ and mikehh++ for the report
13:02
TT #878 closed by whiteknight++: Recent commits break buildtools_tests 13:06
13:08 desertm4x joined
jimmy Whiteknight: hello? 13:14
purl Raise your hand in the back if you can't hear me.
13:22 masak joined
jimmy Hello masak 13:24
masak 你好, jimmy
jimmy one question 13:26
purl i guess one question is where to put these things and how to divide it up
masak purl: no, one question is <reply>
purl okay, masak.
jimmy where is VTABLE_get_pointer defined? 13:27
Coke depends on the PMC.
jimmy It's uesd in core.ops
Coke if it's a core PMC, check in src/pmc/<foo>.pmc - 13:28
every PMC has its own vtable.
jimmy and core.ops ?
jonathan jimmy: Also note that VTABLE_get_pointer is a macro.
VTABLE_get_pointer(interp, pmc) becomes something like pmc->vtable->get_pointer(interp, pmc) or similar. 13:29
Coke core.ops contains opcodes. those opcodes call C. (like the macro you mention). that macro in turn is taking a PMC, looking up its vtable, and then looking up a function pointer.
jimmy void * ptr = VTABLE_get_pointer(interp, $2); ?
Coke those functions are defined in src/pmc/*.pmc
jimmy it's used in experimental.ops
Coke jimmy: ... yes? 13:30
the opcodes are defined in src/ops/*.ops
jimmy it's not pmc
Coke opcodes work on pmcs.
when you do $P1 = getclass $P2, those are PMCs - the opcodes may be invoking vtable entries on those PMCs.
so, if you know which PMC type you're working on, you can look back into the PMC definitions to see the C implementation of that vtable. 13:31
jimmy inline op get_labe used it. and I want to know where is it defined. from trac.parrot.org/parrot/changeset/40295 13:32
Coke jimmy: and I'm telling you. =-)
every PMC is different.
each PMC type has VTABLE - a list of function pointers.
you're invoking the get_pointer vtable - so you have to figure out which PMC you're working with, and look at the source for that PMC.
jimmy thanks, what type does it return? 13:33
ptr?
NotFound The macros are defined in include/parrot/vtable.h
Coke those are generated from src/vtable.tbl - looks like get_pointer returns a void *. 13:34
jimmy thanks, coke, jonathan and NotFound 13:36
NotFound jessevdam?
jimmy nopaste? 13:37
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 "jimmy" at 119.122.35.120 pasted "Is this patch right?" (14 lines) at nopaste.snit.ch/17416 13:38
Coke jimmy: I am not a C programmer, but that looks right. 13:40
NotFound jimmy: What's the purpose of that change? Avoid a variable?
Coke yah, it seems to just take advantage of our existing macros. 13:41
jimmy PTR2INTVAL is a dynamic marco
PerlJam Does PTR2INTVAL do something different than the cast?
jimmy not a static marco
Coke I don't understand the difference between static and dynamic here. 13:42
NotFound The macro usage may be right, dropping the local var might trigger warnings.
Coke (it's all done at C compile time.)
PerlJam fails in resisting the uge to say "polo!"
Coke NotFound: what warnings?
purl somebody said warnings was just a magical bitmask, iirc
NotFound Coke: the warnings that are avoided by using a local variable ;) 13:43
13:43 HG` joined
jimmy as I refer to all the codes, I think this patch is the right use. 13:43
NotFound gcc warns about direct conversions from values returned from functions, not sure about in what circumnstances.
13:44 pjcj joined
jimmy NotFound: Wait a moment 13:45
dalek TT #882 created by flh++: SUPER() not handled correctly for DynPMCs 13:46
13:51 mikehh_ joined 13:53 MoC joined
nopaste "jimmy" at 119.122.35.120 pasted "PTR2INTVAL should use the right macro, not (INTVAL), isn't right?" (13 lines) at nopaste.snit.ch/17417 13:54
jimmy sorry, wrong description 13:56
NotFound jimmy: yes, using the macro is better. That way we can (maybe someday) replace it with one that check limits in debug builds. 14:00
Finding and replacing C casts is a lot more work. 14:01
Is there some test for that experimental ops? 14:02
14:03 jsut joined
Coke I don't think trap was tested. no clue on whiteknight's new ones. 14:03
jimmy for get_label, it is the same sa get_addr
s/sa/as/
because these two ops are the same code 14:04
NotFound jimmy: I suppose that that is the intention, but is tested?
There are very few usages of get_addr in t/ BTW 14:05
jimmy yes, should ask Whitenight for more 14:06
Coke perhaps that can be a condition of them moving out of experimental. =-) 14:09
dalek rrot: r40306 | NotFound++ | trunk/src/ops/experimental.ops:
[cage] use conversion macro in get_label, jimmy++
14:10
NotFound It may be a good idea to create a ticket for any experimental op, and mention that ticket in the code.
jimmy I think there were more places to use PTR2INTVAL, not (INTVAL), should create a ticket to do that job? 14:11
Coke jimmy: seems reasonable, sure.
I am bemused that PTR2INTVAL is defined in terms of INTVAL2PTR.
jimmy yes 14:12
NotFound But make clear on the ticket that must be done and tested case-by-case, not by search-and-replace.
Coke NotFound: any reason you did that in two lines?
just to avoid the unnamed potential warnings?
jimmy Coke: seems to be an artifice 14:13
NotFound Coke: yes, and following the principle: don't fix if is not broken.
Coke NotFound: but we're already changing that code, so that doesn't seem to apply. =-) 14:14
the single line version seems clearer to me.
NotFound Coke: touché ;)
Coke I'm just trying to understand the rationale for the modified change.
NotFound Coke: sometimes we have fixes because of that warning, I try to avoid the posibility of walking in circles. 14:15
Coke what warning?
NotFound Don't remeber the literal wording, casting from function result or something like that.
Coke sees if he can generate it.
mikehh All Tests PASS (pre/post-config, smolder, nqp_test, fulltest) at r40305 - Ubuntu 9.04 amd64 14:16
Coke make src/ops/core_ops.o
make: *** No rule to make target `include/parrot/stacks.h', needed by `src/ops/core_ops.o'. Stop.
Coke reconfigs. 14:17
NotFound If someone know the exact conditions that trigger that warning and how to avoid it, I also like to avoid that unsueful local vars. 14:18
In the meantime, having the build almost warning free is a good thing.
jimmy Can anyone create a ticket to change more places to use PRT2INTVAL correctly, but not (INTVAL) ? 14:19
Coke NotFound: src/ops/experimental.ops:75: warning: cast from function call of type 'void *' to non-matching type 'long int' 14:20
that's the warning.
NotFound Yes, that is. 14:21
Coke (to be clear, your version is NOT generating that warning.)
Danke.
jimmy using the const is right for me. thanks NotFound 14:23
NotFound The const might be helpful for some optimizer, and doesn't hurt anyway. 14:24
jimmy yes.
But who can create the ticket for more changes? 14:25
Coke anyone with a trac id. 14:31
that is, you can create the ticket - that'd be fine.
jimmy thank Whitenight for creating that ticket. 14:32
dalek TT #883 created by jimmy++: Use the right PTR2INTVAL() marco, not (INTVAL) for type conversion 14:40
ose: r84 | Austin++ | trunk/ (5 files):
Started refactoring namespaces
14:41
rrot: r40307 | NotFound++ | trunk/lib/Parrot/Revision.pm:
[config] avoid troubles with locales and svn messages, TT #881, cono++
14:47
14:56 Andy joined 15:01 flh joined 15:02 quek joined
dalek TT #881 closed by NotFound++: Due to locale settings, HEAD revision of svn was 0. 15:09
15:12 theory joined
dalek TT #767 closed by NotFound++: imcc allows multiple .locals of the same name 15:17
15:21 donaldh joined 15:41 cono joined 16:01 dukeleto joined 16:08 mokurai joined 16:26 Psyche^ joined 16:36 Whiteknight joined
cotto Andy++ for talking to the Coverity guys. 16:37
Andy Thanks.
Guy, singular. As far as I know, he's the only one who works there. :-)
cotto s/s// 16:39
I hadn't logged in in forever, but apparently my cookie was still valid. 16:41
16:42 Zak joined 16:44 jan joined
dalek rrot: r40308 | NotFound++ | trunk (2 files):
[cage] fix badly named variable in generated code, TT #217
16:57
TT #217 closed by NotFound++: fix badly named variable in generated code 16:58
17:01 darbelo joined 17:06 theory joined
Coke cotto, andy - iwbni if we had a CoverityTesting page on the wiki. 17:08
Andy iwbni?
purl iwbni is "it would be nice if"
Andy Coke: ok 17:09
Coke NotFound++ - I saw your commit, and thought that it looked familiar. =-)
Andy: just to reduce the bus number. Thanks!
Andy Coke: Go ahead and make one. :-)
which wiki?
purl which wiki is poe.perl.org built on?
Andy And don't thank me for something I haven't done, or agreed to do. :-) 17:10
I'll think you're my wife.
cotto thinks of several ways to make Andy feel more awkward 17:11
Coke trac.parrot.org, please.
Andy you could be a boothbabe and hand me a flyer for a linux fund credit card.
Coke: I'm not sure I have an account there. 17:12
Coke Andy: you can have one, it's ok!
Andy ah, I do
Coke (i would create it for you, but I don't think I can.)
Andy I've never used Trac wiki
playing
Coke if you just throw in some text, someone else can format it. 17:13
Andy First, I have to find the Edit button. :-)
dalek tracwiki: v87 | petdance++ | WikiStart 17:14
tracwiki: trac.parrot.org/parrot/wiki/WikiSt...ction=diff
cotto Why is it that dependencies between c files and headers aren't generated? It seems like something that'd be reasonably easy to do. 17:18
Andy Why do you want them?
To minimize your rebuild if you change a .h file?
Coke that'd be nice. having 'make realclean' not be necessary would be nice.
dalek rrot: r40309 | cotto++ | trunk/config/gen/makefiles/root.in:
[Makefile] add a couple dependencies between c files and pmc headers
17:19
cotto to make make -jn break less often
Coke we have problems with .pmc files that include .h files, that's usually a problem.
Andy I always figured it was seen as an unnecessary optmization in favor of safety.
NotFound Given the number times we must tell someone to make realclean, it doesn't look unnecessary to me. 17:20
Andy I'm not arguing.
cotto make reconfig is nice in those cases 17:21
Andy trac.parrot.org/parrot/wiki/Coverity
dalek tracwiki: v1 | petdance++ | Coverity
tracwiki: trac.parrot.org/parrot/wiki/Coveri...ction=diff
tracwiki: v88 | coke++ | WikiStart
tracwiki: make priorities more visible.
tracwiki: trac.parrot.org/parrot/wiki/WikiSt...ction=diff
mj41 bacek: I just setup daily cron job for code coverage see e.g. tapir2.ro.vutbr.cz/cover/cover-results/40307/
cotto mj41++ 17:22
Coke mj41: oooh.
I am bemused that the Boolean PMC is only half covered.
that would be a nice tool for finding unused vtable entries. 17:23
(like boolean's "instantiate")
cotto I don't think that PMC needs instantiate
mj41 script is here tapir2.ro.vutbr.cz/cover/script/makecover.sh.txt ... I copy/paste some parts ... don't know if it is ok
Coke mj41: throw it on the wiki. =-) 17:24
cotto btw mj41, "tapir2"?
NotFound new_closure is never used according Coverity, and ack has the same opinion. 17:29
cotto NotFound, I was just noticing the same thing. 17:30
NotFound Some objection to delete it?
cotto Go for it!
moritz wait! 17:31
grep partcl's source first
cotto It's not marked PARROT_EXPORT
moritz it's usually affected by all parrot changes ;-)
cotto that's still a good idea, though.
NotFound And is alredy deprecated by: C API coding standards cleanup [eligible in 1.1]
Coke moritz: especially the ones designed to make rakudo work better. :P 17:32
cotto no need to give Coke a(nother) nervous twitch
partcl doesn't use it 17:33
lua doesn't either
NotFound, go for it. 17:34
NotFound Killing!!! 17:35
purl hmmm... killing is wrong or messy.
Coke whta about parrot_new_closure ?
NotFound Is green.
cotto Coke, it's used and has test coverage 17:36
There are a couple other nice non-trivial spots in sub.c that don't have any coverage either.
Coke just wondering why we have two subs that are similarly named that do different things.
realizing there's no good answer to that. 17:37
cotto Sometimes there is no "why", but you already knew that.
NotFound Coke: probably someone started deprecating that function by creating a new one.
17:40 payload joined
dalek rrot: r40310 | NotFound++ | trunk (2 files):
[cage] delete unused and deprectad function new_closure, Coverity++
17:40
cotto NotFound, when you close a defect from Coverity, you should reference the CID. 17:41
dalek tracwiki: v2 | mj41++ | CodeCoverageStatistics 17:43
tracwiki: Daily updated test coverage
tracwiki: trac.parrot.org/parrot/wiki/CodeCo...ction=diff
NotFound What's the CID? 17:45
purl the CID is all MUA or Coverity ID
cotto purl got it right
purl cotto: what?
cotto There's a nice big chunk of code in Parrot_capture_lex that looks like it's probably broken. 17:46
NotFound But purl has no commit rights ;)
cotto It's a good thing too. 17:47
I'm having trouble convincing myself that t/pmc/multisub.t actually tests the MultiSub PMC. 17:58
17:59 einstein joined
cotto s#t/pmc/multisub.t#anything# also applies 17:59
Hmm. It does seem to be used, just not comprehensively tested. 18:00
#ps in 30 and no reports yet 18:01
Util cotto: Typing!...
purl it has been said that typing is overrated.. "I should get aronud to converting"
darbelo cotto: There are now. 18:02
jonathan cotto: Thanks for the reminder! 18:03
moritz darbelo: could you also comment on your progress relative to the timeline/plan? 18:04
jonathan Pasted report, going to grab dinner, shouldn't be away long... 18:11
18:13 allison joined 18:15 s1n left
cotto darbelo, how funny that you're running into the dynpmc SUPER issue now. Someone else just filed a bug on it earlier today. 18:15
I'll make it a priority.
18:16 chromatic joined
cotto darbelo, ping 18:20
dalek tracwiki: v2 | petdance++ | Coverity 18:23
tracwiki: add links and email address
tracwiki: trac.parrot.org/parrot/wiki/Coveri...ction=diff
darbelo cotto: pong 18:27
cotto darbelo, does trac.parrot.org/parrot/attachment/...npmc.patch fix the dynpmc SUPER problem for you?
dalek website: darbelo++ | This week on decnum-dynpmcs 18:30
website: www.parrot.org/content/week-decnum-dynpmcs-0
18:30 payload joined 18:34 eternaleye joined
pmichaud #ps in -4 ? 18:34
allison no chromatic?
NotFound Monochrome ps 18:35
japhb cotto: How are you going to avoid having in-memory profiling structures, while at the same time avoiding having a loop create gobs of disk I/O? 18:37
cotto d'oh. I do have permissions to mark milestones completed. 18:38
japhb, I don't know if there's a good answer to that question. 18:40
chromatic To some extent, the disk I/O doesn't matter for the profile because we don't measure it. 18:41
japhb cotto: ISTR that Devel::NYTProf got considerably faster at writing the profile info when it fed the raw data through zlib, so that might be worth considering ... but I still think that I/O for streaming the profile info will completely swamp overhead of keeping counters in mem. 18:42
allison purl: PIR book is www.amazon.com/dp/0977920127 18:43
purl OK, allison.
japhb chromatic: But if it makes the app uselessly slow or fills a partition, that sucks.
chromatic At which point we fix it. 18:44
If it doesn't harm the accuracy or correctness of the profile, I'm not worrying about it yet.
zlib is an interesting idea though; that's worth considering. 18:45
darbelo cotto: Yup, the patch fixed it. flh++ 18:46
cotto Sweet. I'll have to add a dynpmc to test that. 18:47
PerlJam allison++
pmichaud allison/chromatic: Okay, I want to write the PCT book (coauthors welcome)
allison pmichaud: that would be fantastic
moritz l1?
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.
allison I was thinking the next book should be PCT, maybe starting with the squaak tutorials
(and expanding from there) 18:48
pmichaud I will look at squaak, but I may want to do a different tutorial base
although squaak is a good start as well.
chromatic I have on my Big Board of Books to Publish "Parrot 2.0".
cotto Isn't PCT going to be refactored in the forseeable future?
pmichaud anyway, I agree the next book should be PCT.
cotto: PGE is being refactored, but that's more internal than external.
PCT might be rewritten in NQP, but the API should remain the same.
cotto So it won't be user-visible. Ok. 18:49
pmichaud What's a reasonable timeframe for putting together a PCT book?
moritz Util: actually wknight8111.blogspot.com/search/label/Parrot is a good place to start searching
Whiteknight++ wrote pretty much about it 18:50
Util moritz: thanks 18:52
pmichaud hmmpf! If I order the book from amazon today, it won't arrive until Friday, even with 1-day shipping.
amazon-- 18:53
cotto Friday is only a day away, apparently.
It'll be a very short week.
pmichaud Amazon must be using calendars as prescribed by Judge Gross </obscure, see who gets the reference>
davidfetter googles judge gross 18:54
hrm. groklaw comes up
pmichaud that would be the reference, yes.
PerlJam yeah, anyone who reads groklaw would get it.
so ... groklaw is obscure? :) 18:55
pmichaud might be obscure on this channel :) 18:56
cotto chromatic, do you think 1.6 is reasonable target for profiling?
chromatic I'd love to see 1.5.
1.6 is very realistic.
cotto +1 to both
japhb PerlJam: groklaw itself is not obscure. Actually having time to *read* it might be, around here ...
pmichaud anyway, Judge Gross basically ignored a 15-day legal requirement by declaring 30 days to be equivalent to 15 :-) 18:58
davidfetter does nobody besides me think sandboxing needs to be done as part of the design? 18:59
pmichaud davidfetter: I don't know -- who is beside you right now? ;-) 19:00
davidfetter heh
davidfetter notes that windows' access control problems stem, mostly, from having the access control bolted onto an architecture that never considered access control 19:01
19:02 quek left
Whiteknight the books have arrived at the house! 19:06
(my wife ordered 3 copies to start)
chromatic Ask Allison and we'll get you as many copies as you want at cost. 19:07
Coke though I presume if you get them not-at-cost the proceeds go to the pafo. or something. 19:08
chromatic If he keeps his money, he has more money available to fund his work. 19:09
PerlJam wonders what it would take to get university profs to start using parrot in compiler design classes.
cotto PerlJam, It'd be ideal at this point. They'd need new textbooks every year. ;) 19:10
Coke is there text in that book that was not in docs/book/pir ?
PerlJam heh
chromatic There shouldn't be, Coke. 19:11
Coke chromatic: linkx to powells and B&N are 404s, btw. 19:12
"links"
chromatic Will check, thanks. 19:13
Coke (perhaps not literally, but they don't go anywhere with information about the book.)
chromatic Fixed now, Coke. 19:16
particle 825/1164 19:17
purl 0.708762886597938
cotto particle, why does pluggable runloops make you happy? 19:30
particle wants pluggable everything
Coke would rather have a functional everything.
particle cotto: my vision is for configure-time selection of runloops to build/link in parrot, and run-time selection of which to use 19:31
19:31 bacek joined
particle but, at this point, run-time selection is enough 19:31
cotto ./parrot --runloop=prof
particle perl Configure.pl --runloops=slow,prof,gcdebug 19:32
chromatic I can make them dynloadable.
particle does that help embedders?
or do we expect static builds for small defices? 19:33
*devices
cotto chromatic, lmk if that work can be parallelized efficiently.
Coke I think embedders are not going to want pluggable loops - I expect they'd want the single, best runloop.
lmk?
cotto lmk is let me know
Coke much like I want as a generic user. I don't want to have to pick a runloop.
Whiteknight Coke: single best runloop changes for each platform
cotto we can have a sensible default
Whiteknight well, from among the current selection
Coke Whiteknight: yes. we have config/hints, perfect. =-)
particle the default should also be picked at configure time
unless we start using .parrotrc files :) 19:34
chromatic cotto, right now it's blocking on me defining the struct... just need a block of time and mental energy to do it.
Whiteknight We can have several runcores built-in, including good defaults, but we want to be able to plug in additional ones 19:35
19:35 hercynium joined
Coke we who? 19:35
purl assimilates Coke into the borg
Coke I don't. =-)
dalek rrot: r40311 | NotFound++ | trunk (3 files):
[cage] rename example "lorito" to "cotorra"
Coke . o O (Spurius of Borg) 19:36
Whiteknight okay, "I" want to be able to plug in additional ones
NotFound The debugger runcore is a good candidate for dynloading 19:39
particle coke: pluggable things encourage contribution 19:40
pluggable garbage collectors are very important now
because we need better garbage collectors
19:41 theory joined
cotto pluggability also enforces encapsulation 19:42
we need more of that
chromatic Whiteknight, does the pluggable GC allow us to change the backing storage of mem_sys_allocate and mem_sys_free? 19:43
Whiteknight chromatic: no, not really
and doesn't really allow us to change the string allocator either 19:45
chromatic That's too bad. 19:46
Whiteknight yeah, it all still needs lots of work to make it decent 19:47
chromatic I bet we could get a 10% performance improvement even in IMCC by using fixed size pools instead of relying on system malloc. 19:51
NotFound chromatic: provided we have some fast way to know the pool at free time. 19:54
chromatic A trick I learned from Greg KH: keep a pointer to the pool right *before* the start of allocated memory. 19:56
19:58 donaldh joined
NotFound A good start can be to insert that trick right now, and use it to check all mem_sys_free calls. 20:00
Whiteknight chromatic: I've been saying that thing exactly. If we could repurpose the sized pools in the GC to hold simple fixed-sized objects, that would be ideal 20:29
right now the only thing that uses those pools is the List_Chunk structure (Stack_Chunk did too, but I deleted that) 20:30
20:39 bacek joined
dalek TT #882 closed by cotto++: SUPER() not handled correctly for DynPMCs 20:42
rrot: r40312 | NotFound++ | trunk/examples/embed/Makefile:
[examples] update and fix Makefile for cotorra (formerly lorito) to buid with an installed parrot
20:43
rrot: r40313 | cotto++ | trunk (7 files):
[pmc2c] make VTABLE function inheritance work between dynpmcs, plus a test (see TT #882)
kudo: 7700f40 | pmichaud++ | docs/spectest-progress.csv:
spectest-progress.csv update: 423 files, 12033 passing, 14 failing

   S12-enums/basic.rakudo aborted 2 test(s)
   S12-introspection/walk.t aborted 6 test(s)
   S32-list/grep.rakudo aborted 6 test(s)
20:46
Coke msg cotto - if SUPER is now working, can we kill DYNSUPER ? 20:48
purl Message for cotto stored.
cotto Coke, what's the purpose of DYNSUPER vs SUPER? 20:52
dalek kudo: 426942a | pmichaud++ | src/builtins/eval.pir:
Correct problem with statement-style package declarators (RT #67976).
20:53
Coke cotto: presumably, to do for dynamic PMCs what SUPER did for core PMCs.
but that's just a guess. there's no docs, and it generates invalid C code.
s/no/few?/
Ah. there is some documentation; but I think it's outdated. 20:54
cotto it looks like it's a runtime vs compiletime distinction
Coke except that we don't do the compiletime anymore, do we? 20:55
dalek rrot: r40314 | NotFound++ | trunk/compilers/imcc/cfg.c:
[cage] delete an unused var
Coke wasn't that all moved to runtime?
cotto Yes.
I think the DYN- variants can be deprecated.
Coke I think they can be ripped out.
cotto Wouldn't that be an API change?
Coke if it worked, sure. 20:56
at least DYNSUPER is broken - didn't you just address that ticket?
(and fixed it by making SUPER work?)
NotFound Last week we had some consensus about no need to deprecate thigs that were not working for some time. 20:57
Coke (also, DYNSUPER seems to be the last DYN* macro for pmc2c. 20:58
cotto NotFound, thanks. That makes life a little simpler.
I don't see any point in keeping it. I'll rip it out. 20:59
Coke cotto+=
cotto++
dalek kudo: 5b477c0 | pmichaud++ | docs/release_guide.pod:
Note the release manager for each of the previous releases,
21:05
Coke PerlJam: Ha ha.
PerlJam volunteers Coke for the August release ;)
Coke can follow directions like the next guy. 21:07
21:11 iblechbot joined 21:12 urkle joined
dalek rrot: r40315 | NotFound++ | trunk (2 files):
[cage] remove obsolete function str_dup
21:13
Coke eek, damian's writing code again. someone get the taser. 21:14
pmichaud damian? code? /me misses the reference. 21:15
cotto ooh. where?
Coke quotes "Further to that idea, I'm actually planning to attempt to port 21:16
Contextual::Return to Perl 6 in the next few weeks."
(perl6 mailing lists)
pmichaud aha!
very interesting.
purl very interesting. is that a quote?
dalek rrot: r40316 | cotto++ | trunk (2 files):
[pmc2c] rip out DYNSUPER, which isn't needed now that it and SUPER act the same
cono ++ <- is that for purl? 21:18
Coke karma cotto
purl cotto has karma of 792
Coke karma cono
purl cono has karma of 2
cono :D
Coke karma coke?
purl coke has karma of 3133
Coke bets most of that is for the beverage.
moritz karma c
purl c has karma of 7873
particle karma crack 21:19
purl crack has karma of 34
Coke karma karma?
purl karma has karma of 58
Coke ok, I'm bored now.
NotFound I've put a lot of karma into C :D
cono need work better for karma :D
dalek cnum-dynpmcs: r124 | darbelo++ | trunk/src/pmc/decint.pmc:
[DecInt] Use SUPER() for the set_*_ative VTABLEs.
21:24
kudo: 2665eef | pmichaud++ | docs/release_guide.pod:
Add particle++ for the September release.
particle karma chameleon 21:25
purl It comes and goes.
jonathan karma ran over dogma
purl ran over dogma has neutral karma
pmichaud afk, errands 21:36
21:37 dukeleto joined 22:02 Bruce joined 22:12 elmex_ joined
dalek cnum-dynpmcs: r125 | darbelo++ | trunk/ (2 files):
[decTest] Adjust paths so that we can run dectest from the root dir.

Configure.pl must still be run separately.
22:20
treed What does $<dot>='.' mean? 22:22
treed hasn't seen that $thing in a rule before.
jonathan $<foo>=... means "capture the next atom into the named capture foo" 22:23
moritz it means make the match of '.' (which is a dot) available in $/<dot>
jonathan So in that case, yes, what moritz said.
treed Huh. 22:24
But the '.' actually has to match in that place?
Or does that make a one-off rule that has to be used like <dot>?
dalek kudo: e2d6f13 | jnthn++ | src/ (3 files):
Implement declaration of methods on the metaclass (e.g. method ^foo($obj, ... ) { ... }). Also we toss the use of Parrot's MMD in calling !meta_compose; it's less code to not use it anyway.
22:29
kudo: 6999e58 | moritz++ | docs/release_guide.pod:
[docs] masak++ is release manager for November
treed <.identifier> 22:30
How about that . there?
moritz it means that it's not captured
so tehre's no $/<identifier> capture anywhere 22:31
treed Ah. 22:34
But it still needs to be there for the match.
moritz right. 22:35
treed God, I just don't understand why the Cardinal grammar was done this way. 22:37
There are rules/tokens that aren't used anywhere.
moritz suggests asking Tene ;-)
treed But look like they should be.
Tene would probably just say "Yeah, it's broken. I told you that."
moritz ;-)
treed What I don't get is how it works right now.
22:37 rg1 joined
Tene treed: it was adapted from a translation of the real ruby grammar. 22:38
22:39 kid51 joined
Tene There are unused rules because I tried to reduce the number of rules used to make the parsing more reasonable. 22:39
OR
because I never got around to making that rule actually work
so it's not included anywhere because it crashed the parse.
treed nods. 22:40
Tene also, the latter. ;)
treed finally starts figuring out how method calls are parsed. 22:42
Tene I'm sorry.
treed It's mostly just where I find something and think that it's what I'm looking for. 22:43
Then find out "Oh, no, that's something else."
I'm also not entirely sure why the methodcall rule uses "operation" as the subrule instead of just identifier 22:44
AFAIK, ` isn't a valid method name.
Tene dunno
change it and see if anything dies.
purl Tene: that doesn't look right
treed Heh. 22:45
Huh.
method operation uses $<identifier>
even though in the rule, it's <.identifier>
dukeleto howdy 22:46
22:49 tetragon joined
cotto hi dukeleto 22:50
dukeleto cotto: i am working on writing tests and understanding the parrot_debugger, do you have any words of wisdom? 22:51
22:52 hercynium joined
cotto "" 22:56
dukeleto cotto: 10-4
purl 6
cotto unless those are two separate things
22:57 HostileParadox_ joined
dukeleto cotto: separate but related 22:57
cotto I know tests at least marginally well, but I've hardly touch the debugger code. 23:00
dukeleto i just added a bunch of tests last night, but now I am running into things that I don't think work correctly, so I am diving into the code
cotto I'd be glad to provide an extra set of eyes. 23:03
dukeleto trac.parrot.org/parrot/ticket/592 is kind of vague, what kind of docs are wanted? I would personally like to see some examples in the docs, because some things are not clear to me right now 23:06
dalek rrot: r40317 | dukeleto++ | trunk/src (2 files):
Small improvements to the parrot_debugger documentation
23:10
cotto "kind of vague" is putting it mildly 23:12
I'm not sure how to flesh out the requirements, though. 23:13
23:16 Whiteknight joined
dukeleto cotto: what would be useful for you? 23:16
do you use the debugger much in your daily dev activities with parrot? 23:17
cotto actually, hardly at all 23:18
but a lot of what I do is below PIR. 23:19
You might look at perl's debugger for ideas.
dalek TT #884 created by dukeleto++: parrot_debugger generates a Bus error if you set a break point before the ... 23:21
dukeleto cotto: i can't tell if you are trying to be really funny or really mean, but I have read through the perl5 debugger's source, and I don't know that we want to model parrot's in that image :) 23:22
23:22 theory joined
cotto dukeleto, neither. I was just suggesting that you look at the perl debuggers docs to see what's useful. 23:24
chromatic Only the features.
dukeleto chromatic: touché
i can't seem to get printing of registers working either, does anybody have a working example of that? 23:25
cotto: the perl5 debugger does have copious amounts of comments-as-docs, but much of it is contradictory or is commenting about not understanding code 23:26
chromatic I thought that already worked.
23:26 patspam joined
cotto is not very useful today 23:27
dalek TT #885 created by dukeleto++: parrot_debugger printing registers does not work 23:31
rrot: r40318 | chromatic++ | trunk/src/embed.c:
[src] Added an fclose() to the IO error branch in Parrot_pbc_read() -- no point
23:45
rrot: r40319 | chromatic++ | trunk/config/gen/platform/generic/exec.c:
[config] Plugged a short-lived, very theoretical memory leak when exec()ing a

allocating functions and their corresponding frees anyway. (Coverity CID #358)
23:59