|
Parrot 3.0.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Parrot Developer Summit: 2200 UTC 29 Jan | Goals: Fix ipv6-related failures | Test imcc_interfaces and annotations-tree branches Set by moderator on 26 January 2011. |
|||
| dalek | rrot: 1cd5f8b | NotFound++ | src/platform/generic/socket.c: fix a problem with C string and prevent from happening again, and avoid coredumps in non-ipv6 |
00:03 | |
| KaeseEs | am I best off reading the perldoc on parrot.h or looking through a PDD to see how PARROT_INTERP, ARGIN and friends do | 00:05 | |
| cotto_work | KaeseEs: what do you want to find out? | 00:07 | |
| PARROT_INTERP demacroizes to parrot_interp_t in include/parrot/interpreter.h, but I'm not sure that will make you less confused. | 00:08 | ||
| whiteknight | ARGIN, ARGOUT, ARGMOD and friends basically add some hints to the compiler. They don't really change the code | 00:09 | |
| PARROT_INTERP is basically shorthand for "ARGMOD(parrot_interp_t *interp)" | |||
| KaeseEs | cotto_work: well i'm looking at gc_ms2.c and there are a number of (general purpose I assume) macros that I figure I should learn to use properly before I start poking around :) | 00:10 | |
| whiteknight | it's more fun to use them improperly | ||
| NotFound | KaeseEs: docs/dev/c_functions.pod | 00:11 | |
| KaeseEs | NotFound: thanks! | 00:12 | |
|
00:12
kurahaupo left
|
|||
| KaeseEs | well here's my first trivial patch, s/compile-rime/compile-time/ in docs/dev/c_functions.pod :V #unless we are ancient mariners | 00:14 | |
| whiteknight | aarrgh | ||
| NotFound | KaeseEs: congratulations, you are a parrot hacker now ;) | 00:15 | |
| dalek | rrot: ff6e589 | cotto++ | docs/dev/c_functions.pod: ENOANCIENTMARINER, noticed by KaeseEs++ |
||
| NotFound | msg mikehh The g++ ipv6 problem should be fixed now | 00:17 | |
| aloha | OK. I'll deliver the message. | ||
| chromatic | What if we had a string_to_cstring that took a static buffer? | ||
|
00:17
Kristaba left
|
|||
| whiteknight | Bam. supernova. | 00:18 | |
| chromatic | I assume length checks. | ||
| whiteknight | that's not too bad an idea. something like _string_to_cstring_n | 00:19 | |
| chromatic | The stack-allocated buffer doesn't need to be freed. | ||
| whiteknight | you would need to pass in a buffer and a maximum length | ||
| NotFound | The problem will be deciding the appropiate length | ||
| whiteknight | but yes, the ground there is fertile | ||
| NotFound | And what to do if exceded | ||
| chromatic | I can imagine passing a protocol name of longer than, say, 32 bytes to getsockaddrinfo will do something strange. | 00:20 | |
| or at least is unlikely. | |||
| NotFound | src/platform/generic/socket.c uses #ifdef PARROT_HAS_IPV6 but looks like PARROT_HAS_IPV6 is 0 when the detection fails, not undefined. | 00:24 | |
| chromatic | We're not consistent about our defines. | 00:25 | |
|
00:41
theory left,
kurahaupo joined
|
|||
| cotto_work | chromatic: if we were to standardize on one, would you care which? | 00:42 | |
| whiteknight | My vague preference is to #define FOO 0, instead of leaving it undefined | 00:44 | |
| but I think most of Parrot uses #ifdef/#ifndef instead to test definedness | 00:45 | ||
| chromatic | #define FOO 0 seems better to me too. | ||
| NotFound | Using 0 has this problem: people use #ifdef and forget to check other situations. | 00:46 | |
|
00:46
davidfetter left
|
|||
| cotto_work | We can add a codingstd for #ifdef. | 00:46 | |
| chromatic | True, but #ifdef TYOP is false because it's a typo, not because we've deliberately not defined TYOP. | 00:47 | |
| cotto_work | We can't defend against every mistake. | 00:48 | |
| chromatic | That's why I prefer to define all of the symbols we expect to define, true or false, explicitly. | ||
| We can protect against #ifdef when we mean #if with coding standards. | |||
| We can let the preprocessor complain about unknown symbols and always know that that's a problem. | 00:49 | ||
| cotto_work | sounds like a nice cpp trick | ||
| dalek | rrot: 9d798a1 | NotFound++ | config/auto/ipv6.pm: PARROT_HAS_IPV6 is checked with #ifdef, then define it as 0 |
00:54 | |
| rrot/whiteknight/imcc_compreg_pmc: 3dfce68 | Whiteknight++ | compilers/imcc/ (2 files): quick implement of the new imcc API functions. Kill all the remaining stuff for command-line argument processing |
00:57 | ||
| rrot/whiteknight/imcc_compreg_pmc: 95bdb72 | Whiteknight++ | compilers/imcc/ (3 files): start forming the new interface for IMCC. The world will shake. |
|||
| rrot/whiteknight/imcc_compreg_pmc: dd5f423 | Whiteknight++ | compilers/imcc/main.c: lots of little fixes |
|||
| rrot/whiteknight/imcc_compreg_pmc: e2e6af2 | Whiteknight++ | compilers/imcc/main.c: completely unify the IMCC interfaces. There are two functions to compile something, both redirect to a single compilation routine. |
|||
| rrot/whiteknight/imcc_compreg_pmc: eb4cbdf | Whiteknight++ | compilers/imcc/main.c: misc notes |
|||
| rrot/whiteknight/imcc_compreg_pmc: 2d59f41 | Whiteknight++ | compilers/imcc/ (2 files): Merge remote branch 'origin/whiteknight/imcc_new_api' into whiteknight/imcc_compreg_pmc |
|||
| rrot/whiteknight/imcc_compreg_pmc: f52e585 | Whiteknight++ | src/pmc/imccompiler.pmc: update the imccompiler pmc skeleton to use the newer imcc api funcs |
|||
| rrot/whiteknight/imcc_info_struct: a522f26 | Whiteknight++ | / (2 files): comment out the functions in the frontend that call IMCC, since those functions no longer exist. Fix build errors in compilers/imcc/pcc.c. miniparrot now builds (but with no calls in to IMCC, it does nothing) |
01:04 | ||
|
01:19
vmspb left
01:29
kurahaupo left
01:30
mtk left
01:35
kurahaupo joined
01:36
mtk joined
01:52
theory joined
|
|||
| whiteknight | the more work I do on IMCC, the more fragile I realize it is | 01:59 | |
| like a big house of cards held together by wind gusts | |||
| dalek | rrot/whiteknight/imcc_new_api: a522f26 | Whiteknight++ | / (2 files): comment out the functions in the frontend that call IMCC, since those functions no longer exist. Fix build errors in compilers/imcc/pcc.c. miniparrot now builds (but with no calls in to IMCC, it does nothing) |
02:00 | |
| rrot/whiteknight/imcc_new_api: c6da3a6 | Whiteknight++ | / (2 files): Merge branch 'whiteknight/imcc_info_struct' into whiteknight/imcc_new_api |
|||
| rrot/whiteknight/imcc_new_api: 419f040 | Whiteknight++ | / (10 files): headerizer. Add a new yyscanner.h file so we can use the definition of yyscan_t everywhere instead of occasionally calling it a void*. |
|||
| rrot/whiteknight/imcc_new_api: 792ff99 | Whiteknight++ | compilers/imcc/main.c: several small fixes so that all files compile. miniparrot does not link because of missing symbols |
|||
| rrot/whiteknight/imcc_new_api: 71e3fcd | Whiteknight++ | / (5 files): miniparrot links. No sense trying to run it, it isn't making any calls into IMCC right now |
|||
| rrot/whiteknight/imcc_new_api: f317c59 | Whiteknight++ | MANIFEST: add the new header file to MANIFEST |
02:01 | ||
| plobsing | whiteknight: interesting ideas about exceptionhandler | 02:12 | |
| dalek | rrot/whiteknight/imcc_compreg_pmc: a522f26 | Whiteknight++ | / (2 files): comment out the functions in the frontend that call IMCC, since those functions no longer exist. Fix build errors in compilers/imcc/pcc.c. miniparrot now builds (but with no calls in to IMCC, it does nothing) |
02:13 | |
| rrot/whiteknight/imcc_compreg_pmc: c6da3a6 | Whiteknight++ | / (2 files): Merge branch 'whiteknight/imcc_info_struct' into whiteknight/imcc_new_api |
|||
| rrot/whiteknight/imcc_compreg_pmc: 419f040 | Whiteknight++ | / (10 files): headerizer. Add a new yyscanner.h file so we can use the definition of yyscan_t everywhere instead of occasionally calling it a void*. |
|||
| rrot/whiteknight/imcc_compreg_pmc: 792ff99 | Whiteknight++ | compilers/imcc/main.c: several small fixes so that all files compile. miniparrot does not link because of missing symbols |
|||
| rrot/whiteknight/imcc_compreg_pmc: 71e3fcd | Whiteknight++ | / (5 files): miniparrot links. No sense trying to run it, it isn't making any calls into IMCC right now |
|||
| whiteknight | plobsing: just a raw braindump after our conversation from yesterday | ||
| rrot/whiteknight/imcc_compreg_pmc: f317c59 | Whiteknight++ | MANIFEST: add the new header file to MANIFEST |
|||
| plobsing | whiteknight: .param syntax in the middle of subs would also make coroutines which take parameters on subsequent invokations much less painfull | ||
| dalek | rrot/whiteknight/imcc_compreg_pmc: 72bd7d9 | Whiteknight++ | / (2 files): Merge branch 'whiteknight/imcc_info_struct' into whiteknight/imcc_compreg_pmc |
||
| rrot/whiteknight/imcc_compreg_pmc: b34dbcb | Whiteknight++ | / (11 files): Merge branch 'whiteknight/imcc_new_api' into whiteknight/imcc_compreg_pmc |
|||
| rrot/whiteknight/imcc_compreg_pmc: b8a94f4 | Whiteknight++ | src/pmc/imccompiler.pmc: add in a preprocess method on the imccompiler PMC, so that we can access the functionality |
|||
| whiteknight | plobsing: yeah, .param syntax anywhere would be nice | 02:15 | |
| I didn't think so a while ago, but it's seeming like a nice idea | |||
| of course, I keep coming back to my idea of individual arg-fetching ops instead of .param directives | 02:16 | ||
| plobsing | I'm thinking an arbitrary contiguous segment of '.param' compiles down to 1 get_params, regardless of where it is. | ||
| whiteknight | it costs as much to construct a signature FIA and parse it out in get_params and fill_params() as it would to dispatch several smaller individual ops | 02:18 | |
| so a .param directive anywhere just parses down to a fetch_x_arg op | |||
| plobsing | whiteknight: I'm unconvinced. doing all the arg processing in one place has good locality, for example. | 02:19 | |
| whiteknight | in this case, "good locality" = "fill_params is like 200 lines long, ugly, and buggy" | ||
| plobsing | callgrind rakudo optimized and unoptimized. fill_params appears to be *very* ammenable to compiler optimizations. | 02:20 | |
|
02:20
kurahaupo left
|
|||
| plobsing | individual ops... not so much | 02:20 | |
| whiteknight | we need a signature FIA (which we have to construct at compile time and save in the const table), then we need to parse it, then we need to loop over a jillion special cases | ||
| individual ops would be much more amenable to tracing JIT | |||
| I shouldn't have to ask every single parameter "are you an :optional?", "are you a :named?", "are you :slurpy?" | 02:21 | ||
| I know that information when the sub is compiled | |||
| plobsing | whiteknight: I hear the JIT-ammenability argument a lot. there are a few problems with it: (1) you're just pushing complexity somewhere else (we do this a lot in parrot) (2) we don't have a JIT (so the point is moot until we get one) (3) a JIT would have to be awfully smart to figure that out | 02:23 | |
| whiteknight | it's not a very good argument, admittedly. Of course, any JIT is going to reduce op dispatch costs to nil | 02:24 | |
| and we still end up with a much more efficient arg-fetching system than fill_params is now | |||
| no looping, no checking. You just say "I need this", and we get it | |||
| plobsing | whiteknight: a decent computed-goto core (for the record, the old cgoto was "decent", cgp was not) would also reduce op dispatch costs to virtually nil | 02:25 | |
| whiteknight | I won't nit-pick. That is true. cgoto would have been good to keep if (a) we had FAR fewer ops than we have now, and (b) it was workable on MSVC | 02:26 | |
| compared to some other problems we have, op dispatch costs in parrot are negligible | 02:27 | ||
| plobsing | whiteknight: I have a workaround for cgoto on MSVC - tailcalls can be used to achieve the exact same effect. | 02:28 | |
| msvc does tco AFAIK | 02:29 | ||
| whiteknight | won't that cause stack overflow? | ||
| plobsing | tco maintains a constant stack depth | 02:30 | |
| what killed cgoto more than anything else was it wasn't used consistently when available. runcore and op-dispatch mechanism are orthogonal. if you have cgoto, slow core should dispatch using cgoto, profiling core, etc... | 02:33 | ||
| whiteknight | right, assuming it does proper tco. We're probably going to have to give the compiler some very non-subtle hints that it's required | ||
| plobsing | which lead to it not being used at all | ||
| whiteknight | right. And it wasn't used by default because it wasn't available on MSVC | 02:34 | |
| I'm quickly losing my conviction that supporting MSVC is worthwhile | |||
| plobsing | aren't you the author of Parrot#? isn't msvc kind of critical for most users of that library? | 02:35 | |
| whiteknight | Parrot# is .NET. Actually, I've never built it with VisualStudio, I've only used Mono | 02:36 | |
| dalek | rrot: 9c64677 | jimmy++ | / (3 files): fixed build with MingW GCC again |
02:37 | |
| whiteknight | actually, I suspect it won't build with MSVC at all, since I'm not importing the parrot library in the correct way | 02:38 | |
| I think there is serious win to be had with individual arg-fetch ops simply by not creating FIA signatures for each call site and storing them in the constants table | 02:40 | ||
| and param signatures for each Sub | |||
| plobsing | they get de-dupped | 02:41 | |
| creating the FIAs is not really much of a cost (unless you count the tech debt in the code that builds them) | 02:43 | ||
| whiteknight | It's very low on my priorities list obviously, but one day I would like to put together a proof-of-concept branch for this | ||
| it seems like something I could put together in a weekend | 02:44 | ||
| plobsing | and besides, supposing we did have arg-fetch ops, we'd still need signatures to make sure things matched up | ||
| whiteknight | I don't think so. Maybe in a dynamic case or PIR->C method calls | ||
| a "done_fetching_args" op would throw an arity mismatch exception after params were fetched if there were still some left in the args list | 02:45 | ||
| IF the compiler inserted those, which wouldn't need to happen for all HLLs | |||
| plobsing | yeah, I see that as a huge opportunity to fail | 02:46 | |
| whiteknight | I like the idea that we could do all sorts of fun new things: lazy arg fetching, default values for optional parameters (by passing a default to the fetch op), etc | ||
| plobsing | python has similar argument capabilities. how does it handle things? | 02:47 | |
| whiteknight | I don't know python | ||
| chromatic | It'd be nice to have subclassable signatures or something that could let us avoid the complexity of "Do you have named args?" where we know, statically, that a call doesn't. | 02:49 | |
| dalek | rrot/whiteknight/imcc_compreg_pmc: e10e12b | Whiteknight++ | / (2 files): use the new IMCC api functions in the frontend. |
02:52 | |
| whiteknight | chromatic: exactly! | ||
| we know a lot of information at compile time, and we throw it all away and then recompute it all in fill_params and Parrot_pcc_do_all_sorts_of_garbage() | |||
| chromatic | That's a Parrot design pattern. | ||
| plobsing | whiteknight: I see what you're saying. | 02:54 | |
| whiteknight | chromatic: our next Parrot book should be called "software design anti-patterns" | ||
| "...by example" | 02:55 | ||
| chromatic | After the NQP book, yes. | ||
| plobsing | python cheats. they special-case vanilla positional-only calls | 02:58 | |
| whiteknight | that's something I've argued for in the past | 02:59 | |
| plobsing | svn.python.org/view/*checkout*/pyth...xt%2Fplain | ||
| whiteknight | okay, if I look at any more IMCC code I'm going to go cross-eyed | 03:03 | |
| so that's it for me tonight. | 03:04 | ||
| plobsing | whiteknight: (back to exceptions) do you have any thoughts on making exceptionhandler setup less expensive? | ||
| whiteknight | plobsing: a sparse handful. bacek was doing some promising work on the cached-eh branch | ||
| saving a cached ExceptionHandler in the Sub instead of in the Context can help for reuse | |||
| not calling can_handle on every handler in the context would help | 03:06 | ||
| not involving the scheduler at all would be nice | |||
| in terms of huge algorithmic improvements, I don't really have anything | 03:08 | ||
| anyway, I am heading to bed now. talk to you tomorrow | |||
| dalek | Heuristic branch merge: pushed 33 commits to parrot/annotations-tree by plobsing | 03:09 | |
|
03:09
whiteknight left
03:12
mikehh joined
03:22
kurahaupo joined
03:41
fbrito joined,
fbrito left
|
|||
| sorear | chromatic: can I do anything to help the p6call blogging? | 03:41 | |
|
03:59
kurahaupo left
04:01
kurahaupo joined
04:05
dmalcolm left
04:28
theory left
|
|||
| dalek | rrot: 14bbee3 | plobsing++ | / (27 files): Merge branch 'master' into annotations-tree |
04:43 | |
| rrot: 69dc8de | plobsing++ | / (7 files): Merge branch 'annotations-tree' |
|||
|
04:47
snarkyboojum joined
|
|||
| dalek | rrot: bb69595 | plobsing++ | / (2 files): [codingstd] long lines and trailing whitespace |
04:52 | |
|
05:18
baest left
05:20
kurahaupo left
05:21
baest joined
05:39
kurahaupo joined
|
|||
| dukeleto | ~~ | 05:50 | |
| plobsing | hi duke! | 05:51 | |
|
05:54
rurban_ joined
|
|||
| dukeleto | plobsing: wazzup? | 05:54 | |
| plobsing | not much. just merged annotations-tree (ipv6 got fixed!!) | 05:56 | |
|
05:56
rurban left,
rurban_ is now known as rurban
06:01
Myhrlin_ left
06:57
JimmyZ joined
07:06
chromatic left
07:16
JimmyZ left
07:35
nopaste left
07:36
kurahaupo left
|
|||
| dukeleto | plobsing: great to hear! | 07:38 | |
|
07:41
nopaste joined
|
|||
| dukeleto | plobsing: what is next on your list? | 07:43 | |
|
07:43
JimmyZ joined
|
|||
| mj41 | msg nwellnhof TapTinder windows machines gist.github.com/798223 | 08:00 | |
| aloha | OK. I'll deliver the message. | ||
|
08:10
fperrad joined
08:47
baest_ joined
08:50
baest left
09:17
mtk left
09:24
mtk joined
10:50
contingencyplan left
11:20
fbrito joined,
fbrito left
11:35
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 11:57 | |
| JimmyZ | good morning whiteknight | 11:58 | |
| whiteknight | hello JimmyZ, how are you today? | ||
| JimmyZ | well, just a bit bored :) | 12:01 | |
| whiteknight | bored? oh no! Need to do more hacking! | 12:04 | |
| bacek | aloha, whiteknight | 12:08 | |
| rakudo: my $a := 'a b' => 'c d'; | |||
| p6eval | rakudo 549d2a: ( no output ) | ||
| bacek | hmm | ||
| jnthn | rakudo: my $a := 'a b' => 'c d'; say $a; | 12:09 | |
| p6eval | rakudo 549d2a: OUTPUT«a b c d» | ||
| bacek | jnthn, I've got segfault on latest parrot. | 12:14 | |
| jnthn | Oh. | ||
| :( | |||
| dalek | p-rx: bffc552 | bacek++ | t/setting/01-resizablepmcarray.t: Stylish change in test. |
12:32 | |
| p-rx: 7809892 | bacek++ | / (3 files): Revert "Comment out split() function for now; it causes the Parrot build to fail" This reverts commit 5349f1795fb2dd7420a41be28c9d192c10cfb059. |
|||
| p-rx: feb29e6 | bacek++ | / (2 files): Use multi-dispatch to split on plain strings in setting |
|||
| rrot: 82cab12 | bacek++ | / (42 files): Merge branch 'master' of github.com:parrot/parrot |
|||
| rrot: 125d94c | bacek++ | ext/nqp-rx/src/stage0/nqp-setting.nqp: Update nqp-setting with fixed C<split>. |
|||
| p-rx: 0bf82c9 | bacek++ | / (3 files): Implement RPA.grep and rebootstrap setting. |
12:43 | ||
|
13:13
woosley joined
|
|||
| Coke | what's up with this commit: github.com/parrot/parrot/commit/82...41339bf90d | 13:26 | |
| it's a huge merge commit from master to master with no explanation of what it's for? | |||
|
13:27
kid51 joined
|
|||
| JimmyZ | I guess it's git auto-merge | 13:29 | |
| Coke | bacek, ping. | 13:30 | |
|
13:53
fbrito joined,
fbrito left
13:54
rurban_ joined
13:56
rurban left,
rurban_ is now known as rurban
|
|||
| plobsing | the diff looks like the reapplication of several recent commits | 14:04 | |
|
14:10
plobsing left
14:17
fbrito joined,
fbrito left
14:23
bacek left
14:35
bacek joined
14:46
vmspb joined
|
|||
| whiteknight | how do I add a new PMC to the build? | 14:47 | |
| Coke | did you try just reconfiguring? | 14:49 | |
| whiteknight | yeah, I just tried that. it worked | ||
|
14:55
woosley left
|
|||
| whiteknight | incoming | 14:58 | |
| dalek | rrot/whiteknight/imcc_compreg_pmc: 0c359f6 | Whiteknight++ | src/pmc/imccompiler.pmc: add some more vtables to the imccompiler.pmc |
||
| rrot/whiteknight/imcc_compreg_pmc: 4d2f47e | Whiteknight++ | src/embed/pmc.c: add in an api wrapper for VTABLE_push_pmc |
|||
| rrot/whiteknight/imcc_compreg_pmc: 7e13aec | Whiteknight++ | frontend/parrot/main.c: start updating the front-end to use the new imcc compiler PMC instead of direct calls into IMCC. Requires a lot more logic to set up all the necessary PMCs to make the call |
|||
| rrot/whiteknight/imcc_compreg_pmc: 02a326a | Whiteknight++ | / (4 files): small fix and headerizer |
|||
| rrot/whiteknight/imcc_compreg_pmc: 0e8ab9b | Whiteknight++ | frontend/parrot/main.c: headerizer, and fix the frontend so it builds again |
|||
| rrot/whiteknight/imcc_compreg_pmc: 077dcce | Whiteknight++ | src/pmc/imccompiler.pmc: Several fixes so miniparrot, and parrot build. config.fpmc appears to be generated correctly |
|||
| Coke | there is src/pmc/pmc.num, but that's a relic. | 15:03 | |
| (and only needed for certain items.) | |||
| (... and maybe not anything anymore.) | |||
|
15:04
kid51 left
|
|||
| whiteknight | yeah, there used to be a pmc-renumber make target, or something like that | 15:06 | |
|
15:14
fbrito joined
15:20
fbrito left
15:29
plobsing joined
15:30
Patterner left,
Psyche^ joined,
Psyche^ is now known as Patterner
16:00
plobsing left
|
|||
| cotto_work | ~~ | 16:13 | |
|
16:15
bacek left
16:34
Coke left
16:41
chromatic joined
16:44
dmalcolm joined,
plobsing joined
16:52
JimmyZ left
|
|||
| dalek | rrot: 117cff2 | NotFound++ | t/src/exit.t: rearrange a bit the C code in on_exit test to allow its full coverage |
16:52 | |
|
16:58
kid51 joined
|
|||
| dalek | rrot: 2057f20 | NotFound++ | t/src/embed/strings.t: rearrange a bit the C code in wchar import/export test to allow its full coverage |
17:01 | |
| nopaste | "kid51" at 192.168.1.3 pasted "t/steps/auto/ipv6-01.t: Needs adjustment after recent change to config/auto/ipv6.pm" (24 lines) at nopaste.snit.ch/29202 | 17:02 | |
| kid51 | Can someone take a look at that, then run perl Configure.pl --test=build (am at $job and cannot handle now). Thanks. | ||
|
17:02
kid51 left
17:04
mtk left
17:09
ambs joined
17:11
mtk joined
17:37
mtk left
|
|||
| whiteknight | plobsing: ping | 17:43 | |
| plobsing | pong | 17:56 | |
|
17:57
fbrito joined
18:05
fbrito left
18:11
fbrito joined,
fbrito left
|
|||
| dukeleto | ~~ | 18:12 | |
|
18:15
fbrito1 joined,
fbrito1 left
18:36
ambs left
|
|||
| dalek | rrot: bd43873 | jkeenan++ | t/steps/auto/ipv6-01.t: With NotFound's correction, HAS_IPV6 will always get defined inside _handle_ipv6_status(), so we don't need to check for definedness any more. |
18:42 | |
| NotFound | That thing was funny: a test that checked it was always defined, and the C code used definedness... | 18:43 | |
| Looks like deliberately failing %-) | 18:44 | ||
| dalek | nxed: r750 | NotFound++ | trunk/ (2 files): add --detach option to example fly |
19:09 | |
| rrot/whiteknight/imcc_compreg_pmc: 411027d | Whiteknight++ | / (3 files): a few changes and fixes. Have some bugs I'm debugging |
19:31 | ||
| whiteknight | plobsing: (sorry for the delay. I had to go shovel my car out) If you have a few spare moments, can you take a quick look at whiteknight/imcc_compreg_pmc? I'm having some packfile issues and maybe you'd have an intuitive insight into it | ||
| in compilers/imcc/main.c, lines 389 and 390. The way I have it now (assigning something to pf_raw->cur_cs), It fails when I try to -o a .pbc file file. pf->directory->segments is null | 19:32 | ||
| when I don't assign to it, I can -o just fine, but then I get a segfault later doing the load_bytecode_sc op, because the packfile returned by IMCC has a NULL ->cur_cs | 19:33 | ||
| plobsing | whiteknight: I'll have a look at it tonight. | 19:46 | |
| whiteknight | thanks. no rush. | 19:48 | |
| many things are different in that branch. let me know if you get disoriented | |||
| many things | 19:50 | ||
| i'm amaazed it runs at all | 19:53 | ||
|
19:55
plobsing left
20:01
theory joined
20:09
Coke joined
20:11
whiteknight left
20:13
whiteknight joined
20:21
whiteknight left
20:24
plobsing joined
20:29
whiteknight joined
20:30
ambs joined
20:37
bacek joined
21:27
whiteknight left
21:31
whiteknight joined
21:33
ambs left
21:36
plobsing left,
plobsing joined
21:38
theory left
|
|||
| dalek | rrot: c35607d | NotFound++ | src/packfile/api.c: Fix c++ build: Non void function need return. Also add a warning for non expected case |
21:43 | |
| KaeseEs | bacek: have you read any of david bacon's papers? a professor pointed me towards them today, reading a comparison he did of several gc strats now | 21:44 | |
|
21:45
contingencyplan joined
21:51
slavorg left
21:54
rurban_ joined
21:56
rurban left,
rurban_ is now known as rurban
|
|||
| dalek | TT #540 reopened by doughera++: installed versions of dynext/*.so still link to -lparrot in build ... | 21:59 | |
| TT #540: trac.parrot.org/parrot/ticket/540 | |||
|
22:03
fperrad left
22:04
theory joined
|
|||
| dukeleto imagines using the Bacon GC | 22:08 | ||
| bacek_at_work | ~~ | 22:24 | |
| KaeseEs, which one? | |||
| Coke, pong (8 hours later :) | |||
| KaeseEs | right now i'm looking at his comparison of concurrent gc strats, and i have his rt gc paper ("java without the coffee breaks") and his refcounter-on-steroids vs. m/s on the back burner | 22:25 | |
| Coke | bacek_at_work: just wondering what was up with the big honking commit that was a merge from master to master. | 22:28 | |
| makes it hard to review. | |||
| bacek_at_work | Coke, I forgot to config master for automated rebase on pull. | ||
| Sorry | 22:29 | ||
| dalek | rrot: 02ca078 | NotFound++ | src/embed/embed_private.h: Fix most of 'might be clobbered' warnings '' it's normally enough just to change their scope.'' |
22:35 | |
| Coke | NotFound: ; that url in the commit message faisl. :( | 22:39 | |
| jnthn | ipec faisl :) | 22:40 | |
| plobsing | Coke: appropriately, it goes to notfound.html | ||
| NotFound | Funny, it appears exactly that way in my browser, but fails if I paste it. | 22:41 | |
| Direct copy from the browser: lists.apple.com/archives/xcode-user...00050.html | 22:42 | ||
| Coke | NotFound++ | 22:46 | |
| dalek | rrot: ced54a5 | NotFound++ | src/embed/api.c: Fix remaining 'might be clobbered' warning |
22:49 | |
| TT #1981 closed by NotFound++: Many new warnings like: warning: variable ‘interp’ might be clobbered by ... | 23:08 | ||
| TT #1981: trac.parrot.org/parrot/ticket/1981 | |||
|
23:08
plobsing left
|
|||
| dukeleto | NotFound++ # nice work getting rid of the gcc warnings without tears | 23:19 | |
| cotto_work | NotFound++ | 23:20 | |
|
23:44
whiteknight left,
kid51 joined
23:52
plobsing joined
|
|||
| dalek | p-rx/nom: 2cf0a78 | jonathan++ | src/ (7 files): Drop the _hint variants of get and set attr - just fold it into one variant that handles the case where no hint is passed. Add slots to hold the native type variants, though they're not implemented or used anywhere yet. |
23:53 | |
| p-rx/nom: 111559c | jonathan++ | src/metamodel/reprs/ (5 files): Implement the native attr get/bind in the various REPRs. Of course, a bunch of them don't actually support attributes, so the only interesting code is in P6opaque. Missing a attribute type check still. |
|||
| p-rx/nom: 155b951 | jonathan++ | src/ops/nqp.ops: Ops for getting and binding native attrs. |
|||