|
Parrot 3.1.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: ? Set by moderator on 20 February 2011. |
|||
| dalek | rrot: 3a99403 | petdance++ | src/pmc/un (2 files): Fixing ARGIN()s that should have been ARGOUT(). Consting and localizing vars. Flagging UNUSED on interp and self |
00:05 | |
| ttbot | Parrot 984f59db MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/39519 | 00:08 | |
|
00:08
kid51 joined
|
|||
| kid51 | opsc_full_parse branch : make test : PASS : linux/i386 : commit 7054bcf77b51d612c94be24fc6c74df169cd59f5 | 00:08 | |
| afk | 00:09 | ||
|
00:14
whiteknight joined
|
|||
| whiteknight | NotFound++ | 00:16 | |
|
00:23
ShaneC left,
ShaneC joined
01:18
mrwall-e joined
01:19
cotto left
01:48
bubaflub joined,
cotto joined
|
|||
| cotto | ~~ | 01:48 | |
|
02:04
cotto left
02:06
dmalcolm left
|
|||
| kid51 | ~~ | 02:07 | |
| dalek | rrot: 807f85f | (Gerd Pokorra)++ | docs/project/release_manager_guide.pod: change the release manager guide not to use the removed "docs" target |
02:08 | |
| rrot/jkeenan/tt1159_distcheck: c5ac1fd | jkeenan++ | docs/project/release_manager_guide.pod: Add description of 'make release_check' to release guide. |
02:17 | ||
|
02:22
tadzik left
02:23
tadzik joined
02:24
ShaneC left
02:25
whiteknight left
02:32
Khisanth left
|
|||
| dalek | TT #2033 created by epogeszlnoezh3++: Things to Consider When Trading Penny Stocks | 02:35 | |
| TT #2033: trac.parrot.org/parrot/ticket/2033 | |||
|
02:43
Khisanth joined
02:44
ShaneC joined,
mrwall-e left
|
|||
| dalek | rrot: 85a71c8 | jkeenan++ | config/auto/coverage.pm: Re-rag POD so it will look better in HTML. |
02:50 | |
| TT #2033 closed by jkeenan++: Things to Consider When Trading Penny Stocks | 02:51 | ||
| TT #2033: trac.parrot.org/parrot/ticket/2033 | |||
| plobsing | 1st mark of a bot: diligent adherence to english capitalization rules | 02:54 | |
| kid51 | True | ||
| errm ... true | |||
| plobsing | oh noez | ||
| kid51 | They always use these hijacked yahoo.com addresses. | 02:55 | |
| I delete their accounts once they've spammed us, but it wouldn't be feasible to prevent people from creating Trac accounts. | |||
| Of course, every day whiteknight and I have to comb through spam posts to the mailing lists | 02:56 | ||
|
02:56
JimmyZ joined
|
|||
| JimmyZ | if it's a spammed ticket, I can think it should be deleted. | 02:57 | |
| plobsing | I'm not sure if I have the privs for that. but I can delete all the body. | ||
| JimmyZ | I think I have a privs, if nobody opposes | 03:00 | |
| plobsing | kid51: your anonymous toil is much appreciated. | ||
| kid51 | JimmyZ: I've done that once, but Trac gives you a warning advising you that outright deletion is not the best approach. | ||
| JimmyZ | kid51: now it's deleted | 03:01 | |
| plobsing | but I wanted to get rich trading penny stocks! | 03:03 | |
| ShaneC | anyone build parrot with msvc pro? | ||
| JimmyZ | Don't buy stocks until next economic crisis ;) | 03:05 | |
|
03:07
donri left
|
|||
| plobsing | ShaneC: there have been a couple parrot/rakudo devs that used that platform. check trac.parrot.org/parrot/wiki/ListOfPlatforms | 03:07 | |
| there's also trac.parrot.org/parrot/wiki/Platforms/Windows with a set of instructions | 03:09 | ||
| ShaneC | thanks | 03:10 | |
| i've checked those out before but never had any luck -- gonna figure it out tonight if it kills me though! ;-) | |||
| plobsing | ShaneC: if you're still alive tomorrow, please update the wiki with the information you've gleaned | 03:11 | |
| ShaneC | i'd really like to get a simple .vcproj/sln set up for parrot, kinda need to get the vanilla build working first though ;-P | 03:15 | |
| made it through configure and partially though nmake this time at least | 03:18 | ||
| bubaflub | ShaneC: just curious, are you on a 32 or 64 bit machine? | 03:21 | |
| ShaneC | 64 | 03:22 | |
| i think the problem is mostly that there is so little documentation about building using only msft tools, and what docs there are only cover the free tools (ones from 2003 at that) | 03:23 | ||
| dalek | tracwiki: v17 | jimmy++ | ListOfPlatforms | 03:24 | |
| tracwiki: trac.parrot.org/parrot/wiki/ListOfP...ction=diff | |||
|
03:27
lopaway is now known as lopnor,
kid51 left
|
|||
| ShaneC | hmm, parrot.exe built, but i got this: '.\\miniparrot.exe' : return code '0xc0000005' | 03:56 | |
| dalek | rrot/opsc_full_parse: afe3bf4 | bacek++ | / (4 files): Implement emitting of array access |
04:02 | |
|
04:02
lopnor is now known as lopaway
|
|||
| bubaflub | ShaneC: can you run miniparrot.exe -V? | 04:07 | |
| i.e. did miniparrot build correctly? | |||
| ShaneC | bubaflub: can't get any output from it | 04:15 | |
| although parrot -v works | |||
| bubaflub | you mean -V? | 04:16 | |
| ShaneC | w/e, it prints output at least | ||
| bubaflub | and if so, that's a bit strange. it was my understanding that miniparrot was required to build parrot | 04:17 | |
| ShaneC: ok, can you run a basic hello world with parrot.exe? | |||
| just curious; i might be able to try building at work on Wed. | |||
| ShaneC | sec, doing a clean build | ||
| parrot exxamples\\pasm\\hello.pasm | 04:18 | ||
| Hello World | |||
| examples* | |||
| pastebin.com/hAgx4gd7 | 04:20 | ||
|
04:21
cotto joined
|
|||
| ShaneC | calimlim.com/parrot/miniparrot-crash1.png | 04:28 | |
|
04:30
bubaflub left
|
|||
| ShaneC | for (i = 0; i < p_regs; ++i) ctx->bp_ps.regs_p[-1L - i] = PMCNULL; | 04:31 | |
| that code strikes me as a little odd.. | |||
| there's only 32 (pmc?) regs, that's trying to set reg UINT_MAX to PMCNULL? | 04:33 | ||
| plobsing | no, it's just that bp_ps is the allocated space for both string and PMC registers (both data pointers). strings get positive indexes into it; pmcs, negative ones. | 04:36 | |
| ShaneC | regs_s and regs_p are pointing to the same thing | 04:37 | |
| oh nm, gotcha | 04:38 | ||
| you allocate an array of 0xffffffff pointers? | 04:41 | ||
| dalek | rrot/opsc_full_parse: d78e295 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm: Fix parsing of complex variable declarations. Second var can have pointer star. |
04:45 | |
| rrot/opsc_full_parse: fc35360 | bacek++ | / (4 files): Made pointer part of var name to handle 'pmc *foo, *bar' properly |
|||
| plobsing | ShaneC: p = calloc(3, char); p2 = p + 2; p2[-1L - 1]; | 04:47 | |
| bacek_at_work | msg cotto make test passed in rakudo on opsc_full_parse | 04:48 | |
| aloha | OK. I'll deliver the message. | ||
| plobsing | you don't need to allocate INT_MAX values to make use of negative indices | ||
| ShaneC | plobsing: gotcha, never used negative indices before | ||
| how does that even work for something dynamically allocated? | 04:49 | ||
| plobsing | very carefully | ||
| ShaneC | oh nevermind, misread your example | 04:50 | |
| i thought it was like perl's negative array indexing | |||
| not just negative pointer arithmetic | |||
| cotto | bacek_at_work, nice | 04:57 | |
| ShaneC | well, at least i have something far enough along to actually debug... this could finally start getting interesting ;-) | ||
| bacek_at_work | cotto, merge party? | 05:01 | |
| no... | 05:09 | ||
| looks like a lot of problems with rakudo spectest | |||
| tadzik | what kind of problems? | 05:25 | |
| There've been some tricky updates there recently | |||
| ShaneC | plobsing: i was able to get further by replacing the negative array index with standard pointer arithmetic | 05:28 | |
| bacek_at_work | hmm. There is a _lot_ of spectest failures on master as well | 05:31 | |
| did we broke rakudo? Or it's some changes in rakudo itself? | |||
| plobsing | ShaneC: that's odd. if you're using the equivalent pointer arithmetic, shouldn't it generate the same code? | 05:33 | |
| ShaneC | i'd think so, and the access violation was showing the correct address | 05:34 | |
| no idea why that would change anything | |||
| bacek_at_work | tadzik, t/spec/S02-builtin_data_types/anon_block.rakudo ................ Failed 2/42 subtests | ||
| tadzik, etc, etc, etc | |||
| # Looks like you planned 42 tests, but ran 40 | 05:35 | ||
| Wrong fudging? | |||
| ShaneC | plobsing: the disassembly is indeed a bit different | 05:36 | |
| plobsing | ShaneC: not certain, but the dissassembly in the screeny you posted shows that the index is being manipulated as a 32bit value (eax), and then as as a 64bit value (rax) without being extended. | 05:37 | |
| that would indeed cause an access to a completely wrong segment of memory | |||
| are you using an outdated compiler? an experimental compiler? optimizations? | 05:38 | ||
| ShaneC | msvc 2008 | ||
| plobsing | optimizing? | 05:39 | |
| ShaneC | my makefile's cflags has no -O set, not sure what the default is, lemme explicitely set it to none | 05:40 | |
| tadzik | bacek_at_work: api changes in Test.pm | ||
| bacek_at_work: clean up as much as you can, update everything, etc, etc | |||
| bacek_at_work | tadzik, ah... But I did realclean, git pull, rebuild. | 05:41 | |
| still failing | |||
| tadzik | bacek_at_work: do you have rakudo installed? | ||
| with ol' Test.pm/Test.pir? | |||
| bacek_at_work | tadzik, no. I shouldn't have it. But let me double check it | ||
| ShaneC | plobsing: a 64 bit build *should* work, right? | ||
| plobsing | ShaneC: try changing -1L to -1LL | 05:42 | |
| ShaneC | same disassembling with optimizations disabled | 05:43 | |
| plobsing | ShaneC: this is a compiler bug. the disassembly is incorrect for the source. | ||
| ShaneC | any particular reason not to just use pointer arithmetic? | ||
| plobsing | ShaneC: because it's an array, and using array notation (which is required to be equivalent to pointer arithmetic) conveys meaning to developers | 05:44 | |
| bacek_at_work | tadzik, looks like I had stale Test.pir installed | ||
| tadzik | gotcha | ||
| plobsing | I need to come up with a clever backronym for msvc. Never worked with it much before. Only ever had to gripe about Generally Crappy Compiler and Incorrect Code Compiler. | 05:45 | |
| tadzik | so you _can_ use command-line arguments in Nqt. whiteknight++ | ||
| ShaneC | it's not perfect, but visual studio more than makes up for the shortcomings of the compiler ;-) | ||
| bacek_at_work | tadzik, much better now :) | ||
| ShaneC | plobsing: -1LL does indeed work | 05:46 | |
| plobsing | aha. thought so. the type annotation on that constant is confusing msvc (which has 32-bit longs). | ||
|
05:46
bacek left
|
|||
| ShaneC | agreed @ that, hate the sizeof( int ) == sizeof( long ) thing | 05:47 | |
| yet it still warns all over the place if you try to mix ;-P | |||
| or rather not even warns, it's an outright error iirc | |||
| plobsing | ShaneC: there are a few other places where the \\dL long constant is used. you'll need to fix those too. | 05:48 | |
| ShaneC | ran a search and replace, rebuilding now | ||
| plobsing | ShaneC: the size of the value is not the issue. when it is used in an array lookup it should get extended appropriately. | 05:49 | |
| ShaneC | i know, just ranting in general | ||
| cotto | back | 05:50 | |
| bacek_at_work, definitely merge party *after* Rakudo and Partcl are known to work the same on master and opsc_full_parse | 05:51 | ||
| ShaneC | plobsing: still crashing, somewhere else now, gonna dig into this other problem a bit | ||
| plobsing | progress! | ||
| bacek_at_work | cotto, make spectest is running on opsc_full_parse branch. | ||
| cotto, clearly | 05:52 | ||
| cotto | bacek_at_work, great | ||
| I'd run it here but I'd need to go to sleep before it finished. | 05:53 | ||
| bacek_at_work | cotto, run and go to sleep :) | ||
| ShaneC | plobsing: btw, thx | 05:55 | |
| plobsing | ShaneC: a word of warning, the long long trick (while it works), is not C89. We'll most likely need to come up with another solution before getting the fix into parrot. | ||
| ShaneC: thanks for not being afraid to get your hand dirty. | 05:56 | ||
| s/hand/hands/ | |||
| ShaneC | wrapping all negative array indices in a macro seems kinda ugly | 05:57 | |
| plobsing | I'm wondering if we need the type annotation at all. | 05:58 | |
| bacek_at_work | plobsing, what to you think about idea to split bp_ps and bp into 4 fields? | ||
| Just to get rid of nasty negative indexes. | |||
| plobsing | bacek_at_work: that would work too, at the expense of growing our contexts by 2*sizeof(void *) | 05:59 | |
| bacek_at_work | CallContext is huge anyway. | ||
| ShaneC | hope i can get my hands dirtier ;-) very glad i finally got parrot up and running in my dev environment of choice | ||
| plobsing | bacek_at_work: aren't we trying to make calling *less* expensive? | ||
| bacek_at_work | plobsing, it's 28 fields now. | ||
| plobsing, accessing args without arithmetic will be faster, isn't it? | 06:00 | ||
| plobsing | bacek_at_work: that arithmetic is builtin to the addressing mode of CISC chips | 06:01 | |
| we get it basically gratis | |||
| bacek_at_work | plobsing, hmm. Are you sure? | ||
| plobsing | look at the disassembly | ||
| plobsing is recompiling to make double sure | 06:05 | ||
| sorear | smaller callcontexts puts less work on the GC | 06:06 | |
| bacek_at_work | sorear, not in this case actually. | 06:09 | |
| PMC header is same. | |||
| Number of children to process is same | 06:10 | ||
| Size of Parrot_CallContext_attributes is bigger but it doesn't really matter | |||
| I don't expect big slowdown | |||
| (having slightly bigger context) | 06:11 | ||
| sorear | Where do you see the problems associated with "negative indexes"? | ||
| bacek_at_work | "arithmetic" | ||
| ShaneC | at least one compiler will require special treatment, and it made at least one programmer confused ;-) | 06:12 | |
| bacek_at_work | I don't understand ia32 assembly to confirm plobsing++ statement | ||
| sorear, and what ShaneC said :) | |||
| plobsing | sorear: msvc isn't properly sign extending array[-1L] on 64-bit. | 06:13 | |
| hmmm... it seems my assertion that the arithmetic is entirely handled by the addressing mode is false. the negative indices add 1 3-byte op to the lookup. | 06:16 | ||
| sorear | x86 addessing (in 32 bit mode) takes the form scale[1, 2, or 4]*index[any integer reg] + base[any integer reg] + displacement[32 bit constant] | 06:17 | |
| the encoding has a lot of confusing special cases around ebp and esp | 06:18 | ||
| bacek_at_work | plobsing, so. Let's try to split bp_ps? | ||
| sorear | 64 and 16 bit modes are completely different | ||
| plobsing | and I can see bacek++ 's point about the size. what's a 264-byte callcontext vs a 280-byte one? | ||
| sorear | there should be a set of "commonly used" fields that we can pack into, say, 64 bytes | 06:19 | |
|
06:19
rurban_ joined
|
|||
| bacek_at_work | sorear, not many. Most of the fields are PMC and STRING pointers. | 06:19 | |
| but yes, I think we can pack "warns", "errors" and "trace_flags" at least | 06:20 | ||
| plobsing | why is current_namespace part of the context? isn't that static to the sub? | ||
| bacek_at_work | and if we limit number of positional args to 2^16 we can pack num_positionals and allocated_positionals | 06:21 | |
| plobsing, Parrot_pmc_create_mro? | |||
|
06:22
rurban left
|
|||
| bacek_at_work | but we can try to get rid of it. | 06:22 | |
|
06:22
rurban_ is now known as rurban
|
|||
| plobsing | bacek_at_work: what do namespaces have to do with method resolution? | 06:22 | |
| bacek_at_work | plobsing, I don't know. MMD? | 06:23 | |
| plobsing | still not seeing it | 06:24 | |
| bacek_at_work | me too | ||
| But I'm not an expert in it | |||
| plobsing | current_object? but self is held in an ordinary PREG and passed as a specially flagged, but otherwise normal, PMC. | 06:26 | |
| bacek_at_work | current_object is definitely used for method dispatch | 06:28 | |
| but... | |||
| I couldn't find it anymore.... | |||
| Sigh. Someone with more knowledge about PCC should review set of fields in CallContext. | 06:29 | ||
| cotto, make spectest passed on opsc_full_parse | |||
| cotto | bacek_at_work, awesome. | 06:30 | |
| bacek_at_work, have you tested any other hlls? | |||
| bacek_at_work | cotto, nqp-rx :) | 06:31 | |
| ShaneC | random note, digging around for 64 bit oddities | 06:32 | |
| parrot.h's U?INTVAL2PTR do not take into account when PTR_SIZE == HUGEINTVAL_SIZE | 06:33 | ||
| which would mean defaulting to unsigned int on 64 bit windows | |||
| sorear | some parts of Parrot still think that invocants are somehow special | ||
| bacek_at_work | looks like "PCC refactor" leftover | 06:34 | |
|
06:52
JimmyZ left
|
|||
| bacek_at_work | sorear, invokant is actually "somehow special" according to our code... | 07:09 | |
|
07:11
cosimo left
|
|||
| ShaneC | yay, build getting even further! | 07:18 | |
| had to throw a hack into parrot.h though ;-( | |||
| INTVAL2PTR / UINTVAL2PTR / PTR2INTVAL / PTR2UINTVAL are all broken on windows 64 bit | 07:25 | ||
| or something is wrong with my configuration, what determines what a Parrot_Int will be? | 07:32 | ||
|
07:37
fperrad joined
08:17
contingencyplan left
08:26
Kulag left
08:27
Kulag joined
08:38
theory left
08:47
Kulag left
08:48
Kulag joined
08:54
Kulag left
08:57
Kulag joined
09:03
Kulag left
09:07
Kulag joined
09:15
Kulag left,
donpdonp left,
donpdonp joined
09:16
Kulag joined
09:25
Kulag left
09:30
Kulag joined
09:42
lateau joined
09:43
lateau left
09:45
dngor left
09:47
dngor joined
09:49
bacek joined
09:57
fperrad_ joined
09:59
JimmyZ joined
10:00
bacek left,
fperrad left,
fperrad_ is now known as fperrad
10:02
JimmyZ left
10:06
Drossel joined,
Kulag left
10:12
bacek joined
10:15
Drossel left
10:16
zostay_ joined,
zostay left
10:17
Kulag joined
|
|||
| bacek | ~~ | 10:18 | |
|
10:29
Drossel joined
10:31
Kulag left
10:39
woosley joined
10:45
lucian joined
10:52
Drossel left
11:16
Khisanth left
11:17
JimmyZ joined
11:20
Maurice joined
11:37
lucian_ joined
11:40
Khisanth joined
11:41
lucian left
11:46
Khisanth left
11:47
kid51 joined
11:54
lucian joined
11:58
lucian_ left
12:00
Maurice left
12:02
Kulag joined
12:04
lucian_ joined
12:09
lucian__ joined,
lucian left
12:12
lucian joined,
lucian_ left
12:15
lucian_ joined,
lucian__ left
12:17
lucian__ joined
12:18
lucian left
12:21
lucian_ left
12:23
lucian__ left
12:41
ShaneC1 joined
12:42
lucian joined
12:44
ShaneC left
12:51
Maurice joined
12:52
Kulag left,
Kulag joined
12:53
lucian_ joined
12:55
woosley left
12:57
lucian left
13:08
lucian joined,
lucian_ left
13:09
Khisanth joined
|
|||
| dalek | rrot/jkeenan/tt1159_distcheck: 0da424a | jkeenan++ | docs/project/release_manager_guide.pod: Correct names of targets per gerd++. |
13:09 | |
|
13:10
lucian_ joined
13:11
bubaflub joined
|
|||
| dalek | rrot: 0da424a | jkeenan++ | docs/project/release_manager_guide.pod: Correct names of targets per gerd++. |
13:13 | |
| rrot: 77fa230 | jkeenan++ | / (4 files): Merge jkeenan/tt1159_distcheck branch into master. |
|||
|
13:14
lucian left
13:23
kid51 left
13:31
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 13:31 | |
| tadzik | good morning whiteknight | 13:34 | |
|
13:34
mtk joined
|
|||
| whiteknight | incoming | 13:38 | |
| dalek | Heuristic branch merge: pushed 16 commits to Rosella by Whiteknight | ||
| whiteknight | oh, awesome | ||
|
13:38
wagle left
|
|||
| whiteknight | good morning tadizk | 13:38 | |
| tadzik: | 13:39 | ||
|
13:39
wagle joined
13:43
lucian joined
13:47
lucian_ left
14:16
plobsing left
|
|||
| whiteknight | msg NotFound: "Method 'dowarnings' not found for invocant of class 'NamespaceStatement'" | 14:17 | |
| aloha | OK. I'll deliver the message. | ||
|
14:18
Kulag left,
Kulag joined
14:19
rurban_ joined
14:22
rurban left,
rurban_ is now known as rurban
14:44
lucian left
14:47
lucian joined
|
|||
| dalek | sella: 1d04bc7 | Whiteknight++ | src/ (2 files): fixes so Error.winxed builds. Update Distutils.winxed to use the new -o option. Also, die on build failure (with error message), and print out the name of files we unlink |
14:49 | |
| sella: 38bc497 | Whiteknight++ | src/winxed/DistutilsSt1.pir: update distutils bootstrap |
|||
| sella: abccfbc | Whiteknight++ | README.md: Mention in README that NQP-generated libraries may rely on P6object.pbc, which isn't automatically loaded unless we're running Parrot-nqp |
|||
| sella: 92c18b5 | Whiteknight++ | setup.nqp: fix setup.nqp to build again after moving ObjectFactory |
|||
| sella: 1f0137f | Whiteknight++ | src/ (3 files): Fix Container.winxed so it mostly builds. Exposes a bug in winxed so we can't do any testing |
|||
| rrot: ab6bd87 | (Gerd Pokorra)++ | tools/release/releasecheck.pl: add Copyright information |
14:55 | ||
| tadzik | whiteknight: 38bc497537 may be wrong | 15:06 | |
| you might prefer to load nqp_rx.pbc, or something | 15:07 | ||
| whiteknight | it worked fine when I did P6object.pbc | 15:09 | |
| I don't really use too many features of nqp-rx beyond P6object | |||
| tadzik | rexeges may break I think | ||
|
15:13
PacoLinux joined
|
|||
| NotFound | whiteknight: I'll fix that right now. | 15:14 | |
| whiteknight | NotFound++ | 15:15 | |
|
15:16
Andy joined
|
|||
| NotFound | whiteknight: r836 should fix it | 15:21 | |
| BTW I think that the problem of P6object not being automatically loaded is a failure of nqp that should be fixed better than warned about. | 15:22 | ||
|
15:24
contingencyplan joined
|
|||
| dalek | nxed: r836 | NotFound++ | trunk/winxedst1.winxed: NamespaceStatement lacked chaining of dowarnings to its parent, fixed |
15:25 | |
|
15:26
PerlJam left
15:27
PerlJam joined
|
|||
| whiteknight | NotFound: The "fix" for P6object is to rewrite the libraries in winxed instead | 15:30 | |
| NotFound | Not a bad way for my taste :D | 15:31 | |
| whiteknight | NotFound: And you've been very responsive in fixing bugs and problems I have. So switching to winxed has been pretty painless | ||
| NotFound | The point is that for general purpose libraries the implementation language or any other dependence should be an internal detail that users shouldn't need to care. | 15:32 | |
| You just load the lib, and the lib takes care of its own needs. | 15:33 | ||
| whiteknight | The problem with P6object and NQP is that NQP-generated libraries use P6object in all the :init :load methods to setup classes and all | 15:35 | |
| so if I do INIT { pir::load_bytecode("P6object.pbc"); } There's a chance this line won't fire before it's needed | 15:36 | ||
| ordering gets off, especially when I start merging bytecode and other crafty things | 15:37 | ||
| NotFound | whiteknight: languages must evolve following users needs, I'm a follower of Stroustrup's "The Design and Evolution of C++" | ||
| I don't know enough nqp internals to suggest a solution. | 15:38 | ||
| jnthn | NQP should really just emit code that loads the stuff it needs. | 15:39 | |
| (If it's not already loaded). | 15:40 | ||
| NotFound | I mean, the problem should be solved by nqp itself, not by any library that gets implemented with it. | ||
| sorear | add a :load :init sub that loads P6object.pbc? | ||
| +1 | |||
| jnthn | NotFound: +1 | ||
| NotFound: I'm working on that kinda stuff in NQP at the momnet. fwiw. | |||
| NotFound | jnthn: nice | ||
| sorear | also, INIT { pir::load_bytecode("P6object.pbc"); } makes no sense for "portable nqp" | ||
|
15:40
plobsing joined
|
|||
| sorear | (what was the final verdict, btw, on whether to fork Parrot-NQP from Portable-NQP?) | 15:41 | |
| NotFound | I think we've not reached yet a "final" status. | 15:43 | |
| whiteknight | NotFound: I'm still getting that error on r836 | ||
| NotFound | whiteknight: show me the source. | ||
| whiteknight | hold on | ||
| NotFound | whiteknight: uh, wait, if you're using the installed compiler, is not updated yet. | 15:44 | |
| whiteknight | okay, that's my problem | 15:45 | |
| I am using the installed compiler | |||
| NotFound | One moment... | ||
| r837 | 15:46 | ||
| whiteknight | :) | ||
| NotFound: works! NotFound++ | 15:47 | ||
| dalek | nxed: r837 | NotFound++ | trunk/pir/winxed_compiler.pir: update installable compiler |
15:48 | |
| NotFound | I think I must make a more elaborate installer to get rid of this problem. | ||
| Updating the pir for any minimal change is too much. | |||
| cotto_work | ~~ | 15:53 | |
| whiteknight | NotFound: is there a way to have a global var in a namespace? | 15:54 | |
| just namespace Foo { var bar; }? | |||
| NotFound | whiteknight: I'm working on that but is not ready yet. | 15:55 | |
| The "solution" I've been using is coroutines that initializes and yields the global objects needed. | 15:56 | ||
| whiteknight | okay | 15:57 | |
| NotFound | I think plobsing is using in some cases :immediate subs | 15:59 | |
| Globals are evil, anyway ;) | 16:01 | ||
| plobsing | I did. they work great for creating static variables. | ||
| you can't modify the reference of course, but using an array or a hash, that doesn't really matter. | 16:02 | ||
|
16:03
Kulag left
|
|||
| whiteknight | what I have in NQP is a namespace sub to get a default instance of an object | 16:05 | |
| in NQP, I'm doing Rosella::Container::default_container(). The first time we create it, subsequent calls return the first reference | |||
| so a coroutine there is probably the best | |||
|
16:06
Kulag joined
|
|||
| NotFound | Yes, all places where I've needed a global were like that. | 16:08 | |
| There was no real need for uniqueness, but was a waste to create a new one in any usage. | 16:09 | ||
|
16:11
JimmyZ left
|
|||
| nopaste | "whiteknight" at 192.168.1.3 pasted "Failure code for NotFound++" (13 lines) at nopaste.snit.ch/34807 | 16:17 | |
| whiteknight | NotFound: that code can't find the class. Get a null PMC exception in get_class | 16:18 | |
|
16:18
Patterner left,
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
| whiteknight | class is doing a local namespace search, not a root namespace search, I assume | 16:19 | |
| plobsing | ping Patterner | ||
| Patterner | what have I done to deserve that? | 16:20 | |
| plobsing | some testing for leo back in 2005 | ||
| 75a2c84daf3c4685269799539e98d76b2e5c6b97 mentions you I beleive | |||
| do you recall why specifically '-1L' was used? | 16:21 | ||
| Patterner denies knowledge | |||
| plobsing | you are Psyche correct? | ||
| or were | |||
| Patterner | that was a long time ago.... | ||
| I have... relatives... on other networks... | 16:22 | ||
| do you have an URL for that? | |||
| plobsing | I understand if you don't remember. It seems like a trivial detail, and it was a while ago. | ||
| but that particular code is causing issues on Win64, and I'd like to understand why it is there in the first place | 16:23 | ||
| URL: github.com/parrot/parrot/commit/75...6b2e5c6b97 | 16:24 | ||
| NotFound | whiteknight: looking at it. | 16:25 | |
| Patterner | looks like an off-by-one error, just with negative values which get their signs changed to be used as an index... | 16:27 | |
| NotFound | I don't think so, 0 belongs to the positive values, so -0 must be addresed some way. | 16:28 | |
| plobsing | Patterner: the logic is sound, but -1 would have made just as much sense. -1L seems oddly specific. | ||
| dukeleto | ~~ | ||
| NotFound | plobsing: probably just to dismiss some warning. | 16:29 | |
| Patterner | it's 64bit after all | 16:30 | |
| lots of warnings disappear when you add L's :) | |||
| plobsing | those L's come back to haunt you when sizeof (long) != sizeof (void *) | 16:31 | |
|
16:31
lucian left
|
|||
| NotFound | That difference shouldn't have any effect in basic arithmetic, except in corner cases. | 16:32 | |
| Patterner | Is that even used in today's code anymore? | ||
| NotFound | And the pointer and indexes used are far from corner cases. | ||
|
16:33
lucian joined
|
|||
| NotFound | This is in register accesors, isn't it? Then is used trillions of times. | 16:34 | |
| plobsing | yes. that is precisely it. and it causes illegal memory access on Win64 because msvc can't cope. | 16:35 | |
| whiteknight | msvc-- | ||
| NotFound | plobsing: Maybe a problem with the registers sizes? | ||
| whiteknight | karma msvc? | ||
| aloha | msvc? has karma of 0. | ||
| moritz | karma msvc | ||
| aloha | msvc has karma of 1. | ||
| whiteknight | msvc-- | 16:36 | |
| karma msvc | |||
| aloha | msvc has karma of 0. | ||
| whiteknight | when that karma number gets to -1000, I say we officially drop support for msvc | ||
| moritz | msvc-- # still no complete C99 support, last I looked | ||
| plobsing | NotFound: nah. it generates incorrect code for the pointer dereference. ShaneC posted a screen-shot of the debug last night (where I saw the generated code) | ||
| whiteknight | msvc-- # Microsoft says it will never offer C99 support, ever | ||
| plobsing | will they properly support C89 ever? | 16:37 | |
| moritz | whiteknight: don't say that; if we do, our coding robot will include a msvc-- in every commit message, and it's out of business in, like, 10 days :-) | ||
| NotFound | If it's a code generation error of the C compiler, just report it to its owner. | ||
| plobsing | calimlim.com/parrot/miniparrot-crash1.png | 16:38 | |
| whiteknight | plobsing: I don't know. | ||
| plobsing | do they have an issue tracker for that somewhere? I didn't find anything on the first page of ddg or goog | ||
| NotFound | Where are that accesors defined? context.h ? | ||
| plobsing | yep. previously registers.h, and previous still interpreter.h | 16:39 | |
|
16:39
dmalcolm joined,
lucian left
16:44
lucian joined
16:45
theory joined,
lucian_ joined
|
|||
| NotFound | plobsing: where is failing, with string/pmc or with intval/floatval | 16:46 | |
| ? | |||
| plobsing | PMC access, but that's probably just because that's the first accessed register. N-regs likely have the same issue. | 16:47 | |
|
16:50
lucian left
16:51
lucian_ left
|
|||
| NotFound | Given that is a macro, maybe just casting x to int is the right solution. | 16:52 | |
|
16:52
lucian joined
|
|||
| NotFound | [-((int)x + 1)] | 16:53 | |
| I mean [-((int)(x) + 1)] | |||
| plobsing | I suspect, that just using -1 (as opposed to -1L) would very likely solve the problem on that platform. I asked why it was used because I was concerned with breaking other platfroms. | 16:54 | |
|
16:55
lucian_ joined
|
|||
| NotFound | The cast should avoid any spurious warning. | 16:55 | |
| And the values used are veeeeery long to overflow. | 16:56 | ||
|
16:58
lucian left
|
|||
| plobsing | spurious warnings don't concern me, so long as the correct code gets generated. | 16:58 | |
|
16:59
shockwave joined
|
|||
| NotFound | Yeah, but maybe avoiding some warning was the reason for the L | 16:59 | |
| shockwave | nopaste | ||
| plobsing | ah | ||
| shockwave | purl paste | ||
| plobsing | ENOPURL | ||
| shockwave | aloha paste | ||
| plobsing | ah ah ah, you didn't say '?' | 17:00 | |
| shockwave | A paste site? | ||
| NotFound | aloha: nopaste? | ||
| aloha | NotFound: nopaste is is nopaste.snit.ch (works with the script in $_PARROT/tools/dev/nopaste.pl) | ||
| whiteknight | nopaste? | ||
| shockwave | Thanks | ||
| NotFound | aloha wants more attention than purl. | 17:01 | |
|
17:02
lucian joined
17:05
lucian_ left
17:07
lucian_ joined
17:10
lucian left
|
|||
| nopaste | "shockwave" at 192.168.1.3 pasted "How to pass a C pointer between parrot functions?" (23 lines) at nopaste.snit.ch/34808 | 17:13 | |
| NotFound | whiteknight: I think r389 will fix the problem for a now. | ||
| shockwave | I'm trying to pass a structure between parrot functions. | 17:14 | |
| a C structure. | |||
| I'm trying to call functions from a C library and pass that C structure to them. | 17:15 | ||
| I can already call C functions from that library, I just don't know how to pass that structure. | 17:16 | ||
|
17:16
lucian joined
|
|||
| shockwave | help | 17:16 | |
| dalek | nxed: r838 | NotFound++ | trunk/winxedst1.winxed: use get_class instead of get_namespace + typeof in the class operator |
17:17 | |
| nxed: r839 | NotFound++ | trunk/pir/winxed_compiler.pir: update installable compiler |
|||
|
17:17
ShaneC1 left
|
|||
| NotFound | shockwave: provide a C function that return that structure and NCI it. | 17:17 | |
| shockwave: BTW, if you define functions in C++ to be called from parrot you shouldn't allow C++ exceptions to propagate out of them. | 17:18 | ||
| shockwave | NotFound: But, those that mean that the structure has to be a static variable? | 17:19 | |
| does* | |||
|
17:19
lucian_ left
|
|||
| shockwave | NotFound: Ok, good tip. | 17:19 | |
| Didn't know that. | 17:20 | ||
| Basically, the structure I'm trying to pass around I first get it when creating the interpreter. | |||
| it contains some structures needed by the functions that will be called from the C lib. | |||
| NotFound | shockwave: is not written anywhere, but I guess ugly things will happen. | 17:21 | |
| shockwave: Is get by whom? By parrot? | |||
| shockwave | no :0 | ||
| NotFound | Then parrot need some way to get it. The easier way is to provide a function that returns it. | 17:22 | |
| shockwave | NotFound: So, basically, I'd just call those void functions, and from them get a pointer to the structure? | 17:23 | |
| NotFound | shockwave: define a C function that returns the structure and dlfunc it as 'p' Then pass the pointer to a dlfunc 'vp' | 17:26 | |
|
17:26
mtk left
|
|||
| NotFound | Use extern "C" in C++ to avoid name mangling. | 17:27 | |
| In parrot, just store the pointer in a PMC, NCI will take care of the details. | 17:29 | ||
| shockwave | If it's not too much to ask, could you provide an example, with passing arguments? | 17:31 | |
|
17:32
mtk joined
17:33
Maurice left
|
|||
| plobsing | maybe I'm not understanding, but wouldn't it be easier to dlvar? | 17:34 | |
| NotFound | Mmmm... maybe, but I'm not so sure about C++ name mangling of global symbols. | 17:35 | |
| plobsing | shouldn't extern C work for vars as well? | ||
| NotFound | Should, but I've never used it. | 17:36 | |
| nopaste | "shockwave" at 192.168.1.3 pasted "NCI Example" (17 lines) at nopaste.snit.ch/34809 | ||
| shockwave | That's an example from the 'tutorials' directory of the Parrot distribution. | 17:37 | |
| I like to be able to pass arguments to the :main functions, and from there pass it to the dlfunc functions/subs. | 17:38 | ||
| NotFound | shockwave: if you want to pass external objects to parrot functions from the embedding host, you should do the appropiate encapsulation yourself. | 17:40 | |
| plobsing | pointers are generally passed around in in PMC containers (eg: Ptr) | ||
| NotFound | The function approach I suggested has the advantage that NCI do the encapsulation by itself. | 17:41 | |
| plobsing | setting up the pointer to pass to main is your business as an embedder. from there, it should work for passing around within parrot. use 'p' argument signatures for NCI functions. | ||
|
17:42
lucian left,
lucian joined
|
|||
| NotFound | Oh, and if you mean the :main function, the convention is that it gets a parrot string array argument. | 17:42 | |
| So is not very appropiate to that mean. | |||
| plobsing | that's just a convention though. very few things should break if that's not true. | ||
| NotFound | Yeah, but IMO it will be cleaner to not mark it as :main | 17:43 | |
| shockwave | That's not a problem. I just make :main do nothing and place that behavior in another function. ;) | ||
| I'll play around with the info you guys gave me. Thanks, it should help me get to the right place. | |||
|
17:44
lucian_ joined
|
|||
| NotFound | shockwave: you don't need to run main if you don't want to. | 17:44 | |
| As long as the interpreter is initialized and a pbc loaded, you can call subs as you want. | 17:45 | ||
|
17:48
lucian left
|
|||
| NotFound | whiteknight: r839 will probably solve your problem | 17:49 | |
|
17:57
ShaneC joined
|
|||
| dalek | rrot: baad98f | jkeenan++ | NEWS: Added NEWS item about 'make release_check'. |
17:59 | |
| whiteknight | NotFound: I'll give it a try in a minute | 18:01 | |
| NotFound: Yes! it works. Passing all tests again | 18:03 | ||
| NotFound++ | |||
|
18:06
lucian joined
|
|||
| ShaneC | been trying to get a win64 build to work, stopped last night looking into a crash with pmc thawing -- anything come to mind that would be broken with that by assuming sizeof( long ) == sizeof( void* ) ? | 18:07 | |
| plobsing | ShaneC: what types were selected for INTVAL and opcode_t? if they are too small, did Configure.pl warn you about this? | 18:09 | |
|
18:09
lucian_ left
|
|||
| ShaneC | hmm, i'll take a look at those again tonight | 18:09 | |
| or if i can get this commit in for $dayjob i'll snag an hour or two for parrot | 18:10 | ||
| NotFound | whiteknight: is not a definitive solution, but I'm trying to avoid for a now the need to make a difference between class declared in current scopes and unknown ones. | ||
| ShaneC: we've been talking a bit about that, but no answer yet. | 18:12 | ||
| ShaneC | NotFound: sounds good | 18:15 | |
| NotFound | Someone should tell Microsoft to donate us a bunch of machines and licenses to better address that kind of problems ;) | 18:16 | |
| whiteknight | NotFound: parrot does have get_namespace and get_hll_namespace and get_root_namespace | 18:17 | |
| if Winxed supports keys in ${ } we could use those ourselves | |||
| ShaneC | my 32 bit build does work, but getting the 64 bit one working seems like a nice way to get my feet wet | 18:18 | |
| NotFound | whiteknight: yes, but incrementing the dependance on hand-written pir is not desirable. | 18:19 | |
|
18:20
lucian_ joined
|
|||
| NotFound | ShaneC: I'm sorry, but I'm not going to pay a Windows 7 licence for the privilege. | 18:20 | |
| ShaneC | NotFound: perfectly understandable | 18:23 | |
|
18:23
lucian left
|
|||
| ShaneC | i didn't mean i expected you guys to do the leg work, i meant that getting it working myself would be a good way to check out the entire source base | 18:24 | |
| NotFound | ShaneC: we usually do our best, win64 gets less attention just because most of us doesn't have machines with it available. | 18:25 | |
| whiteknight | ShaneC: Win64 can be very tricky. I had it working at one point | ||
| ShaneC: Here's a post where I talked about some of the command-line args require for configure | 18:26 | ||
|
18:26
lucian_ left
|
|||
| ShaneC | whiteknight: did you compile a 64 bit version of perl? | 18:26 | |
| whiteknight | ShaneC: I don't know. I used ActivePerl. I don't know if it was x86 or x64 | ||
| ShaneC | perfect, i use activeperl too | 18:27 | |
| whiteknight | ShaneC: give that that incantation a try and see how far you get | ||
|
18:27
lucian_ joined
|
|||
| ShaneC | didn't get a link | 18:28 | |
| dalek | rrot: 72ba167 | util++ | t/tools/dev/headerizer/01_functions.t: Fix headerizer/01_functions.t when temp dirs contain `+` in their names (Darwin). |
||
| Coke ponders again working on a cold fusion-alike for parrot. | 18:31 | ||
| would really need the DBI stuff & mod_parrot back, though. | |||
| NotFound | What happened to mod_parrot? | 18:32 | |
| Coke | jeff horwitz dropped out of sight. | 18:35 | |
| NotFound | According to trac wiki, isn't even migrated to git | ||
| whiteknight | Jeff gave me permission to migrate it to git. I haven't done it yet | 18:38 | |
| NotFound: is there a break or continue keywords for working with loops? | 18:39 | ||
| NotFound | whiteknight: both | ||
| plobsing | and goto, but don't do that | ||
| NotFound | You can also goto out of the loop. | ||
| goto into the loop is not recommended. | |||
| Util is also interested in the Win64 link that whiteknight is giving to ShaneC | 18:40 | ||
| ShaneC | whiteknight.github.com/2009/07/20/p...win64.html | 18:41 | |
| cotto_work | whiteknight: what do you think about the patch to add Parrot_get_euid in trac.parrot.org/parrot/ticket/2032 ? | ||
| I'm leaning toward rejecting it because it's not generally useful, but I'd like a second opinion. | |||
| Util | thx | ||
| ShaneC | Util: i had to adjust the link flags a bit, i think it was pulling /MACHINE:X86 from my perl | ||
| but other than it seems to have worked for the most part | |||
| at least the configure part, building now | 18:42 | ||
| cotto_work | s/euid/effective_user_id/ | ||
| Util | ShaneC: OK, thanks. It will be a few weeks before I can play with it; just wanted to get it into my should-investigate list. | 18:43 | |
| NotFound | cotto_work: reject it. At the very least, is incomplete. geteuid is not generic enough to be added to platform generic without checks for availability. | 18:44 | |
|
18:45
lucian joined
|
|||
| cotto_work | NotFound: the issue is whether we want Parrot to "support" getting the effective uid at all. | 18:45 | |
|
18:45
zby_home joined
|
|||
| cotto_work | issues with the patch itself are another question | 18:46 | |
| NotFound | cotto_work: ok | ||
| Regarding that point, I don't want to. | 18:47 | ||
|
18:48
lucian__ joined
|
|||
| cotto_work | NotFound: thanks. | 18:48 | |
|
18:48
lucian_ left
|
|||
| NotFound | We can add some sugar or helper to getting some well known functions via nci, but we shouldn't add our own versions of any posix C interface somenone may want. | 18:49 | |
| Posix, or win, or whatever. | |||
| plobsing | isn't there some big OS-compatibility library somewhere? | 18:51 | |
| cotto_work | plobsing: apr? | ||
|
18:51
lucian left
|
|||
| plobsing | haven't looked into that. maybe that's exactly what I'm thinking of. | 18:51 | |
|
18:53
bubaflub left
|
|||
| NotFound | (The somenone was a typo) X-) | 18:53 | |
|
18:55
lucian joined
18:58
lucian__ left
|
|||
| NotFound | plobsing: With the .param changes is now possible to insert annotations before .param at the start of subs? | 18:59 | |
| plobsing | NotFound: yes, but it might not work like you want for methods. | 19:00 | |
| NotFound | plobsing: I just want an accurate backtrace when getting params throws. | 19:01 | |
| plobsing | contiguous sequences of .param get turned into a single get_params op. this happens in IMCC, but might occur *before* annotations ops are removed. when a :method flag is detected, a "self" param is unshifted onto the first op (always a label). if that op is not contiguous with the other params, you get two get_params ops, both of which use the wrong signature. | 19:02 | |
| NotFound | Urgh | ||
| plobsing | it was mostly intended for cases where control flow is re-entering the sub. continuations work this way for example. | 19:03 | |
| whiteknight kicks the "many ops" dead horse again | |||
| plobsing | exceptions could work this way if they used call-semantics rather than return-semantics | ||
| or if parrot moved to a unified call-return-semantics as promised by CPS | |||
| whiteknight | internally, it is unified | 19:04 | |
| we got over that hurdle. We're just not making great use of it yet | |||
| plobsing | ah. | ||
| NotFound | One more time I don't remember what I've done this week. git log and svn log to the rescue! | 19:06 | |
| whiteknight | oh right, #ps today | ||
| awesome | |||
| cotto_work | yup, we have one of those | 19:07 | |
| NotFound | One awesome? | 19:09 | |
| cotto_work | #awesomesketch | 19:10 | |
| whiteknight | #parrotsketch is evolving! | 19:12 | |
| cotto_work | whiteknight: do you see any value in having the ability to get the effective user id be a core parrot thingy? | ||
| whiteknight | I don't think so. It's completely meaningless on some of our target platforms | 19:13 | |
| that said, we can definitely provide pre-made NCI wrappers around utilities like that | 19:14 | ||
| it's easy enough to do | |||
| or HLL devs can write it themselves (again, it's easy) | |||
| cotto_work | ok. I'll post an example of how to do that and reject the ticket. | 19:15 | |
| whiteknight | for that matter, I'm not sure I see real value in having a core way to get the user id either | 19:16 | |
| plobsing | looks like a job for tools/dev/ncidef2pir.pl | ||
| whiteknight | again, that's meaningless on windows | ||
| NotFound | return (UINTVAL)0; | 19:17 | |
| Our logic for 'generic' is debatable. | 19:18 | ||
| cotto_work | NotFound: yes | ||
| whiteknight | if we want to provide a bunch of utilities which are only defined on unixy-platforms, we should have a separate library for those things, and not burden our windows users with it | ||
| likewise, there are windows features we can expose which don't have nice analogs on unix | 19:19 | ||
| NotFound | For things that aren't speed critical at all, NCI should be appropiate. | ||
| whiteknight | see also: user id, effective user id | 19:20 | |
| NotFound | And is far easier to support than config and code support, Configure probes.... | ||
| whiteknight | NotFound: does winxed have a nicer way to write "namespace Foo { namespace Bar { } }" Can I write something easy like "namespace Foo : Bar { } "? | 19:23 | |
| NotFound | whiteknight: Did I said that I'm a Stroustrup follower? ;) | 19:24 | |
| whiteknight | ? | ||
| NotFound | whiteknight: namespace syntax is borrowed from C++, so the answer is no. | 19:25 | |
| whiteknight | ...can we? | ||
| :) | |||
| NotFound | Will think about it. | ||
| cotto_work | better than borrowing it from PHP | 19:26 | |
| PerlJam | no, it should be: namespace Foo::Bar { ... } for maximal conflation ;) | ||
| NotFound | namespace Bar inside of Foo { ... } | 19:27 | |
| lucian hates the :: operator | |||
| dalek | rrot: c6e78d7 | util++ | tools/release/releasecheck.pl: Add coda to releasecheck.pl, to pass t/codingstd/perlcritic.t |
19:28 | |
| whiteknight | I have a couple files that open with "namespace Foo { namespace Bar { ... ", and I think that's very ugly | ||
| PerlJam | whiteknight: what are you using namespaces for that you would want a short-hand for nesting them? | ||
| whiteknight | PerlJam: I'm working on a toolkit project called rosella. Classes there are typically named "Rosella::<libname>::<classname>" | 19:29 | |
| NotFound | Please don't drop the convention of doing out-of-band comments here better than at #ps | 19:31 | |
| cotto_work | #ps in 56 | ||
| NotFound | whiteknight: one advantage of the no shorthand approach is ack friendliness. | 19:32 | |
| Andy | ack is friendly to everyone! | 19:34 | |
| NotFound | ack++ | ||
| cotto_work | ack++ | 19:35 | |
| atrodo | ack++ | ||
| Andy | Yay | ||
| plobsing | eh, gcc is better. ack is ancient ;-) | ||
| Andy | It will be interesting to see how ack 2.0 affects the Parrot folks | ||
| plobsing | Amsterdam Compiler Kit | ||
| cotto_work | aloha: ack? | 19:36 | |
| aloha | cotto_work: ack is friendly to everyone! | ||
| Andy | aloha: karma for ack? | ||
| aloha | Andy: for ack? has karma of 0. | ||
| Andy | aloha: karma for ack | ||
| aloha | Andy: for ack has karma of 0. | ||
| tadzik | karma ack | 19:37 | |
| aloha | ack has karma of 3. | ||
| cotto_work | aloha: karma ack | ||
| aloha | cotto_work: ack has karma of 3. | ||
| Andy | aloha: karma ack | ||
| aloha | Andy: ack has karma of 3. | ||
| tadzik | :P | ||
| Andy | tadzik: I was getting there. | ||
| tadzik | thus, ack++ | ||
| NotFound | karma aloha | ||
| aloha | aloha has karma of -39. | ||
| NotFound | Uh... | ||
| atrodo | That's surprisingly low | ||
| dalek | TT #2032 closed by cotto++: Small patch to add get_effective_user_id to parrot | ||
| TT #2032: trac.parrot.org/parrot/ticket/2032 | |||
| cotto_work | Andy: what you need to do is name the 2.0 series "ack++" | ||
| atrodo | karma purl | ||
| aloha | purl has karma of 0. | ||
| whiteknight | when aloha reaches karma of -1000, I say we abandon it | ||
| ...which means aloha is officially in the race with msvc | 19:38 | ||
| tadzik | aloha++ # I quite like you! | ||
| aloha | tadzik: Thanks! | ||
| NotFound | ack Enterprise Edition | ||
| tadzik | regexes with CamelCase | ||
| Andy | No, it'll be MyAck | ||
| no, wiat! | |||
| aCk! | |||
| NotFound | Social ack | ||
| tadzik | /o\\ | ||
| Andy | ack --like | 19:39 | |
| "Here are other command-line tools people who liked ack liked." | |||
| whiteknight | iAck | ||
| tadzik | EnterpriseGrep | ||
| whiteknight | ... /me just got sued by Apple | 19:40 | |
| tadzik | iii! # ayayay! | ||
| NotFound | I've been thinking about developing a technology called 'diot' and wait for an Apple version: the iDiot. | 19:41 | |
|
19:41
hercynium joined
|
|||
| plobsing | yAck perfect for all your yak shaving needs | 19:41 | |
| whiteknight | could name it something more obvious. searchforshit | 19:42 | |
| "searchforshit -i -a namespace" | |||
| NotFound | For clean and obvious names, ask plobsing ;) | ||
| Andy | ack 2.0 will have no -a flag. | 19:43 | |
| whiteknight | I basically have to use -a for every invocation of ack | 19:44 | |
| because none of the files I care about are included in results by default | |||
| and I can't be bothered to learn how to change the configurations | |||
| Andy | That's why ack will have no -a flag. | ||
| NotFound | $ cat .ackrc | ||
| --type-set=winxed=.winxed | |||
| whiteknight | I can't be bothered to do a lot of things. it's a personality flaw | ||
| plobsing | I really wish I could get "--all, but --no-cc" sometimes | ||
| Andy | plobsing: With ack 2.0 you will | 19:45 | |
| because there will be no --all | |||
| blueparen.com/node/5 | |||
| ack's default behavior will change from only searching known filetypes to searching any file that Perl identifies as being text. It's the entire reason I'm calling it 2.0, because it's such a radical change. | |||
| NotFound | I was getting bizarres reports about power source disconnected in my laptop, and finally I've discovered I was using the one for the tablet instead. Is a miracle that it even worked. | 19:58 | |
| BTW, after the last upgrade the Folio 100 is pretty good. | 20:01 | ||
| cotto_work | Andy: nice. I have acka aliased to ack -a and usually use that | 20:06 | |
|
20:11
zby_home left
|
|||
| particle | add -w to it and call it wacka | 20:14 | |
| wacka wacka wacka | 20:15 | ||
| mikehh | #ps time | 20:30 | |
|
20:41
theory left,
theory joined
|
|||
| whiteknight | I would like to use that select PMC to start work on that IRC library I was planning | 20:43 | |
| cotto_work | whiteknight: ww? | 20:44 | |
| whiteknight | ww? | ||
| cotto_work | wrong window | ||
| whiteknight | no. it didn't belong in #ps | ||
| cotto_work | ok | 20:46 | |
|
20:54
fperrad left
21:06
M_o_C joined
|
|||
| cotto_work | Util: removing that while loop results in failures in 3 files: t/pmc/exception.t, t/pmc/exceptionhandler.t and t/pmc/socket_ipv6.t | 21:17 | |
| Util | cotto_work: thanks! | ||
| cotto_work | I'm surprised. I'd expect a lot of failures or none. | 21:18 | |
| Util: do you mind digging around to see why those happen? | |||
| Util | exception{,handler}.t is where I got failures earlier, but I was mixing two threads of development, and had not isolated the failures yet | ||
| cotto_work: I already plan to :) | 21:19 | ||
| NotFound | cotto_work: there aren't much test of inheriting from PMC because it never worked really well. | ||
| cotto_work | Util: great | ||
| NotFound: I'm shocked | |||
| NotFound | Take a look at the GET_ATTR magic and you'll be less (or maybe more) shocked. | 21:21 | |
|
21:26
whiteknight left,
kthakore joined
21:30
plobsing left
21:32
M_o_C left
|
|||
| cotto_work | NotFound: that's the joy of trying to unify C and PIR | 21:40 | |
| bacek: what are your thoughts on how opsc should deal with C types with a non-C target language? | 21:43 | ||
| NotFound | I think that a better solution may need some sort of reference PMC | ||
| mj41 | thinking about new parrot-meta git repository with files like taptinder.json and content e.g. "my-branchA : buil, test", smolder.yaml "some-branchB", jitterbug.json, isparrotfastyet.conf, .... | 21:52 | |
|
21:53
plobsing joined
|
|||
| atrodo | mj41> That's about what I was thinking as well | 21:53 | |
|
21:56
donpdonp left
|
|||
| mj41 | atrodo: Ok. It shoul be easy to add TapTinder support for this. Also we can use after commit github hooks to make it "online". | 21:58 | |
| atrodo | mj41> oh, that's a really good idea | 21:59 | |
| cotto_work | aloha: see worr | 22:03 | |
| aloha: clock? | |||
| aloha | cotto_work: LAX: Tue, 14:03 PST / CHI: Tue, 16:03 CST / NYC: Tue, 17:03 EST / UTC: Tue, 22:03 UTC / LON: Tue, 22:03 GMT / BER: Tue, 23:03 CET / TOK: Wed, 07:03 JST / SYD: Wed, 09:03 EST | ||
| cotto_work | aloha: seen worr | ||
| aloha | cotto_work: worr was last seen in #parrot 5 days 7 hours ago joining the channel. | ||
| mj41 | 23:03 Prague .... need some sleep | 22:04 | |
| jnthn | mj41: dobru noc :) | 22:05 | |
| tadzik | oh, same here :) | 22:06 | |
| cotto_work | 2300? You've got a good 3-4 productive hours left! | 22:07 | |
|
22:08
dmalcolm left
|
|||
| mj41 | jnthn: vdaka | 22:08 | |
|
22:19
rurban_ joined
22:22
rurban left,
rurban_ is now known as rurban
|
|||
| cotto_work | chromatic++ for weaponizing sarcasm | 22:23 | |
| dalek | rrot: f965a97 | util++ | t/op/exit.t: Add `end` to pasm in op/exit.t; fixes incorrect TODO |
22:39 | |
| rrot: 127bc95 | util++ | t/op/exit.t: Un-TODO op/exit.t |
|||
| bacek_at_work | ~~ | 22:42 | |
| cotto, (opsc) I would like to reduce current "ops language". Remove #ifdef and #define at least. Reduce types to INSP and "opaque pointers". Etc. | 22:43 | ||
| cotto_work | bacek_at_work: this would be to make it easier to target other languages? | 22:51 | |
| If it'd been updating opsc, my laziness would dictate shrinking the subset of C used by ops first and then making ospc smarter about it. | 22:52 | ||
| Coke | Andy: ping. | 22:53 | |
| Andy | yessir? | ||
| cotto_work | s/it'd/I'd/ | 22:54 | |
| Coke | Andy: is rakudo.org still you? | 22:55 | |
| Andy | yes | 22:56 | |
| awwww | |||
| Coke | danke. | ||
| Andy | all good | ||
| Coke: AIM is even better | 22:57 | ||
| Util | cotto_work , bacek_at_work: In the core_ops.c that is generated by opsc_full_parse, why have the bodies of the ops changed from {...} to {{...}} ? | 23:03 | |
|
23:03
plobsing left
|
|||
| cotto_work | Util: probably a minor bug | 23:05 | |
| bacek_at_work | Util, minor "bug". | 23:06 | |
| cotto_work | Util: is it merely a minor annoyance or will it result in the compiler generating poorer code? | ||
| bacek_at_work | cotto, yes, we should simplify ops first before changing opsc | ||
| Util | The annoyance is that `git diff`|`git show` fills my eyes with trivia, hiding any actual changes. | 23:07 | |
| cotto_work | Util: should be a simple fix | ||
| Util | (missing) indentation is causing the same issue. | 23:08 | |
| I am poking at it now. | |||
| bacek_at_work | Util, feel free to implement "pretty-printing" in opsc :) | ||
| Util | thanks, will-do | ||
|
23:08
plobsing joined
|
|||
| cotto_work | Generated code can be ugly, but it doesn't have to be. | 23:09 | |
| bacek_at_work | cotto, I would like to refactor .to_c slightly. | 23:10 | |
| like moving actual $chunk to first arg, passing some "$context" instead of transformation. | |||
| ... instead of $trans | |||
| Then we can implement pretty-printing for ops | 23:11 | ||
| without big hassle | |||
|
23:20
lucian_ joined
23:22
plobsing left
23:23
lucian left
23:30
kid51 joined
|
|||
| cotto_work | bacek_at_work: | 23:32 | |
| bacek_at_work: I'll need to dig into the code a bit to figure out what you're talking about, but I like the idea. | |||
|
23:33
jsut joined
|
|||
| bacek_at_work | cotto, Ops::Op.to_c methods. | 23:33 | |
| Coke tries out opsc branch on partcl* | 23:34 | ||
| moderator | Parrot 3.1.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: Get GSoC ideas on wiki. Merge/review tewk/select. Evaluate attribute_defs, rip out in branch | 23:36 | |
|
23:37
jsut_ left
23:39
whiteknight joined
|
|||
| dalek | TT #1159 closed by jkeenan++: make distcheck target | 23:45 | |
| TT #1159: trac.parrot.org/parrot/ticket/1159 | |||
| Coke | I missed the chance to say this at parrotsketch but here's a stretch goal: fix any tcl related bugs (most recently reported ones first) | 23:51 | |
| cotto_work | "Be Nice to Coke Week" | 23:52 | |
|
23:52
lucian_ left
23:53
lucian joined
|
|||
| dalek | rrot: a30e6d2 | petdance++ | src/call/args.c: fixing the places we pass around const arrays of pcc_funcs_ptr. |
23:56 | |
| rrot: b985dc5 | petdance++ | src/call/ (2 files): fix where we pass const arrays of reg counts. Added PARROT_X decorators to some statics. |
|||