|
Parrot 3.0.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: Fix ipv6-related failures | Test imcc_interfaces and annotations-tree branches Set by moderator on 31 January 2011. |
|||
|
00:04
NotFound_b left
00:15
plobsing joined
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#7050) fulltest) at 3_0_0-443-gbe26ad5 - Ubuntu 10.04 (LTS) amd64 (g++) | 00:35 | |
| cotto_work | mikehh: glad to hear it. thanks. | 00:36 | |
| mikehh | cotto_work: got a whole bunch of different Ubuntu distros on my system (not VMed) and am just updatin' them | 00:37 | |
|
01:02
kid51 joined
01:06
wknight-phone joined
01:11
cosimo left
01:13
nwellnhof left
01:21
wknight-phone left
|
|||
| kid51 | afk | 01:21 | |
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#7054) fulltest) at 3_0_0-443-gbe26ad5 - Ubuntu 10.04 (LTS) amd64 (g++ with --optimize) | ||
| cotto | ~~ | 01:22 | |
|
01:27
jsut_ joined
01:32
jsut left
|
|||
| bacek_at_work | cotto: Method 'ACCEPTS' not found for invocant of class 'Human' :) | 01:33 | |
| cotto | Nobody accepts me. :( | ||
| bacek_at_work | cotto, you choose wrong pill. Welcome to the real world! | 01:36 | |
| cotto | rl is hard. Let's go shopping. | 01:38 | |
| whiteknight | shopping is hard. especially with my wife | 01:42 | |
| let's go drinking | |||
| cotto | wfm | ||
| plobsing | whiteknight: (imcc_compreg_pmc update) many segfaults now due to IMCC returning PMCNULL on failure in stead of using exceptions. combined with Null.get_pointer() not being terribly helpful, we try to use the pf even if IMCC failed the parse. | 01:50 | |
| not sure if we want to rework IMCC to throw exceptions or callers to handle PMCNULL as failure | 01:51 | ||
| whiteknight | yeah, I never reimplemented error messages. I guess I need to do that now | 02:00 | |
| if imcc returns Null, we should pull an error message from imcc_get_last_error() (yet to be written), and throw that as an exception | 02:01 | ||
| I was hoping it wouldn't be high-priority for a while | |||
| We could also fix IMCC to throw exceptions, but that could be a huge mess | 02:02 | ||
| because we need to cleanup and free resources on error, so we can't just do that anywhere | |||
| plobsing | IMCC doesn't appear to output the error messages until it has jumped back out of the parse | 02:05 | |
| at least that's for the cases I'm seeing | 02:06 | ||
| we could use a stringbuilder to accumulate the error string | |||
| whiteknight | we shouldn't need to do that, I think the error messages are in imcc->error_message or something like that | 02:12 | |
| IMCC_fatal dumps a string to imcc->error_message and jumps to a makeshift error handler | |||
|
02:12
Kristaba left
|
|||
| whiteknight | IMCC_fataly is basically the same thing | 02:13 | |
| plobsing | IMCC may encounter several warnings leading up to a warning and also may have several levels of context to add to each of these | 02:14 | |
| s/up to a warning/up to an error/ | |||
| whiteknight | Either way, I'm pretty convinced that the error text is already dumped into a single string | 02:18 | |
| or dumped to stderr directly | |||
| whatever IMCC_warn does | 02:19 | ||
| in master, imcc->error_message (or whatever it's called) is checked for errors, and if it's not NULL the text of it is thrown as an exception | 02:20 | ||
| so I know there isn't a hell of a lot more than that from the libparrot side | 02:21 | ||
| whatever IMCC does is inconsequential. it can keep doing what it's always been doing: sucking | 02:22 | ||
| I mean, handling it's own error messages | 02:24 | ||
| plobsing | IMCCompiler needs to identify and handle those exception cases though | 02:25 | |
| continuing on as though we had a proper packfile is wrong | |||
| whiteknight | right. Like I said, I hadn't gotten around to the error messages yet | ||
| plobsing | admittedly, if Null.get_pointer() wasn't so stupid, we'd get that for free. | ||
| whiteknight | it's hard to believe it does anything, much less something as bad as it does | 02:26 | |
| It should return NULL | |||
| plobsing | it shouldn't exist. "Null PMC access in get_pointer()". | 02:27 | |
| I can see returning NULL as an alternative sane behaviour. | |||
|
02:28
kid51 left
|
|||
| whiteknight | I'll put together an imcc_get_last_error function tomorow morning and start throwing proper exceptions | 02:30 | |
| maybe that will cleanup the test problems | |||
| plobsing | Oh. I see why the get_pointer() is stupid. Its part of the LTA singletons system. | 02:31 | |
| whiteknight | oh. shit | ||
| stupid singletons | |||
|
02:31
gg411 joined
|
|||
| whiteknight | more like "simpletons" amirite? | 02:32 | |
| sorry about that | |||
| I think that is probably what's causing my build problems too | 02:33 | ||
|
02:33
AndChat| left
|
|||
| whiteknight | anyway, I have to get moving off to bed. I'll talk to you tomorrow. Thanks for looking at this | 02:33 | |
| mikehh | rakudo (2666b6f) - builds on parrot (3_0_0-443-gbe26ad5)- make test, make spectest_smolder[(#7063), roast (fbe953c)] PASS - Ubuntu 10.04 (LTS) amd64 (g++ with --optimize) | ||
| 27,623 ok, 0 failed, 612 todo, 1,837 skipped and 0 unexpectedly succeeded | |||
| cotto | 'night whiteknight | 02:37 | |
| I don't know what's up with the way pmc singletons work. | 02:38 | ||
|
02:41
wknight-phone joined
02:42
wknight-phone left
|
|||
| plobsing | I don't see why we have to enforce singletons at the pmc-object-system level. It should be possible for languages to implement that pattern themselves, and do so less poorly. | 02:42 | |
|
02:43
whiteknight left
|
|||
| cotto | plobsing, +1 | 02:50 | |
| but Parrot's a different beast now than it was when they were first implemented | |||
|
02:50
adu joined
03:24
cosimo joined
|
|||
| Andy | FYI, we're having an ack 2.0 design mini-meeting in #ack | 03:25 | |
|
03:28
mikehh left
|
|||
| cotto | sounds fun | 03:30 | |
|
04:14
plobsing_ joined
04:19
plobsing left
04:34
AndChat| joined
04:37
gg411 left
04:51
AndChat| left
|
|||
| PerlJam wonders what the results of the ack 2.0 design mini-meeting were | 05:14 | ||
| Andy | we're still having it | 05:15 | |
| pmichaud | good evening, #perljam | ||
| Andy | but you can check out ack2 | ||
| pmichaud | Andy++ # ack rulez | ||
| PerlJam | greetings | ||
| Andy | thanks | ||
| see github.com/petdance/ack2/blob/master/ackrc and github.com/petdance/ack2/blob/master/README.mkd | |||
| PerlJam | cool | 05:16 | |
| Andy++ # ackrc | 05:20 | ||
| Andy | There will be no hardcoded anything in ack 2.0 | ||
| dalek | rrot/generational_gc: b6ff316 | bacek++ | src/ (2 files): Add write barriers when we poke into Sub guts. |
05:25 | |
| rrot/generational_gc: e7e6a23 | bacek++ | src/gc/gc_gms.c: Temporary hack to paint old objects white |
|||
|
05:31
Andy left
05:36
Benabik joined
05:44
allison left
05:57
rurban_ joined
06:00
rurban left,
rurban_ is now known as rurban
|
|||
| dalek | rrot/generational_gc: b75e23a | bacek++ | src/pmc/nci.pmc: Write barriering NCI in build_func. |
06:04 | |
| rrot/generational_gc: e6eda43 | bacek++ | src/gc/gc_gms.c: Add GMS self-validation function to recursively check that all reachable |
|||
|
06:05
mikehh joined
06:27
cottoo joined,
cotto left,
cottoo left,
cottoo joined
|
|||
| dalek | rrot/generational_gc: 403f10d | bacek++ | src/gc/gc_gms.c: Seal objects moved out of dirty_list |
06:28 | |
| rrot/generational_gc: cbe590b | bacek++ | src/gc/gc_gms.c: Put explanation why "dirty_list cleanup" is wrong. |
|||
| rrot/generational_gc: 6a2e975 | bacek++ | src/pmc/namespace.pmc: Made Namespace PMC reuse Hash functionality. |
|||
| bacek_at_work | msg whiteknight github.com/parrot/parrot/commit/cbe590b445 | ||
| aloha | OK. I'll deliver the message. | ||
| cottoo | flash-- | 06:29 | |
| even sandboxing can't keep it from rendering fluxbox useless | |||
|
06:30
cottoo left,
cottoo joined,
cottoo is now known as cotto,
allison joined
06:38
cosimo left
|
|||
| cotto | It seems like everything that's compatible with cachegrind is compatible in its own special way. | 06:44 | |
|
06:45
theory left
|
|||
| cotto | It'd be nice if there were at least a standard they could violate. | 06:47 | |
| stupid almost-useful tools | 06:49 | ||
| aloha, clock? | 06:55 | ||
| aloha | cotto: LAX: Wed, 22:55 PST / CHI: Thu, 00:55 CST / NYC: Thu, 01:55 EST / UTC: Thu, 06:55 UTC / LON: Thu, 06:55 GMT / BER: Thu, 07:55 CET / TOK: Thu, 15:55 JST / SYD: Thu, 17:55 EST | ||
| cotto | bacek, ping | ||
| bacek_at_work | cotto, pong | 06:56 | |
| cotto | bacek, the changes to the namespace pmc in your gen gc branch look out of place. | ||
| are they related to the gc work? | |||
| bacek_at_work | cotto, partially. It was one of "suspicious" PMCs which I look at. | 06:57 | |
| cotto | ok. | ||
| bacek_at_work | We can cherry-pick into master | ||
| cotto | I unlocked an achievement doing just that | ||
| :) | |||
| bacek_at_work | Just test it carefully. gen_gc branch is terribly broken | 07:00 | |
| cotto | sure | ||
| That's why I want to isolate that change. Bugs could easily hide there until the branch get cleaned up. | 07:01 | ||
| looks good so far | 07:02 | ||
| not surprising, of course | 07:03 | ||
| bacek_at_work | :) | 07:04 | |
| cotto | fakescience.tumblr.com/post/3034945...inary-code | 07:05 | |
| bacek_at_work | heh. Looks about all right :) | 07:07 | |
| dalek | rrot: e9db096 | bacek++ | src/pmc/namespace.pmc: Made Namespace PMC reuse Hash functionality. |
07:09 | |
| cotto | cherry-pick ftw | 07:10 | |
| bacek_at_work | cotto, did you try to read algo in gc_gms? | 07:17 | |
| cotto | not since you've updated it | ||
| bacek_at_work | cotto, it's quite different now :) | 07:18 | |
| cotto | It looked like you simplified it some. | ||
| bacek_at_work | Quite significantly. | 07:19 | |
| cotto | I'll look now, though my weak fleshy brain will need to sleep soon. | ||
| bacek_at_work | go to bed than :) | 07:20 | |
| cotto | github agrees | ||
| it seems to be under maintenance | |||
| 3 seconds of maintenance, apparently | 07:21 | ||
| back now | |||
| Nice. It's two screenfulls of text. Is that what you're implementing/debugging? | 07:23 | ||
| I feel like I can understand this. That's really good. | 07:27 | ||
| bacek++ | |||
| bacek_at_work | (implementing) yes | ||
| dalek | rrot/generational_gc: b8a9bfb | bacek++ | src/gc/gc_gms.c: Attempt to fix "WRONG" bit in cleanup dirty_list. If all children of PMC in same or older generation - remove it from dirty_list. |
07:35 | |
| rrot/generational_gc: 2597c15 | bacek++ | src/gc/gc_gms.c: Temorary reduce number of generations to 3. It reduce amount of information from stats report and doesn't affect functionality testing. |
07:38 | ||
| rrot/generational_gc: 3b12abc | bacek++ | src/gc/gc_gms.c: Fix stupid algo to select number of generations to collect |
07:43 | ||
| rrot/generational_gc: 079f6e6 | bacek++ | src/sub.c: Write barrier proper Sub PMC. |
08:05 | ||
| rrot/generational_gc: e440aff | bacek++ | src/pmc/default.pmc: Write barrier PMC_metadata in setprop |
08:43 | ||
| rrot/generational_gc: 128f58b | bacek++ | src/gc/gc_gms.c: Treat metadata as child for desicion of moving object out of dirty_list |
08:53 | ||
| rrot/generational_gc: fe450b3 | bacek++ | src/pmc/capture.pmc: Write barrier Capture after creating internal hash/array. |
|||
| rrot/generational_gc: cd05325 | bacek++ | src/pmc/default.pmc: Remove write barrier from default.setprop. It was a mistake. |
11:04 | ||
| rrot/generational_gc: 34dbcc7 | bacek++ | lib/Parrot/Pmc2c/PMCEmitter.pm: Fix generation of WB variant vtable. I suspect that RO variant is also broken. |
|||
|
11:13
adu left
11:17
contingencyplan left
11:25
wknight-phone joined,
wknight-phone left
|
|||
| dalek | rrot/generational_gc: 04d0f6b | bacek++ | src/gc/gc_gms.c: Reduce amount of stats output. |
11:43 | |
| rrot/generational_gc: e56a64d | bacek++ | src/pmc/capture.pmc: Fix write barrier in Capture. GC can be triggered by allocating of hash/array. We should seal Capture after it, just before setting attribute. Otherwise we'll miss writebarrier in Gen0. |
|||
|
12:11
bluescreen joined
12:16
fperrad joined
|
|||
| dalek | TT #1995 closed by gerd++: building a new release is broken; seem to be: "ops2c" is broken | 12:23 | |
| TT #1995: trac.parrot.org/parrot/ticket/1995 | |||
| rrot: aa43eb5 | mikehh++ | .gitignore: add runtime/parrot/library/YAML/Tiny.pir to .gitignore |
12:35 | ||
| rrot: ac03598 | mikehh++ | MANIFEST.SKIP: re-generate MANIFEST.SKIP |
|||
| bacek | Why we keep MANIFEST* in repo??? Can we just change "release manager guide" to generate them for release??? | 12:39 | |
| moritz | I thought MANIFEST.generated was the list of files to be installed, and manually maintained | 12:40 | |
| bacek | moritz, .generated - yes. Just MANIFEST and MANIFEST.SKIP always automatically generated | 12:42 | |
| YAY!!! | |||
| ~/src/parrot (generational_gc)$ make && echo 'HOORAY!!!' | |||
| /usr/bin/perl tools/build/pmc2c.pl --dump --no-lines src/pmc/default.pmc | |||
| make -C docs | |||
| make[1]: Entering directory `/home/bacek/src/parrot/docs' | |||
| make[1]: Nothing to be done for `all'. | |||
| make[1]: Leaving directory `/home/bacek/src/parrot/docs' | |||
| HOORAY!!! | |||
| bacek dancing around desk | 12:43 | ||
|
12:43
cotto left
|
|||
| moritz | \\o/ | 12:43 | |
| bacek: now for 'make test' :-) | |||
| dalek | rrot/generational_gc: cba8b69 | bacek++ | src/pmc/capture.pmc: Remove redundant check for PMC_data in Capture.mark. We use auto_attrs which |
||
| rrot/generational_gc: a36cbd7 | bacek++ | src/pmc/object.pmc: Write barrier Class when direct poking from Object |
|||
| rrot/generational_gc: 4b84ccc | bacek++ | lib/Parrot/Pmc2c/PCCMETHOD.pm: Put write barrier after PCCMethod body. If GC was triggered inside it we have to ensure that object is sealed properly |
|||
| bacek | moritz, in progress. But nqp built successfully | ||
| dalek | rrot/generational_gc: 2eb457b | bacek++ | src/pmc.c: Preserve old GC flags in pmc_reuse. |
||
| bacek | moritz, and at least opsc | ||
| dalek | rrot: 4f67ebc | (Gerd Pokorra)++ | docs/project/release_manager_guide.pod: add a warning |
12:50 | |
| nopaste | "bacek" at 192.168.1.3 pasted "Test failures on generational_gc branch." (34 lines) at nopaste.snit.ch/30285 | 12:53 | |
| bacek | moritz, nopaste.snit.ch/30285 | 12:54 | |
| Some of them are expected. | |||
| Few - not... | |||
| But it's a GOOD START! :) | |||
| moritz | not too bad | 12:55 | |
| dalek | rrot/generational_gc: 58099b9 | bacek++ | src/gc/gc_gms.c: Reorder checks in validate_objects. |
13:00 | |
| rrot/generational_gc: a6ca6af | bacek++ | src/gc/gc_gms.c: Remove unused empty functions. |
|||
| rrot/generational_gc: 79e46bc | bacek++ | src/gc/gc_gms.c: Update documentation on how we move objects out of "dirty_list". |
|||
| rrot/generational_gc: 6c0f27f | bacek++ | src/gc/gc_gms.c: Rerun headerizer and fix compilation after removing functions. |
13:03 | ||
|
13:07
davidfetter joined
|
|||
| dalek | rrot/generational_gc: d0f701e | bacek++ | src/gc/gc_gms.c: Disable string pool compacting. NYI. |
13:12 | |
| rrot/generational_gc: 0e8ab27 | bacek++ | src/gc/gc_gms.c: Limit generation_to_collect to 3 generations. |
|||
| Coke | bacek: one thing MANIFEST does is verify you have everything for a source build if you're not in a git repo. | 13:15 | |
| bacek | Coke, put it in tarball. As part of release process | ||
| It's only official way to get parrot without git repo. | 13:16 | ||
| Coke | I think at one point we supported rsync of latest. | ||
| I don't particularly care, but I know I always miss an edge case when I discuss ripping out one of those files. | |||
|
13:18
davidfetter left
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#7154) fulltest) at 3_0_0-446-gac03598 - Ubuntu 10.10 i386 (gcc-4.5 with --optimize) | 13:19 | |
| opps - forgot to post that was sitting there waitin' | 13:20 | ||
| oops | 13:21 | ||
| Coke | bot owners: can we get notified in this channel when we get a smoke with errors? | 13:22 | |
| smolder.parrot.org/app/projects/feed/1/failed | 13:23 | ||
| I'll whip that up later today if no one beats me to it. | 13:24 | ||
| bacek | Coke, if you create plugin for aloha I can put it in. | 13:26 | |
| oh shi... | |||
| It's 0:26 already | |||
| dalek | rrot/generational_gc: c3fdc64 | bacek++ | src/gc/gc_gms.c: Rearrage functions and 'hide' validation functions under DETAILED_MEMORY_DEBUG |
||
| rrot/generational_gc: 676bbac | bacek++ | src/gc/gc_gms.c: Skip dirty children in calculation of youngest generation |
|||
| bacek | msg nwellnhof I didn't check dynamic_threshold branch. My focus on gen_gc. | 13:28 | |
| aloha | OK. I'll deliver the message. | ||
| Coke | bacek - will creating a plugin for aloha be easier than implementing my own bot? ;) | 13:30 | |
| aloha, source? | |||
| aloha | Coke: I give up. | ||
| Coke | aloha, aloha? | 13:31 | |
| aloha | Coke: aloha is simple Bot::BasicBot::Pluggable hosted on github.com/bacek/aloha | ||
| Coke | aloha, source is also github.com/bacek/aloha | ||
| aloha | Coke: Okay. | ||
| bacek | Coke, check Time module. | ||
| erm. plugin | |||
| anyway, sleep time | 13:33 | ||
| Coke | aloha has a lot of requirements. ;) | 13:45 | |
| bacek | Coke, cpanm ftw :) | 13:52 | |
| Coke | yah. once I figured out how to upgrade perlbrew & perlbrew's cpanm, I was happy. | 13:53 | |
| bacek | wow... make test passed in nqp-rx on generational_gc branch. | 13:54 | |
| moritz | now rakudo's spectest... :-) | ||
| bacek | moritz, rakudo can't even build for now :) | 13:55 | |
| moritz | bacek: does the write barrier thing require changes to dynpmcs and dynops? | ||
| bacek | moritz, mostly - no. If you don't lie in VTABLE about semantic. | 13:56 | |
| e.g. if get_pmc_keyed actually change guts than it will fail | |||
|
13:57
rurban_ joined
|
|||
| bacek | anyway. definitely time to sleep :) | 13:58 | |
| 1AM already | |||
| moritz | good night codingrobot | ||
|
14:00
rurban left,
rurban_ is now known as rurban
14:06
bluescreen left
|
|||
| mikehh | rakudo (2666b6f) - builds on parrot (3_0_0-446-gac03598) - make test, make spectest_smolder[(#7167), roast (fbe953c)] PASS - Ubuntu 10.10 i386 (gcc-4.5 with --optimize) | 14:08 | |
| 27,623 ok, 0 failed, 612 todo, 1,837 skipped and 0 unexpectedly succeeded | |||
| Coke | aloha requires DBD:Pg, so fail here. | ||
| mikehh | rakudo is taking longer to build and test, don't know if this is due to gc_threshold or not, but it is certainly using less memory | 14:09 | |
|
14:12
mtk0 joined
14:16
bluescreen joined
14:30
mtk0 left
14:31
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 14:34 | |
| mikehh | hi whiteknight | ||
| whiteknight | hello mikehh | ||
|
14:35
whiteknight left
|
|||
| dalek | rrot/whiteknight/imcc_compreg_pmc: 7c7360b | Whiteknight++ | compilers/imcc/main.c: add functions to retrieve the last error message/code from IMCC |
14:42 | |
| rrot/whiteknight/imcc_compreg_pmc: 209214a | Whiteknight++ | compilers/imcc/imc.h: headerize |
|||
| rrot/whiteknight/imcc_compreg_pmc: b0ea434 | Whiteknight++ | compilers/imcc/ (2 files): fix name copy-pasteo, and re-headerizer |
|||
| rrot/whiteknight/imcc_compreg_pmc: f294966 | Whiteknight++ | src/pmc/imccompiler.pmc: when we have a compile error, throw an exception from the IMCCompiler PMC |
|||
| rrot/whiteknight/imcc_compreg_pmc: 8142754 | Whiteknight++ | src/interp/inter_misc.c: detect imcc errors and throw exceptions for them in Parrot_compile_file |
|||
|
14:43
whiteknight joined
|
|||
| whiteknight | msg plobsing: I just pushed some logic for the imcc_compreg_pmc branch to check errors and throw exceptions. It doesn't appear to change the build or test situation at all on my machine. Any improvements on yours? | 14:44 | |
| aloha | OK. I'll deliver the message. | ||
| mikehh | whiteknight: anything to merge before say Saturday? | ||
| whiteknight | mikehh: nosiree | ||
| msg bacek that looks like a big problem to me. | 14:45 | ||
| aloha | OK. I'll deliver the message. | ||
| whiteknight | mikehh: This IMCC work won't be mergable for at least a week or two | 14:47 | |
| maybe more, if I can't start debugging some of my problems | |||
| dalek | umage: 0c4cda9 | fperrad++ | src/lib/Plumage/NQPUtil.nqp: fix after github.com/parrot/parrot/commit/017...1791f0429f |
14:48 | |
| mikehh | whiteknight: that's fine, was just checking for anything going into 3.1 | 14:54 | |
| in fact I need to send a message to parrot-dev | 14:55 | ||
|
14:56
mtk0 joined
|
|||
| whiteknight | mikehh++ | 14:58 | |
|
14:58
mtk0 left
14:59
mtk0 joined,
mtk left
15:00
mtk0 left,
shortcir1uit left,
shortcircuit joined,
mtk joined
15:09
hudnix left
15:17
cotto joined
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#7175) fulltest) at 3_0_0-447-g4f67ebc - Ubuntu 10.10 i386 (g++-4.5) | 15:23 | |
|
15:38
adu joined
|
|||
| cotto_work | ~~ | 15:59 | |
|
16:03
adu left
16:07
theory joined
16:16
Psyche^ joined,
Patterner left,
Psyche^ is now known as Patterner
|
|||
| Hackbinary | aloha time? | 16:44 | |
| aloha | Hackbinary: time is a lion, where i am a lamb. | ||
| Hackbinary | aloha clock? | 16:46 | |
| aloha | Hackbinary: LAX: Thu, 08:46 PST / CHI: Thu, 10:46 CST / NYC: Thu, 11:46 EST / UTC: Thu, 16:46 UTC / LON: Thu, 16:46 GMT / BER: Thu, 17:46 CET / TOK: Fri, 01:46 JST / SYD: Fri, 03:46 EST | ||
| dalek | nxed: r774 | NotFound++ | trunk/winxedst1.winxed: delete operator for keyed cases in stage 1 |
16:48 | |
| nxed: r775 | NotFound++ | trunk/winxedst1.winxed: fix string indexed in void context |
17:26 | ||
| nxed: r776 | NotFound++ | trunk/winxedst1.winxed: check attempt of delete from string |
17:36 | ||
|
17:39
nwellnhof joined
17:44
contingencyplan joined
|
|||
| dukeleto | ~~ | 17:54 | |
|
18:05
sheant joined
18:06
bluescreen left,
Benabik left
18:08
benabik joined
18:11
benabik left,
benabik joined
|
|||
| dalek | nxed: r777 | NotFound++ | trunk/ (3 files): diagnose delete unsupported in stage 0 and refactor a bit unsupported messages |
18:14 | |
|
18:17
bluescreen joined
|
|||
| dalek | rrot: b12ac89 | nwellnhof++ | t/pmc/ (2 files): [t] Use '::1' instead of null for localhost IPv6 server address |
18:20 | |
| dukeleto | nwellnhof++ | 18:21 | |
|
18:37
nwellnhof left
18:42
vmspb joined
|
|||
| Coke | dukeleto: any progress on quieting down your noisy smokes? | 19:10 | |
| I have not done anything after opening that TT. | 19:11 | ||
| dukeleto | Coke: noisy smokes? | 19:40 | |
| Coke: i don't know what you mean? | |||
|
19:45
vmspb left
|
|||
| Coke | you are submitting failing smoke tests on a regular basis, no? | 19:51 | |
| though it looks like the last one was updated on 2011-02-03T18:10:00Z | 19:54 | ||
| dukeleto | Coke: i have two machines in the compile farm sending reports | 19:59 | |
| Coke: and more will be added | 20:00 | ||
| Coke: what do you mean "quiet down my noisy smokes"? | 20:01 | ||
| dalek | rdinal: 39f50f3 | (David Ross)++ | / (8 files): Array.pir - could not add a _get_bool function, so no change Integer.pir - updated ( added a get_bool function to always return 1 as only false and nil should return false for the Ruby spec ) NilClass.pir - updated ( added a get_bool function to always return 0 as only false and nil should return false for the Ruby spec ) Object.pir - updated ( added a get_bool function to always return 1 as only false and nil should return false for the Ruby spec ) String.pir - updated ( added a get_bool function to always return 1 as only false and nil should return false for the Ruby spec ) actions.pm - updated ( fixed unless else clause so that it now runs ) 01-stmts.t - updated ( added tests for [unless 0], [if 0], [unless 0], [unless 1 == 0], [unless emptyArray], [if emtpyArray], [unless emptyString], [if emptyArrray] ) |
20:06 | |
| dukeleto | nice to see some action in cardinal | ||
| dalek | rdinal: ef158a2 | tene++ | src/classes/ (4 files): Fix typos |
20:07 | |
| Tene | Hackbinary++ | ||
| Good work. | |||
|
20:22
vmspb joined
20:27
nwellnhof joined
20:30
spinclad left
20:37
mtk left
20:38
mtk joined
20:45
Eclesia joined
|
|||
| Eclesia | hi | 20:45 | |
| dukeleto | Eclesia: hola | 20:47 | |
| Tene | Eclesia: Hi! | ||
| Eclesia | I have a little something I would like to implement as a HLL on parrot. the idea is to have a single type 'number' for all numeric types, integers, floats, fractions ... something that doesn't suffer from 32/64 bit limits. but I don't now how to write this in my grammar file. | 20:49 | |
| anyone have an idea how should i proceed ? | 20:50 | ||
| PerlJam | Eclesia: I don't understand ... you don't know how to write the part that describes such numbers? | 20:51 | |
| Eclesia | hm, 10sec, I'll try to write a small example | 20:54 | |
| dalek | nxed: r778 | NotFound++ | trunk/winxed (2 files): option noan in installed driver and compreg'ed object |
20:55 | |
|
20:57
Infinoid left
|
|||
| Eclesia | PerlJam: pastebin.com/CZxrLxfR | 20:57 | |
| PerlJam | So, don't use a parrot I register | ||
| Eclesia | a pmc ? | 20:58 | |
| PerlJam | Aye. | ||
| Make or find a PMC for arbitrary precision numbers. | |||
| (I think there may be such a thing somewhere already) | |||
|
20:59
Themeruta joined
|
|||
| Eclesia | how do I specify a pmc in the grammar/actions files ? | 20:59 | |
|
20:59
Themeruta is now known as NotFound_b
|
|||
| benabik | Eclesia: I believe what you're looking for is called BigInt and BigNum: See docs.parrot.org/parrot/latest/html/pmc.html | 21:00 | |
| PerlJam | benabik++ | ||
| dalek | nxed: r779 | NotFound++ | trunk/ (3 files): update installable files |
||
| Eclesia | benabik: not exactly, since I want it to be something not necessarly evaluated. like for example 1/3 . | ||
| benabik | Eclesia: Ah. There's no pre-made BigRat, although you should be able to make one from two BigInts. | 21:02 | |
| Tene | You could also look at Rakudo's Rat class | ||
| Eclesia | ^^ not just rationals, it could be an complexe equation. the objective is to have absolute maths until some kind of solve function is called | 21:03 | |
| benabik | Ahhhh... Building a small CAS? That's exciting. I'd help more, but I've got to head off to class. | 21:04 | |
|
21:05
benabik is now known as benabik_school,
benabik_school left
|
|||
| Tene | Eclesia: I'm a bit confused because your original question seemed to be asking for help with a grammar, but now it looks like you're wanting advice on data structures. I think I must have missed something. :) | 21:06 | |
|
21:06
bluescreen left
|
|||
| Eclesia | I'm a newbie with parrot, I don't really know where to start. I've the docs, so from what I understand I should start by some grammar files. yet I don't know how to describe what I want to do :D | 21:07 | |
| I have read the docs* | |||
| dukeleto | Eclesia: i think you want to create some grammar element which describes your Numbers | 21:09 | |
| Tene | Eclesia: Depending on how you look at it, there are roughly three levels you'll be working on. | ||
| dukeleto | Eclesia: which means you tell it that anything, an integer or floating point, is a Number | ||
| Tene | There's your high-level grammar, which describes the textual syntactic components of your language. | ||
| dukeleto | Eclesia: your grammar doesn't know about the insides of a Number | 21:10 | |
| Eclesia: all it knows is how to identify a Number in the source code | |||
| Tene | The second stage takes a parsed syntax tree as input and transforms it into an abstract tree representing actual operations to perform. | ||
| The third level to look at is the data structures, subroutines, and other API that you build. | 21:11 | ||
| So you'd have rules in your grammar for number literals, and you'd compile those down to instructions for instantiating an abstract computation data type. | |||
| You'd have rules for parsing mathematical operations like +, and you'd compile that down to instructions to perform some operation on the abstract computation data type. | 21:12 | ||
| a method call, or subroutine call, that builds up a computation tree. | |||
|
21:13
Infinoid joined
|
|||
| Tene | Eclesia: Does that help any? | 21:13 | |
| Sorry if that was not quite what you were asking, or otherwise unhelpful. | 21:14 | ||
| bacek | ~~ | ||
| Eclesia | so far I understand the steps. | ||
| bacek | msg whiteknight nm, I already fixed it :) | ||
| aloha | OK. I'll deliver the message. | ||
| Eclesia | so in the grammar i should have something like : rule number { stuff that match 3 , 5.566 ... } | 21:15 | |
| but in the actions file which translate this in pir, I don't see how to handle it | |||
| Tene | Eclesia: Usually, the 'number' rule would just dispatch out to individual rules for the different types of numbers, but approximately, yes. | ||
| Eclesia: the actions file doesn't deal with PIR, but just generates syntax tree nodes. | 21:16 | ||
| So that would be something like: | |||
|
21:17
bluescreen joined
|
|||
| Tene | PAST::Op.new(:pasttype('callmethod'), :name('new'), PAST::Something(<get your number class here>), 'new', $number); | 21:17 | |
| PAST::Something would probably be somethign like: PAST::Var.new(:scope('global'), :name('SpecialNumber')) | 21:18 | ||
| that would end up compiling down to PIR for something like: $P0 = get_hll_global 'SpecialNumber'; $P1 = $P0.'new'('3'); | 21:19 | ||
| or whatever | |||
|
21:19
bluescreen left
|
|||
| NotFound_b | A closure can be a coroutine? | 21:19 | |
|
21:19
bluescreen joined
|
|||
| Tene | NotFound_b: Yeah, I'd expect so. | 21:19 | |
| NotFound_b | An experiment with winxed fails. | 21:20 | |
| Eclesia | Tene : leave me a few minutes to decrypt what you just have written ^^ | ||
| Coke | dukeleto: we should not have any regularly failing tests. if a smoke report is red, repeatedly, that test should be todo'd and have a ticket opened, or fixed. | ||
| Tene | Eclesia: Please let me know if you want a more-detailed explanation. I'm glad to help. :) | 21:21 | |
| dukeleto | Coke: i disagree | ||
| Coke | then what is the point of smolder? | ||
| dukeleto | Coke: a place for smoke reports to be sent | 21:22 | |
| Coke | (if we regularly have failing tests in smolder, then finding new failing tests is a problem. it's no different than having 'make test' pass all the time. | ||
| dukeleto | Coke: i only think that failing tests should be TODOed for releases. I would rather see test failures, rather than bury them behind SKIPs and TODOs | ||
| Coke | ok. Then I'll try to continue working on fixing or todo'ing those failures as time permits. | 21:23 | |
| the TODOs are not buried if they have a ticket. | |||
| dukeleto | Coke: i set up smoke machines. They send smoke reports. It is up to parrot devs to do something useful with those reports. | ||
| Coke | ... i was not speaking to you as a smoker. | ||
| dukeleto | Coke: i hear ya, but most of our TODO and SKIP tests don't have a TT | ||
| Coke | I was speaking to you as a parrot dev who's also on the board. | ||
| nopaste | "NotFound_b" at 192.168.1.3 pasted "closure coroutine in winxed fails" (29 lines) at nopaste.snit.ch/30351 | ||
| Coke | I am attempting to nudge things in the correct direction, not continue down a broken path. | 21:24 | |
| dukeleto | Coke: i guess i don't know what you are asking for | ||
| Coke | but, nevermind. if you disagree, that's fine. I can spend my own tuits. | ||
| dukeleto: you seem to have that problem with me a lot. I wonder which one of us it is. ;) | |||
| dukeleto | Coke: what can I do to improve the current situation ? | ||
| Coke: i don't know what you are asking me to do, other than "read all smoke reports and fix stuff that is broken", which I don't have time to do | 21:25 | ||
| Coke: which is why I spent my precious time setting up automated stuff | |||
| Coke: if you have a suggestion for a change in our smoking script, I am all ears | 21:26 | ||
| Coke: and I will of course take patches | |||
| Coke | it has nothing to do with the smoking script. | ||
| except insofar as that has pointed out failing tests which need to have some action taken on them. | |||
| dukeleto | Coke: do you want the smokers to email parrot-dev when a test suite passes? I assume people will get annoyed. We can send them to parrot-commits, instead, if you want | 21:27 | |
| Coke | No. | ||
| Not at all. we already have RSS feeds if people want to get notified. | |||
| ... which is how I know about all the failing ones. | |||
| NotFound_b | Can someone tell me if a closed coroutine works in other languages? | 21:28 | |
| dukeleto | Coke: if you have a specific task that you want me to do, that is great. But asking me to fix all test failures reported by smolder is not viable | ||
| Coke | -> offline | ||
| dukeleto: I get that you are busy. Thanks. | |||
|
21:28
perlite_ joined
|
|||
| dukeleto | Coke: no worries | 21:28 | |
| Coke | Please forget I said anything whatsoever. | ||
| dukeleto | Coke: i enjoy your feedback | ||
| Coke | -> offline (For reals) | 21:29 | |
|
21:29
whiteknight left
|
|||
| dukeleto | Coke: please let me know if I can improve stuff | 21:29 | |
| Coke: laters | |||
|
21:32
perlite left,
perlite_ is now known as perlite
|
|||
| dalek | rrot/generational_gc: 8e2d85b | bacek++ | / (3 files): Remove unused wb_triggered flag. |
21:37 | |
| rrot/generational_gc: 89d28fe | bacek++ | src/gc/gc_gms.c: Remove painting of old objects white. It's not needed anymore. |
|||
| nwellnhof | sigh, you need admin rights to create a symlink on windows | 21:54 | |
| dalek | nxed: r780 | NotFound++ | trunk/winxedst1.winxed: fix initializing from undeclared identifier |
||
|
21:55
wknight-phone joined,
fperrad left
|
|||
| dalek | rrot/generational_gc: c1fab7d | bacek++ | / (58 files): Merge branch 'master' into generational_gc Conflicts: \tsrc/gc/api.c \tsrc/gc/fixed_allocator.h |
21:57 | |
|
21:58
rurban_ joined
|
|||
| dalek | Heuristic branch merge: pushed 130 commits to parrot/nwellnhof/unicode_dynpmcs by nwellnhof | 22:00 | |
|
22:02
rurban left,
rurban_ is now known as rurban
22:07
jsut joined
22:12
jsut_ left
22:16
jsut_ joined
22:21
jsut left
|
|||
| dalek | nxed: r781 | NotFound++ | trunk/winxedst1.winxed: coerce to destination type in += |
22:26 | |
|
22:30
wknight-phone left
|
|||
| Hackbinary just learned --target=parse | 22:34 | ||
| what other cool debugging thing are there for PCT::HLLCompiler? Which documents would be good to read? | 22:35 | ||
| Eclesia | anyone could give me a hint about what is wrong : pastebin.com/4Dt95q6Q ? | 22:37 | |
| Hackbinary | sorry Eclesia, I'm a newbie ... | 22:40 | |
| Eclesia | Hackbinary: so do I :D | ||
| Hackbinary | you might need to post your source | ||
| :D | |||
| Eclesia ex-java develope, glad to meet another newbie | |||
| Hackbinary | I've been doing some hacking on the cardinal ruby implementation | 22:41 | |
| I've managed to do a couple fixes, but still a little tough going | |||
| just working through the hll tutorial | 22:42 | ||
| Eclesia | same here. | 22:43 | |
| dalek | rrot/generational_gc: 67b3865 | bacek++ | lib/Parrot/Pmc2c/PMCEmitter.pm: Emit declaration of default_wb_update_vtable |
22:44 | |
| Tene | Hackbinary: --target=past | 22:46 | |
| might also be interesting to you | |||
| Eclesia | the project ftp://ftp-developpez.com/jsorel/temp/eria2.zip | 22:48 | |
| if someone can have a look | |||
| and tell me why it does compile | |||
| bacek_at_work | ~~ | 22:52 | |
| HOLEI SCHITT | 22:53 | ||
| Rakudo's make test passed on generational_gc branch! | |||
| tadzik | \\o/ | ||
| merge it! | |||
| :D | |||
| no, seriously? How about spectests? | |||
| bacek_at_work | tadzik, didn't test it yet. | 22:54 | |
| But it's a bit slow atm | |||
| tadzik | sounds freaking awesome | ||
| bacek_at_work++ | |||
| Coke | bacek_at_work++ | 22:55 | |
| bacek++, even. | |||
| bacek_at_work | I just have to implement "strings part" of it. | 22:57 | |
| And deprecate "RO" PMCs. | |||
| (Or figure out how to handle 3 versions of vtables...) | |||
|
23:00
jan left
|
|||
| Hackbinary | Eclesia | 23:06 | |
| Eclesia | that should be me | ||
| Hackbinary | ln -s src/eria.pir seemed to fix | ||
| so | |||
| er | 23:07 | ||
| Eclesia | yes, tene gived me the tip in private | ||
| Hackbinary | parrot is not finding the eria.pir file | ||
| o. | |||
| :D | |||
| Eclesia | but thanks :) | ||
| Hackbinary | Tene: thanks ... I like that one :) | ||
| Eclesia | Hackbinary: yet if you want a harder error, try ./installable_eria --target=parse test.eria | 23:09 | |
| dalek | nxed: r782 | NotFound++ | trunk/winxedst1.winxed: refactor a bit op-assign operators and implement *= for string target |
23:10 | |
| Tene | Eclesia: looks like the first sub in eria.pir needs to be marked :init | ||
| Eclesia | time to sleep +++ | 23:16 | |
|
23:16
Eclesia left
|
|||
| cotto_work | bacek++ | 23:19 | |
| Hackbinary | bacek++ | ||
|
23:24
wknight-phone joined
23:27
whiteknight joined
23:31
wknight-phone left
|
|||
| dalek | rrot/nwellnhof/unicode_dynpmcs: 9e67f89 | nwellnhof++ | / (5 files): Implement Unicode readdir |
23:32 | |
| whiteknight | good evening, #parrot | 23:34 | |
| Hackbinary | good evening mr whiteknight | 23:35 | |
| whiteknight | bacek is a freaking magic robot | ||
| hello Hackbinary | |||
| just call me whiteknight. "Mr Whiteknight" is my father's name | |||
| Hackbinary | dr whitenight? | 23:36 | |
| whiteknight | not yet. Need to go back to school for that | ||
| dalek | rrot/nwellnhof/unicode_dynpmcs: 5a6a854 | nwellnhof++ | t/ (2 files): [t] Fix broken tests on Win32 |
23:41 | |
| whiteknight | I need to get bacek working on my branch to fix problems | 23:44 | |
| wake up one day, and everything works perfectly | 23:45 | ||
|
23:47
sheant left
|
|||