|
Parrot 2.8.0 will be released at "2010-09-21 08:00 UTC" | parrot.org Log: irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | close 25 tickets; remove deprecated items (especially CodeString); record deprecations; polish for 2.8 release Set by moderator on 18 September 2010. |
|||
|
00:00
M_o_C left
00:30
kid51 joined
00:33
hercynium left
00:36
theory left
00:47
TonyC_ is now known as TonyC
01:01
hercynium joined
|
|||
| luben | why do we insist that cloned hashes should have the same internal ordering? | 01:02 | |
| cotto | Do we depend on that assumption? | 01:03 | |
| luben | it is in the test suite | 01:05 | |
| dalek | rrot: r49140 | plobsing++ | trunk (3 files): integer constants or in-line in bytecode. this is dead code. |
01:06 | |
| luben | I think we do not depend on it | ||
| cotto | That strikes me as questionable. | ||
| Oh. Apparently I wrote that test. | 01:07 | ||
| luben | me too. and hash PMC get_repr could be done in more simple manner. I will work on that | ||
| cotto | trac.parrot.org/parrot/ticket/116 | ||
| chromatic | We rely on it for OrderedHash anyway. | 01:08 | |
| plobsing | luben: I ran into that issue with order preservation across freeze/thaw. I just todoed the test. | ||
| cotto | I thought bacek decoupled Hash from OrderedHash. | 01:09 | |
| chromatic | If that's the case, +1 to hiding hash ordering. | ||
| cotto | Yeah. My test strikes me as fixing the problem at the wrong level. | 01:10 | |
| luben | I am compiling coptimized clone and will run rakudo spectest to see if there are difference | ||
| cotto | optimized by the police? | ||
| chromatic | If it changes class attribute offsets, we need to fix that problem in class attributes. | 01:11 | |
| cotto | -Oticket | ||
| plobsing | looks like orderedhash uses a doubly linked list to manage ordering | ||
| cotto | bacek++ | 01:13 | |
| luben | I am running now rakudo spectest to see if it makes a difference | 01:17 | |
| dalek | rrot: r49141 | plobsing++ | trunk/src/pmc/imageiofreeze.pmc: fill out doc stubs |
01:22 | |
| sorear | Would it be a good idea to make an explicit distinction between interface tests and unit tests? | 01:31 | |
| plobsing | in terms of this test, the confusion could have been avoided by simply testing the ordered behaviour in tests for orderedhash. | 01:34 | |
| that way, people would understand *why* ordering should be preserved. | 01:35 | ||
|
01:35
dngor_ joined
01:36
dngor left
|
|||
| dalek | rrot: r49142 | plobsing++ | trunk/MANIFEST.generated: update MANIFEST.generated to reflect recent PMC changes |
01:39 | |
|
01:41
dngor_ is now known as dngor
01:51
gottreu joined
01:58
contingencyplan left
02:02
kid51 left
02:14
PhatEddy left
02:35
janus left
02:43
LaVolta joined
02:54
janus joined
|
|||
| dalek | rrot: r49143 | plobsing++ | branches/typesafe_consttable: creating branch to make num, str, and pmc constants disjoint |
03:03 | |
| rrot: r49144 | luben++ | trunk/src/hash.c: optimize hash cloning |
03:20 | ||
| rrot: r49145 | luben++ | trunk/src/hash.c: fix some warnings |
|||
| rrot: r49146 | luben++ | trunk/t/pmc/hash.t: todo() a test for hash internal ordering |
|||
| plobsing | luben: nice hash optimization. how much of a win is it? | 03:36 | |
|
03:37
theory joined
|
|||
| chromatic | 4.7% for Rakudo startup, if I did it right. | 03:48 | |
| plobsing | nice | 03:49 | |
| chromatic | I distrust that number somewhat, but I look forward to the new benchmark graphs. | 03:52 | |
| msg smash Can you run your benchmark scripts against Parrot and Rakudo HEAD? I expect some interesting numbers. | |||
| purl | Message for smash stored. | ||
| aloha | OK. I'll deliver the message. | ||
| plobsing | typesafe_consttable should permit a significant improvement to rakudo startup | 03:54 | |
| I estimate roughly a reduction by 1/3 in the number of subs thawed and 1/2 in the number of lexpads | |||
| chromatic | Really? | ||
| plobsing | yes | ||
| chromatic | Why are we thawing so many subs? | 03:55 | |
| plobsing | briefly, each constant gets frozen as an independant object graph. If these object graphs actually intersect each other, there is waste. | ||
| chromatic | Ah. | ||
| plobsing | One place the object graphs intersect is :outer subs | ||
| now, if we freeze all pmc constants together, they can cross-reference | 03:56 | ||
| but that requires having all pmc constants separate from the others | |||
| chromatic | Makes sense. | ||
| Smaller bytecode is an even bigger win. | |||
| plobsing | as an added bonus, autoclose will work from PBC again. although I'm not terribly fond of that "feature" | 04:02 | |
| chromatic | We should rethink how we do subs, scopes, and lexicals. | ||
| plobsing | I agree. For example, the default lexicals implementation can determine lexical information statically. It doesn't make sense to use hash lookups (we could be using an array). | 04:03 | |
| chromatic | Right. | 04:04 | |
| Hm, that was a segfault waiting to happen. | 04:10 | ||
| dalek | rrot: r49147 | plobsing++ | branches/typesafe_consttable (5 files): change constant accessor interface. underlying implementation unchanged. |
04:11 | |
| purl | dalek: that doesn't look right | ||
| plobsing | chromatic: what was? | 04:13 | |
| purl | (not was) | ||
| chromatic | LexPad's get_pmc_keyed_str(). | ||
| See if you can spot the error before I commit. | |||
| plobsing | PMCNULL vs NULL? | 04:15 | |
| chromatic | Exactly. | ||
|
04:24
jsut joined
|
|||
| dalek | rrot: r49148 | chromatic++ | trunk/src/pmc/lexpad.pmc: [PMC] Fixed a segfault and optimized LexPad. instead of NULL; get_pmc_keyed_str() is now safer. It's also slightly faster, but you'll have trouble noticing in most benchmarks. |
04:28 | |
|
04:29
jsut_ left
|
|||
| chromatic | If we used STRINGNULL more consistently (and removed NULL as a synonym), we could simplify Parrot_str_equal. | 04:30 | |
| Maybe we should deprecate that. | 04:38 | ||
| plobsing | go for it | 04:40 | |
| dalek | rrot: r49149 | chromatic++ | trunk/src/string/api.c: [str] Fixed a compiler warning. |
04:45 | |
|
05:15
rurban_ joined
05:18
rurban left,
rurban_ is now known as rurban
05:25
gottreu left
|
|||
| chromatic | msg dukeleto any further info on the stress_strings.pir slowdown? Reviewing commits makes me wonder about 48727, but nothing I'm confident about. | 05:56 | |
| purl | Message for dukeleto stored. | 05:57 | |
| aloha | OK. I'll deliver the message. | ||
| chromatic | 48586 could do it. | 05:58 | |
| GeJ_ | is parrot_hash_iterate(arg, some_statement; some_other_statement; and_another_one;); a trick? | 06:32 | |
| cotto | It's a macro. | ||
| GeJ_ | Aaaaah! | ||
|
06:32
GeJ_ is now known as GeJ
|
|||
| cotto | It's how we pretend to have closures. | 06:32 | |
| well, anonymous subs | 06:33 | ||
| purl | anonymous subs are used sometimes :) | ||
| cotto | forget anonymous subs | ||
| purl | cotto: I forgot anonymous subs | ||
|
06:36
cognominal left
06:49
cognominal joined
|
|||
| dalek | rrot: r49150 | luben++ | trunk (3 files): reworked HashIterator PMC to use linear scan - unTODO-ed some tests that check hash internals |
06:59 | |
|
07:13
jjore left
07:14
jjore joined
07:24
chromatic left
|
|||
| dalek | a: 08498fb | fperrad++ | setup.pir: since r49086, dynpmc item allows *.h |
07:25 | |
|
07:52
lucian joined
|
|||
| bacek | aloha, humans | 07:59 | |
|
08:04
fperrad joined
|
|||
| dalek | rrot: r49151 | mikehh++ | trunk/src/pmc/hashiterator.pmc: fix codetest failures - trailing whitespace and keyword and any subsequent open parenthesis |
08:07 | |
| rrot: r49152 | mikehh++ | trunk/src/hash.c: fix codetest failure - parentheses should not have space immediately |
|||
| bacek | bloody svn... I've lost my latest merge from trunk to gc_massacre... | 08:09 | |
| mikehh | plobsing: ping | ||
| bacek: hi there | 08:10 | ||
| purl | what's up, mikehh. | ||
| bacek | hi mikehh | 08:11 | |
| sorear | bacek is still on svn? | ||
| bacek | git-svn | 08:12 | |
| it's fucked up during dcommit... Badly. | |||
| mikehh | bacek: still getting g++ build failures with gc_ms2.c | 08:16 | |
| also with imageiothaw.pmc in trunk | 08:17 | ||
| nopaste | "mikehh" at 192.168.1.3 pasted "g++ build failures at r49152 - src/pmc/imageiothaw.pmc" (12 lines) at nopaste.snit.ch/23457 | 08:25 | |
|
08:27
lucian left
|
|||
| mikehh | msg plobsing getting g++ build failures with src/pmc/imageiothaw.pmc - see nopaste.snit.ch/2345 | 08:28 | |
| purl | Message for plobsing stored. | ||
| aloha | OK. I'll deliver the message. | ||
| mikehh | dammit try again | 08:29 | |
| msg plobsing getting g++ build failures with src/pmc/imageiothaw.pmc - see nopaste.snit.ch/23457 | |||
| purl | Message for plobsing stored. | ||
| aloha | OK. I'll deliver the message. | ||
| dalek | rrot: r49153 | bacek++ | branches/gc_massacre (45 files): Merge branch 'master' into gc_massacre \tMANIFEST \tMANIFEST.SKIP \tconfig/gen/makefiles/root.in \tdocs/project/release_manager_guide.pod \tsrc/gc/alloc_resources.c \tsrc/gc/gc_ms.c \tsrc/gc/gc_private.h \tsrc/hash.c \tt/op/string_cs.t |
08:40 | |
| purl | MANIFEST is useful for lots of stuff and don't forget to regenerate the manifest with perl tools/dev/mk_manifest_and_skip.pl, unless i am using git-svn | ||
| purl | MANIFEST.SKIP is t/.+.t | ||
| purl | somebody said config/gen/makefiles/root.in was what generates parrot/Makefile | ||
| purl | src/hash.c is probably an example use of this. | ||
| rrot: r49154 | mikehh++ | branches/gc_massacre/MANIFEST.SKIP: re-generate MANIFEST.SKIP |
|||
| cotto | botkill | 08:44 | |
|
08:45
tadzik joined
|
|||
| mikehh | bacek: gc_massacre - ./miniparrot -Iruntime/parrot/include config_lib.pir > runtime/parrot/include/config.fpmc -> Segmentation fault | 08:50 | |
| bacek | mikehh, I know. Trying to fix it now... | ||
| mikehh | bacek: good on you mate | 08:51 | |
| bacek: codetest passes except c++ comments in src/gc/gc_ms2.c | 08:52 | ||
| bacek | mikehh, ok, thanks. | ||
| dalek | rrot: r49155 | bacek++ | branches/gc_massacre/src/string/api.c: Start sharing string buffers again. |
08:57 | |
| rrot: r49156 | bacek++ | branches/gc_massacre/src/gc/gc_ms2.c: Start using String GC in GC MS2 |
|||
|
09:06
jan left
|
|||
| bacek | mikehh, fixed. | 09:07 | |
| dalek | rrot: r49157 | bacek++ | branches/gc_massacre/src/gc (6 files): More decoupling of String GC from Memory_Pools |
09:14 | |
| rrot: r49158 | bacek++ | branches/gc_massacre/src/gc/gc_ms2.c: Properly free allocated string memory. |
|||
| bacek | seen jnthn | 09:22 | |
| purl | jnthn was last seen on #parrot 1 days, 11 hours, 1 minutes and 51 seconds ago, saying: I think the important thing is that whatever it's accessed as, it should be able to be pointed at a chunk of mmaped memory. [Sep 17 22:20:17 2010] | ||
| aloha | jnthn was last seen in #perl6 9 hours 46 mins ago saying "*to them :-)". | ||
| bacek | ookey. gc_massacre is twice faster on building rakudo then before. | 09:24 | |
| mikehh, can you test "time make" of Rakudo on trunk and gc_massacre? | |||
| mikehh, on something different from Linux/amd64 | 09:26 | ||
|
09:30
jan joined
|
|||
| luben | bacek, how is the difference between trunk and branch? | 09:46 | |
| here it is 3.20/4.45 on linux/amd64 | 09:47 | ||
| sorear | branch is *slower*? | 09:49 | |
| bacek: i could test Linux/i386; have you managed to get memory use back under 400-450 yet? | 09:50 | ||
| bacek | sorear, no idea... | 09:58 | |
| luben, branch isn't optimized for performance just yet | 09:59 | ||
| sorear | luben: what was peak mem usage while building on amd64? | 10:00 | |
| luben | yes, i have figured. I'm waiting it to land in trunc to dive into GC internals | ||
| bacek | luben, I'm no going to merge it back before I'll be 100% sure that gc_ms2 is better than old one | 10:05 | |
| luben | I will take a look on the branch to just grasp the idea. Then I could help with making it better | 10:06 | |
|
10:09
orc joined
|
|||
| luben | time to go for a lunch here. see you later | 10:09 | |
| mikehh | bacek: switching to i386 now | 10:14 | |
|
10:22
mikehh left
10:27
orc left
10:28
LaVolta left,
fperrad left
10:41
lucian joined
10:45
mikehh joined
11:00
mikehh left
11:17
ruoso joined
11:24
fperrad joined
11:40
whiteknight joined
11:43
GodFather left
11:58
kid51 joined
12:00
contingencyplan joined
|
|||
| whiteknight | good morning, #parrot | 12:24 | |
|
12:27
contingencyplan left
|
|||
| jnthn | bacek: Looking for me? :-) | 12:55 | |
|
13:13
Patterner left
13:15
rurban_ joined
13:18
Psyche^ joined,
Psyche^ is now known as Patterner,
rurban left,
rurban_ is now known as rurban
13:46
whiteknight left
13:53
jan left
14:01
sjn_ joined
14:05
tadzik left
14:16
tadzik joined
14:39
mj41 left
|
|||
| dalek | TT #1794 created by nwellnhof++: Linear hash scan assumes non-NULL keys | 14:40 | |
| TT #1794: trac.parrot.org/parrot/ticket/1794 | |||
|
14:43
sjn_ left
14:45
mj41 joined
14:50
jan joined
14:52
sjn_ joined
15:06
hercynium left
15:21
kid51 left
|
|||
| sECuRE | after changing documentation of a function in src/io/socket_unix.c, where can i find it to proof-read / ensure i got all tags set properly? | 15:40 | |
| (for the PMC documentation i run 'make html' and open docs/html) | |||
|
15:46
mikehh joined
15:49
orc joined
15:51
whiteknight joined,
szbalint_ is now known as szbalint
|
|||
| whiteknight | good morning #parrot | 15:53 | |
| orc | good night | 15:57 | |
|
16:06
cxreg2 is now known as cxreg
16:11
rotund joined
16:12
rotund left
16:15
fperrad left
16:18
fperrad joined
16:19
orc left
16:27
rotund joined
16:31
rotund left
16:49
tadzik left
16:51
lucian left
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#115), fulltest) at r49158 - Ubuntu 10.10 beta (gcc-4.5 with --optimize) | 17:06 | |
|
17:06
jan left
|
|||
| dalek | ast: bc0487b | pmichaud++ | S03-operators/short-circuit.t: Correct test in short-circuit.t (RT #77864). |
17:06 | |
| rrot: r49159 | plobsing++ | branches/typesafe_consttable (18 files): separate num, str, and pmc constants |
17:07 | ||
|
17:20
PhatEddy joined
17:47
thowe joined
|
|||
| dalek | TT #951 closed by jkeenan++: correct some minor bugs in t/pmc/threads.t | 17:47 | |
| TT #951: trac.parrot.org/parrot/ticket/951 | |||
| tracwiki: v143 | whiteknight++ | Languages | 17:54 | ||
| tracwiki: Moving Matrixy to the "Inactive" state. The language is not dead, but there are some prerequisites to further development and I have other higher priorities at the moment. | |||
| tracwiki: trac.parrot.org/parrot/wiki/Languag...ction=diff | |||
|
17:54
Chandon left
18:02
whiteknight left
18:07
Andy joined
18:13
whiteknight joined
18:30
hercynium joined
18:32
Chandon joined
18:33
whiteknight left
18:38
whiteknight joined
|
|||
| mikehh | rakudo (ccde8dc) builds on parrot r49158 - make test, make spectest_smolder(#117) PASS - Ubuntu 10.10 beta amd64 (gcc-4.5 with --optimize) | 18:44 | |
|
18:46
hercynium_ joined,
hercynium_ left
18:47
lucian joined
18:50
hercynium left,
hercynium joined
18:52
Andy left
19:13
senf_statt_oel joined
19:15
rurban left
|
|||
| thowe | how do I compile a pir to bytecode? | 19:31 | |
| whiteknight | parrot -o foo.pbc foo.pir | 19:34 | |
| thowe | hmm, yeah. Tried that. I get a bunch of syntax errors about the pir | 19:35 | |
| sorear | you might try not using Rakudo output for your tests | 19:36 | |
|
19:36
lucian left
|
|||
| sorear | Rakudo customizes the pir parser, pir it generates cannot be parsed in any other context | 19:36 | |
| thowe | oh... then I assume I need some rakudo-specific method to produce parrot bytecode... | 19:37 | |
| jnthn | sorear: That's not really true. | 19:38 | |
| sorear: We do have some dynops. | |||
| And I guess just don't emit .laodlib directives for them | |||
| We need a tweak to PAST for that, but since nqp-rx is getting dynops I'm just about to block on that. | 19:39 | ||
| So it'll get done soon. :-) | |||
| Then fixing up Rakudo's code-gen should be easy. | |||
| For now, add a .loadlib 'perl6_ops' to the start of the PIR file by hand; that should be enough. | |||
| (We don't hit the issue with pre-compiled modules since in taht case, Rakudo has already been loaded and pulled in the ops. It's only for scripts that will be run directly that we have the issue.) | 19:40 | ||
| sorear | Anyway, why bother? Perl6::Module::Loader looks for Foo.pm, Foo.pm6, and Foo.pir, NOT Foo.pbc | 19:42 | |
| jnthn | sorear: True, but that's gonna have to change at some point. | 19:44 | |
| Unless we want to store serialized blobs of stuff in PIR, anyways. | 19:45 | ||
|
19:59
hercynium left
20:25
fperrad left
20:33
jan joined
20:38
perlite left,
perlite joined
20:41
contingencyplan joined
20:44
PacoLinux left
|
|||
| dalek | rrot: r49160 | plobsing++ | branches/typesafe_consttable (2 files): fix some minor logic bugs |
20:47 | |
|
20:57
preflex left
20:59
preflex joined
|
|||
| dalek | rrot: r49161 | plobsing++ | branches/typesafe_consttable/t/compilers/imcc/syn/regressions.t: keys no longer length limited |
21:04 | |
|
21:09
thowe left
|
|||
| dalek | kudo: 523da45 | pmichaud++ | build/PARROT_REVISION: Bump PARROT_REVISION. |
21:22 | |
|
21:29
senf_statt_oel left
21:39
ruoso left
21:57
ruoso joined
21:59
tadzik joined
22:14
tadzik left
|
|||
| dalek | TT #1795 created by ronaldws++: pcre_compile picked wrong function signature letter. | 22:53 | |
| TT #1795: trac.parrot.org/parrot/ticket/1795 | |||
|
23:11
whiteknight left
|
|||
| NotFound | Grrrroarrrrr | 23:33 | |
| Wrong channel, sorry :-X | |||
|
23:36
kid51 joined
|
|||
| dalek | TT #150 closed by NotFound++: load_bytecode, loadlib, and HLL | 23:44 | |
| TT #150: trac.parrot.org/parrot/ticket/150 | |||
|
23:46
hercynium joined
23:51
hercynium left
|
|||