|
Parrot 0.6.0 "P&P" released | Please mentor for SoC | parrotcode.org/ | YAPC::NA talks deadline is Mar 31 | tinyurl.com/2pmnlq Set by moderator on 18 March 2008. |
|||
| Infinoid doesn't help kid51 with that | 00:00 | ||
| wknight8111 | urg. I'm getting the error "Lexical '0' not found" for every single statement. | 00:02 | |
| Infinoid | is it looking for a lexical variable of that name? | 00:03 | |
| wknight8111 | most of the statements don't have any variables at all | ||
| "5+4" -> "Lexical '0' not found" | |||
| Infinoid | that's in raduko? | ||
| wknight8111 | no, in an octave port that I'm working on | 00:04 | |
| I am going to find some spare time this week and hack in some better error messages into PCT | 00:06 | ||
| Infinoid | is --target=past implemented on the perl6 layer, or on the parrot layer? | ||
| 'coz it sounds really useful here. | |||
| wknight8111 | i think i fixed that last error. I'm getting a new error now | 00:07 | |
| new = good | |||
| Infinoid | heh :) | ||
| it is either progress or congress, depending on whether you've moved on to the next one or introduced an earlier one :) | |||
| wknight8111 | right. either way i've narrowed it down | 00:08 | |
| Coke | (exit getting caught) see languages/tclsh/src/tclsh.pir line 181 for how to handle that. | 00:13 | |
| wknight8111 | okay, thanks | ||
| Coke | (Those macros are defined in .../src/macros.pir) | ||
| chromatic | Infinoid, it's in HLLCompiler. | 00:14 | |
|
00:15
slightlyoff joined
00:36
spez left
|
|||
| cotto_home | is INTVAL_SIZE a good way to check if I'm on a 64-bit system (in C code)? | 00:40 | |
| Infinoid | cotto_home: looks good to me, it's defined to 8 on my x86-64 linux box | 00:42 | |
| cotto_home | thanks | 00:43 | |
|
00:59
petdance joined
01:02
particl1 joined
01:04
slightlyoff_ joined
01:34
grim_fandango joined
01:49
petdance joined
|
|||
| Coke | Anyone here have a comment as to whether or not languages should be adhere to parrot's "try not to use non-core/bundled" modules credo? Seems like they should be able to set more requirements (and have) than parrot itself. (RT #51916) | 01:56 | |
| Infinoid | my own priority would be to maximize code reuse and minimize developer work, therefore, anything on CPAN is fair game. But I am neither a core developer, nor a languages guy. | 01:58 | |
| kid51 | I think they'll have to go into Bundle::Parrot ... which I actually know little about. | 02:05 | |
| Limbic_Region | Coke - get p5 on parrot working and then it is all fair game :-D | ||
|
02:06
peepsalot joined
|
|||
| kid51 | But who exactly is working on "p5 on parrot"? | 02:06 | |
| Limbic_Region | well, the ponie project is dead as a door nail AFAIK | 02:07 | |
| but nicholas still seems to make p5 core changes that seem to be in preparation for p5 on parrot | |||
| mostly, I was speaking tongue in cheek (note the smiley) | |||
| and on that note, I am out - TTFN | 02:08 | ||
| Coke | kid51: I have commit privs on Bundle::Parrot : it's just a Bundle. | 02:13 | |
| Bundle? | |||
| purl | hmmm... Bundle is just a directory. | ||
| Coke | bundle is also a special kind of CPAN thingee that just says "install these other modules" | ||
| purl | okay, Coke. | ||
| Coke | Someone with some C-fu could probably apply #46597 | ||
| kid51 | Then could you add Parse::Yapp to Bundle::Parrot? | 02:14 | |
|
02:15
particl2 joined
|
|||
| Coke | I could. I hesitate to add stuff that parrot itself doesn't require. | 02:15 | |
| I'm not refusing, just hesitating. =-) | |||
| Infinoid looks at #46597 | |||
| kid51 | Well, then do we need a Bundle::Parrot::Languages ? | 02:16 | |
| Coke | Iunno. I suspect I should just give up and add it to B:P; can you respond to the ticket to the list and ask for feedback? See if anyone other than I has any concerns? | 02:17 | |
| Coke triages a bunch of the new tickets and adds [TAG]s | 02:21 | ||
| Coke wonders if rt.perl.org just fell off the map | 02:33 | ||
| Infinoid | works great here | 02:34 | |
| Infinoid resolves RT#46597 | |||
| svnbotl | r26550 | infinoid++ | trunk: | 02:37 | |
| : [raduko] reformat slightly to pass t/codingstd/cuddled_else.t | |||
| r26551 | infinoid++ | trunk: | |||
| : [src] "indexes" argument to Parrot_init_arg_indexes_and_sig_pmc should be NULLOK. | |||
| : This patch inspired by RT #46597. bgeron++ | |||
|
02:47
contingencyplan joined
|
|||
| Coke | Infinoid: danke. | 02:48 | |
| svnbotl | r26552 | coke++ | trunk: | 03:14 | |
| : [docs] | |||
| : Fix typo & remove "This section intentionally left blank." | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26552 | |||
| r26553 | coke++ | trunk: | 03:41 | ||
| : [DEPRECATED] | |||
| : The pmc_namespace vtable was deprecated, the get_namespace vtable was | |||
| : its replacement: Here's a rename which resolves both tickets | |||
| : (now merged into RT#48144). | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26553 | |||
| chromatic | Hey Coke, want to profile some PIR? | 03:44 | |
| Coke | Sure. | ||
| chromatic | Okay, let me mail my patch and instructions to the list. | 03:47 | |
|
03:49
Auzon joined
|
|||
| chromatic | There you go. | 03:50 | |
|
04:00
svnbotl joined
|
|||
| Coke | chromatic: not seeing it. will probably have to wait until tomorrow anyway. | 04:12 | |
| Coke has fun ripping things out. | |||
|
04:15
AndyA joined
04:17
ewilhelm left
|
|||
| svnbotl | r26559 | coke++ | trunk: | 04:18 | |
| : [DEPRECATED] | |||
| : remote int variants of getattribute/setattribute opcodes that were already | |||
| : throwing exceptions anyway. (RT #48729) | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26559 | |||
| chromatic | It should be in the list archives now. | 04:20 | |
|
04:29
Ozama joined
|
|||
| Ozama | alguem ae tem bd | 04:30 | |
| ? | |||
| svnbotl | r26560 | coke++ | trunk: | 04:37 | |
| : [DEPRECATED] | |||
| : use less qw(.); | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26560 | |||
| Coke | Ozama: I'm sorry, I don't recognize that language. | 04:38 | |
| Coke guesses portuguese, and we do have a native speaker, but I'm not sure he's about. | 04:39 | ||
| -> | 04:41 | ||
| svnbotl | r26561 | coke++ | trunk: | 04:44 | |
| : [DEPRECATED] [pynie] | |||
| : use less qw(.); | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26561 | |||
|
05:31
skv_ joined
07:09
Ademan joined
|
|||
| svnbotl | r26562 | chromatic++ | trunk: | 07:19 | |
| : [PGE] Reordered generated code to bail out of an obviously-failing match before | |||
| : creating PMCs to store results for successful results. This is a minor | |||
| : optimization. | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26562 | |||
|
07:28
uniejo joined
08:05
iblechbot joined
08:37
slightlyoff joined
08:51
askie joined
09:00
kj joined
09:18
Dave joined
10:04
ruoso joined
10:15
iblechbot joined
10:41
ask joined
10:59
mire joined
11:01
skids joined
11:08
skids joined
11:13
particl1 joined
|
|||
| svnbotl | r26563 | kjs++ | trunk: | 11:26 | |
| : [nqp] update bootstrap/actions.pm a bit. | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26563 | |||
|
11:49
teknomunk joined
11:55
kid51 joined
|
|||
| svnbotl | r26564 | kjs++ | trunk: | 11:57 | |
| : [nqp] add compiler driver for bootstrap version of nqp.pir | |||
| : update manifest, which also includes Whatever class for perl6 which wasn't added apparently. | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26564 | |||
|
12:14
IllvilJa joined
12:19
silug joined
|
|||
| svnbotl | r26565 | kjs++ | trunk: | 12:29 | |
| : [nqp] update makefile with a "boot" target, which builds the bootstrap version of nqp. | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26565 | |||
| r26566 | kjs++ | trunk: | 12:35 | ||
| : [nqp] fix paths for .includes in bootstrap compiler driver. | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26566 | |||
|
12:42
teknomunk joined
|
|||
| svnbotl | r26567 | kjs++ | trunk: | 12:48 | |
| : [nqp][bootstrap] various updates | |||
| : add an .include for the builtins. | |||
| : update the TODO: 1 thing has been done. | |||
| : fix a thing in actions.pm | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26567 | |||
|
12:49
slightlyoff joined
13:02
mire joined
|
|||
| Coke | kid51++ | 13:11 | |
|
13:35
teknomunk joined
|
|||
| kj | that's weird. blocktype("sub") in NQP's Actions.pir | 13:36 | |
| i thought only "immediate" and "declaration" were allowed. | |||
| or valid, at least | |||
|
13:39
teknomunk joined
|
|||
| svnbotl | r26568 | kjs++ | trunk: | 13:44 | |
| : [nqp]bootstrap/actions.pm | |||
| : fix for-loop | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26568 | 13:45 | ||
| kj | woohoo!! npq's bootstrapped version is running pretty nicely :-) | ||
| jonathan | Nice work! | 13:47 | |
| kj | I think I just compiled Squaak's action file | ||
| with nqp, implemented in nqp | |||
| Coke wonders how this boostrap works. | 13:51 | ||
| kj | except that it doesn't work yet.. oh well. | ||
| Coke | ... nice timing. | ||
| kj | oh not sure if it's actually a bootstrap... | ||
| ehm | |||
| the NQP actions file, Actions.pir, now has an actions file written in NQP | |||
| so the code generator of the NQP compiler is written in NQP. | 13:52 | ||
| Coke | ... and how do you run that? with the non-bootstrapped version that's written in pir? | ||
| kj | it results in a .pbc file | ||
| in the end | |||
| so that can be run by parrot | |||
| Coke | yes, but it can't be turtles all the way down. | ||
| kj | so instead of running parrot nqp.pbc, I now run parrot bootstrap/nqp.pbc | ||
| which uses the same parser | 13:53 | ||
| but a different actions file, namely one written in NQP. | |||
| particl1 pats his turtle's shell | 13:55 | ||
| minor nit... i prefer one [] for all tags in a commit message | 13:56 | ||
| eg: [nqp bootstrap] over [nqp][bootstrap] | |||
| kj | ok | ||
| particl1 | i'd love to see one nqp actions file as canon, with a script generating the other | 13:57 | |
| kj | yeah. I'm a bit confused now. | ||
| particl1 | maybe something that uncomments all comments starting with '## ', and comments all lines without /^#/ | 13:58 | |
| 'cept blanks, of course | |||
| and a full regression suite to make sure both behave the same | |||
| kj | you mean some kind of comment flipper? | ||
| particl1 | yep | ||
| so the .pir file can be used to generate the .pm | 13:59 | ||
| kj | good idea. I'm not inspecting the generated code of both versions. They're similar, but somehwat different | ||
| some :viviself stuff seems to be different | |||
| particl1 | that's a slippery slope. | 14:00 | |
| a test suite that runs pir vs pm would be nice | |||
| Coke: what time is the call today, edt time? | 14:01 | ||
| Coke | particl1: I do NOT prefer a single [foo bar] over [foo][bar]. Makes it easier to find your tags for foo or bar. | ||
| I admit I still don't understand how the bootstrap is not running PIR. =-) | 14:02 | ||
| particl1 | /\\[.*\\bfoo\\b.*\\]/ | ||
| that regex works for either style | 14:03 | ||
| kj | Coke: I'm confused myself :-S | ||
| So, what happens is, the Actions file for the current NQP compiler is reimplemented using NQP | |||
| Coke | Then the style we use doesn't matter, does it? | ||
| particl1 | ][ hurts my eyes. ymmv | 14:04 | |
| kj | If you open that file, you'll see the NQP equivalent of the cuurrent implementation. What I did was flip the comments, use the NQP version (fix it here and there) and comment the PIR version | ||
| then that NQP file is compiled by the current NQP compiler | |||
| Coke | so this is like the second stage of the gcc from-scratch compilation process? | 14:05 | |
| kj | and after adding a new main file for the new version which loads this NQP-generated PIR actions file | ||
| i don't know gcc compilation process | |||
| ... the new nqp is generated | |||
| Coke | you use some other compiler to build gcc from source. (phase 1) you then use that built version of gcc to build gcc from source. | ||
| particl1 | kj: "then that NQP file is compiled by the current NQP compiler" -- that's where the pir version is used | ||
| that's the bootstrap part | |||
| kj | right | ||
| so, you build a c compiler using assembly. then using that version, you compile a c compielr written in C, which you compile with the assembly-version | 14:06 | ||
| particl1 | we could use nqp to build parrot after miniparrot. wanna try :) | ||
| kj | eh, parrot is not written in nqp... what do you mean ? :-) | 14:07 | |
| particl1 | instead of using perl 5 | ||
| kj | ah | ||
| nice SoC project ;-) | |||
| particl1 | can't wait to build nqp later today. i'd do it now, but i need the power for $work | 14:09 | |
| PerlJam | Coke: so ... we'll use parrot to compile the c99 compiler and then use *that* to compile parrot? :) | 14:11 | |
| particl1 | okay... i need to profile some mod_perl code. any favorite modules i should look at? | ||
| kj | ah I see what's wrong, I think. I just forgot a whole action method. woops. | 14:15 | |
| particl1 | make -j test # on perl-5.10.0 is a huge time saver | 14:16 | |
| Coke | can someone with privs on feather upgrade ack to svn-latest? | 14:18 | |
| particl1 | you could build your own. those with privs include juerd, timtoady, moritz, diakopter... don't know any others | 14:21 | |
| Andy | or put it in your ~/bin :-) | ||
| particl1 tempts fate with make -j install | 14:28 | ||
| Coke | ... I know I could have my own. | ||
| But thanks. =-) | 14:29 | ||
| particl1 | hey, i pinged those involved. that's what counts | ||
|
14:31
rdice joined
14:32
Theory joined
|
|||
| particl1 | anybody seen tewk lately? | 14:32 | |
| Coke | seen tewk? | 14:33 | |
| purl | tewk was last seen on #parrot 5 days and 21 hours ago, saying: But I'd be open to other core hacking ideas that need to get done this summer. Particle doesn't seem to be around right now. [Mar 20 10:06:47 2008] | ||
| Coke | Didn't we have a ticket at one point to eliminate the configure tests from "make test" ? | 14:34 | |
| purl, 46+755+96 | 14:36 | ||
| purl | 897 | ||
| particl1 | i'm not sure if we had a ticket. we certainly had sentiment. | ||
| tewk | ping coke | 14:40 | |
| purl | I can't find coke in the DNS. | ||
| particl1 | hey there tewk | ||
| Coke | tewk: 10:32 < particl1> anybody seen tewk lately? | ||
| tewk | I got your email. I've been busy. I'm going to make some changes to the proposal today. I'll ping you when they are ready. | 14:41 | |
| particl1 | excellent. thanks. how's the family? | ||
| tewk | Busy, but fun. | ||
| Does the jit of nci on x86 work? I saw some minimal code but don't know if it is used, I'm guessing not. | 14:42 | ||
| diakopter | Coke: where's a tgz of awk svn-latest | ||
| ack I mean :) | 14:43 | ||
| particl1 | tewk: i'm not sure. what's the best way to check? bulid jitted parrot and test... what? | ||
| tewk | How serious are people about using llvm for parrot jit? | 14:44 | |
| particl1 | diakopter: search for App::Ack on cpan | ||
| should be 1.78 | |||
| tewk | I'll test the nci jit and see if it works at all, I was just seeing if anyone had any first hand knowledge. | ||
| diakopter | svn export ack.googlecode.com/svn/trunk/ ack | 14:45 | |
| particl1 | that works too | 14:46 | |
| diakopter | Coke: ping | ||
| Coke: I installed it to /usr/local/bin | 14:47 | ||
| Andy | no | ||
| particl1 | wtf? | ||
| Andy | no no | ||
| diakopter | no no? | ||
| Andy | ack-standalone | ||
| GET ack.googlecode.com/svn/trunk/ack-standalone > ack | |||
| diakopter | ok... | ||
| Coke | /usr/bin/ack -v dies atm. | 14:48 | |
| Coke waits. | |||
| particl1 | in my defense, i expected diakopter would build/test/install ack after exporting the repo :) | 14:49 | |
|
14:49
cognominal joined
|
|||
| Andy | ah | 14:49 | |
| diakopter | Coke: try now? | 14:50 | |
| 1;1 root@feather:~# ack --version | 14:51 | ||
| ack 1.78_01 | |||
| Coke | ack --version | 14:53 | |
| -bash: /usr/local/bin/ack: No such file or directory | |||
| $ which ack | |||
| /usr/bin/ack | |||
| diakopter | heh | ||
| where do you want it? /usr/local/bin or /usr/bin | 14:54 | ||
| Coke | this means i can't just type "ack". | ||
| I'm not *running* /usr/local/bin/ack; I'm running "ack", and which ack tells me that is /usr/bin/ack. but /usr/bin/ack seems to work. | |||
| so, I'm confused. | 14:55 | ||
| diakopter | restart the shell? I don't know why it's still looking for the (removed) /usr/bin/local/ack | ||
| I mean /usr/local/bin/ack | |||
| Coke | ah. "hash -r" | 14:56 | |
| what the (*&#$ is the point of 'which' if the shell is going to lie about it? =-) | |||
| diakopter++ | |||
| diakopter | unless you had an alias set up or something | 14:57 | |
| Andy | I'd also like to recommend: ACK_PAGER='less -R -m -N' | 15:00 | |
| particl1 | wuzzat do? | ||
| diakopter | less? | 15:03 | |
| purl | i heard less was more. | ||
| diakopter | :) | ||
| particl1 | ok... man says it allows color output, includes line numbers, and prompts with % through file | 15:04 | |
| Andy | Just try it. | 15:05 | |
| GO ON MAN JUST TRY IT | |||
| particl1 wonders if his win32 port of less supports that | |||
| course, it won't support -R | |||
| Coke tries it and fails to like it. | 15:17 | ||
| Andy | waaaaah | 15:19 | |
| particl1 | is there ack --pager? | ||
| Andy | yes | ||
| of course. | |||
| purl | Indubitably. | ||
| Coke | how do you override the pager setting? | 15:20 | |
| Andy | The way that logically makes sense. | ||
| The least surprising way. | 15:21 | ||
| --nopager | |||
| Coke | We've discussed this in the past: your logic and my logic don't seem to mesh. =-) | ||
|
15:22
peeps[work] joined
|
|||
| Coke | Running this through a pager for some searches seems to make it take forever to display output (either with ACK_PAGER or even |cat). meh. | 15:22 | |
| Andy | yeah, I'm thinking it needs to unbuffer output. | ||
| I need a test that verfiies that ack --help shows all the commands possible. | 15:24 | ||
| so I can't forget to leave off --pager next time. | |||
| Like I did this time. | |||
| Coke wonders if it is unsurprisingly logical that ack --v really means ack -v | 15:25 | ||
| particl1 | -> #ack | 15:27 | |
| Andy | PLEASE KEEP THE CHANNELS PURE | 15:28 | |
| Coke | please don't shout. | ||
| Andy | ALSO DON'T SHOUT | 15:29 | |
| diakopter | Infinoid: to answer your question, that became and is still a casualty of priorities and attention. | 15:31 | |
| Infinoid | is your work in progress available somewhere? I might take it and run with it, it's an interesting project :) | ||
| particl1 goes offline to look for lunch & | 15:33 | ||
| pmichaud | (nqp "bootstrap") I really prefer that we use the term "self-hosting" as opposed to "bootstrap" here | 15:36 | |
| "bootstrap" implies that we're throwing away the PIR translation... and I'm not sure I'm ready to do that yet | |||
| in particular, even though the nqp-version of actions may be semantically equivalent to the pir version, it also may have a lot of overhead that is best avoided until we get some optimizations in place | 15:37 | ||
| otoh, if there's a strong sentiment that PIR is such a horrible evil that we need to be bootstrapping everything to excise it, then we can talk | 15:38 | ||
| Coke_offline | I am unaware of such a sentiment. | 15:40 | |
| -> | |||
| pmichaud | oh, I know it exists | ||
| lots of people seem to be in a rush to move things off of PIR asap | |||
| PerlJam | crazy people. | 15:45 | |
| purl | crazy people are the ones who flew planes into buildings or destructors | ||
| cognominal | I have the feeling that once enough perl6 will be implemented, self-hosting will be a big win feature wise | ||
| PerlJam | cognominal: sure ... but we're not there yet :) | 15:46 | |
| pmichaud | cognominal: why? | ||
| PerlJam | pm: because we can do more with less and it's all perl 6 | ||
| (IMHO) | |||
| pm: btw, welcome back : ) | 15:47 | ||
| cognominal | also, it is a good thing that people see "real" code written in Perl 6 | ||
| PerlJam rubs the vanishing cream off of his nose ... :-) | |||
| cognominal | pmichaud, parrotwise (versus pct), what is still missing to support perl6? | 15:49 | |
| pmichaud | when we say "self-hosting"... what part/feature of self-hosting is the big win? | ||
| does "self-hosting" mean that _all_ of Rakudo is written in Perl 6? | |||
| diakopter | Infinoid: when I said I was working on it, I meant working on it *in my mind*! | 15:50 | |
| ;) | |||
| Infinoid | ooo | 15:51 | |
| Infinoid does an svn checkout of diakopter's mind | |||
| pmichaud | cognominal: I can't think of any major features off the top of my head that are missing. concurrency/threading are probably bubbling up, but we're a ways from needing that | ||
| diakopter | I did update the botnix instance on feather to the latest svn | ||
| Infinoid | right, I'll figure out botnix and see what I can come up with, thanks :) | ||
| pmichaud | there are still some issues with lexical handling that need to be fleshed out (or worked around) | 15:52 | |
| cognominal | pmichaud, how hard it is to get pct hll namespace aware? | 15:54 | |
| pmichaud | it's going to be a bit of work | ||
| need to refactor protoobject handling | |||
| for now it's just easier to work in the parrot hll namespace | 15:55 | ||
| cognominal | I tried naively to make it stick .HLL "perl6" "" in the beginning of the pir code but I get strange messages | ||
| pmichaud | right, adding .HLL "perl6" means that the PAST protoobjects can't be located | ||
| because they're in the parrot hll namespace while the action methods are running in the perl6 hll namespace | 15:56 | ||
|
15:56
Theory joined
|
|||
| pmichaud | so, we also need to import those protoobjects into the perl6 namespace | 15:56 | |
| PCT should probably provide a helper method to do that | |||
| cognominal | there is an export_to described in the namespace ppd | ||
| pmichaud | I think that export_to is a bit out of date | 15:57 | |
| I'm not even sure it's implemented yet | |||
| cognominal | part of it if I trust the tests | ||
| pmichaud | I've also commented in the past that I think those deserve a redesign, since that pdd was created before we had the PMCMETHOD capabilities | 15:58 | |
| now that we have PMCMETHODS, we can make a much saner interface | |||
| (sorry, PCCMETHOD. or something like that) | |||
| cognominal | with Perl6 having its onw namespace, the Hash class and the Hash pmc will not collide anymore? | ||
| pmichaud | they will still collide | ||
| because class namespaces are separate from the hll namespaces | |||
| that's another bug that Parrot needs to address | |||
|
15:59
gryphon joined
|
|||
| pmichaud | but we can work around that by introducing a Perl6Hash class | 15:59 | |
| cognominal | it seems there is long and short names, but I don't understand how it works. | ||
| jonathan | I think that's only because we haven't thrown away the class registry yet. | ||
| pmichaud | the trick to figuring out how Rakudo (and PCT and NQP) works is to remember that they tend to avoid Parrot classes altogether | 16:00 | |
| at least for names | |||
| jonathan | If we can get PMC class lookups all going via namespaces just the same as we have PIR class ones doing, I guess that problem goes away. | ||
| pmichaud | instead everything happens via their protoobjects | ||
| cognominal | now, I am not running blind in the walls. I am able to see what are the problems. not yet to fix them. | ||
| pmichaud | so there's nothing preventing Rakudo from having a 'Hash' protoobject, that is an instance of Perl6Hash but appears as 'Hash' in every other respect | 16:01 | |
| jonathan | Though it means if you want a Parrot PMC, like 'Hash', you'd have to make sure you looked in the parrot namespace for it. Which is messier. | ||
| pmichaud | in Rakudo? No, we'd have a Parrot::Hash protoobject that gives us an instance of the Parrot PMC | 16:02 | |
| or otherwise maps correctly to the PMC Hash as opposed to the Perl6 Hash | |||
| oops, I misread jonathan's comment. You're correct, jonathan | |||
| having all PMC class lookups via namespaces make things like $P0 = new 'Integer' a lot more tricky | 16:03 | ||
| jonathan | Right. | ||
| pmichaud | which is also why the protoobject approach makes a _lot_ of sense :-) | ||
| purl | okay, pmichaud. | ||
| jonathan | And we don't have any way, in the key syntax, to distinguish between lookups from HLL root and real root. | ||
| pmichaud | Right. But that's where doing things like exporting/importing can give us a win | 16:04 | |
| jonathan | Yup. | ||
| pmichaud | for example, if we have a way to import the PMC classname into a HLL namespace, then we don't have to worry about looking things up directly in the parrot hll namespace | ||
| jonathan | Right. | 16:05 | |
| pmichaud | and we can say that $P0 = new 'Integer' always refers to 'Integer' in the HLL, and never to Parrot's Integer (unless it's been mapped that way) | ||
| jonathan | That would make a lot of sense. | ||
| pmichaud | but protoobjects give us much the same capabilities, at the cost of an extra step | ||
| thus | |||
| $P0 = get_hll_global 'Integer'; $P0 = $P0.new(); | 16:06 | ||
| jonathan | Well, we need protoobjects for Perl 6 stuff anyway. | ||
| pmichaud | of course, the advantage to the $P0.new() approach is that we can also send initialization information to the object at the same time we create it | 16:07 | |
| anyway, I need lunch. bbiaw | |||
| jonathan | Yup, got Spanish lesson here too. | ||
| bbl | |||
| pmichaud | adios | ||
| hasta lluegos (or something like that) | 16:08 | ||
| PerlJam | one ell | 16:09 | |
| and no ess | |||
|
16:30
sjansen joined
16:34
kid51 joined
16:40
particl1 joined
|
|||
| particl1 | hi from nypl | 16:41 | |
| kid51 | So what exactly are you up to in Gotham? | 16:45 | |
| particl1 | wife has a conference | 16:46 | |
| i'm tagging along for a scenery change | |||
| kid51 | Well, I'd arrange an emergency social meeting of ny.pm for you, but as you know, I'm out of the country. | ||
| particl1 | too bad i didn't consider organizing an emergency social ny.pm meeting | ||
| yep, i see you're in the 51st state | 16:47 | ||
| kid51 | You could always email dha. When jmcadams was here he got a meeting on one day's notice. | ||
| Benefit of meeting (besides beer): It would mean someone besides me could advocate for Parrot in NYC. | |||
| particl1 | yeah. my nights are already double-booked, though | 16:48 | |
| i have two dinners tonight | |||
| kid51 | You'll have to hit the gym tomorrow, then. | 16:49 | |
| particl1 | good idea | 16:52 | |
| purl | particl1: Good Idea: Whistling while you work. Bad Idea: Whistling while you eat. | ||
| particl1 | grr can't get the free wifi to work at the library | ||
|
17:03
ruz joined
17:04
Theory joined
|
|||
| Coke | particl1: I would suggest posting a blog entry on parrotblog regarding SOC | 17:04 | |
| particl1 | advertising? | 17:07 | |
| purl | Contempt, rather than celebration, is the proper response to advertising and the system that makes it possible. | ||
|
17:08
Theory joined
|
|||
| Coke | yes, in re: ambs recent email. | 17:09 | |
| I can then put a pointer to that up on pc.o | 17:11 | ||
| particl1 | yeah, i should blog about it. i'll try to get to it in a few hours | 17:18 | |
| tewk | particl1: Made a couple of minor changes to SoC application. | 17:19 | |
|
17:20
spez joined
|
|||
| particl1 | tewk: i'll take a look today, thanks! | 17:24 | |
|
17:27
spez left
17:37
darbelo joined
|
|||
| Coke | pmichaud: regarding my email, I think this heads to a discussion that we need to have before 1.0: "what should be a opcode/runtime library/method/pmc/..." there's a lot of code scattered that could use a global organizational pass. | 18:06 | |
| do we need to have "concatenate" vtable entries, e.g. instead of just having that be a method? | |||
| particl1 | only aggregates get shift/unshift | 18:07 | |
| and possibly only list-like aggregates | |||
| this should be implemented by pmroles | |||
| Coke | particl1: eventually, sure. now everyone has them. | ||
| particl1 | "everyone has them" - what? | 18:08 | |
| Coke | every pmc has several unshift_ VTABLE variants. | ||
| grep unshift src/vtable.tbl | 18:09 | ||
| sorry, ack. =-) | |||
| particl1 | ah. | ||
| i'd better check the vtable pdd | |||
| Coke | that's pdd17, right? | 18:10 | |
| particl1 | yep, consolidated into pdd17 | 18:11 | |
| svnbotl | r26569 | pmichaud++ | trunk: | 18:13 | |
| : [past-pm]: | |||
| : * Remove deprecated past-pm from the "compilers" section of Parrot docs. | |||
| diff: parrotvm.org/svn/parrot/revision/?rev=26569 | |||
|
18:19
kid51 joined
|
|||
| kid51 | particle ping | 18:25 | |
| or particl1 ping | |||
| Coke sees he was not fast enough in redirecting that thread back onto RT. | 18:27 | ||
| particl1 | pong | 18:31 | |
| kid51 | The problem we're having on feather with the two postconfigure tests -- that's part of a general problem we're having when we try to require Parrot::Revision during testing. At least that's my diagnosis. | 18:32 | |
| 'cause when I try to run perl Configure.pl --test on feather for the very first time, I get the hang at t/configure/018-revision.t. | 18:33 | ||
| particl1 | this used to Just Work before you refactored to make it more testable | ||
| i'm not blaming, just noticing | |||
| kid51 | But the code wasn't being tested at all then. So it only Just Worked because it wasn't being tickled at all, except during Configure.pl itself. | 18:34 | |
| I think the underlying problem is that we've agreed to support 3 different version control clients. | 18:36 | ||
| And that Parrot::Revision is mandated to work one way before configuration and a different way after. | |||
| particl1 | i don't see that as a problem | ||
| kid51 | Yes, I know, but it's proven to be a maintenance nightmare. | 18:37 | |
| particl1 | i use three version control clients at $work | ||
| Infinoid | people are currently using 4 version control clients: svn, svk, git-svn, and git (without git-svn) | ||
| I fixed some stuff related to git-without-svn last week... seems someone's put up a public git mirror at repo.or.cz | |||
| Coke | if the tests are the only thing tickling the code.... | ||
| particl1 | it is indeed difficult to support. however, if someone is able to set up envs to test these, with smokes, then we're getting somewhere | 18:38 | |
| cognominal | I have renounced using svk for parrot weeks ago | ||
| I use svn | |||
| Coke | Honestly, I think saying "svn is what we support, you can roll your own elsewise" is not a terrible position. | ||
| in which case most of this support nightmare goes away. | 18:39 | ||
| s/nightmare/slight issue/ | |||
| kid51 | Coke++ | ||
| Infinoid | any reason why we don't do a check for the existence of $HOME/.svk before running svk? that'd sidestep the process-prompting-for-input issue | ||
| kid51 | ... but I know people would scream if we did that. | ||
| Infinoid | I wouldn't scream :) | ||
| Coke | Infinoid: That seems reasonable, so it'll never work. =-) | ||
| Coke 's passport shows up. | 18:40 | ||
| Infinoid | I use svn... git is really nice for offline work (better than svk, in my opinion), but not worth the hassle of figuring it out | ||
| particl1 | just because you have svk installed doesn't mean you're using it. | 18:41 | |
| it's a pita, for sure | |||
| Infinoid | agreed 110% | 18:42 | |
| I think I know how to fix up the svk stuff. it won't be perfect, but combined with a "use other SCMs at your own risk" blurb somewhere, I think it'll be allright | 18:43 | ||
| Coke | does svk always go into $HOME/.svk ? | ||
| Infinoid | I can check the svk sources to verify that | 18:44 | |
| way I see it, there are 4 cases. 1: svk isn't installed. 2: svk is installed but never used, this is the case where svk hangs. 3: svk is installed and used but doesn't know about the current repo. 4: svk is installed, used, and knows our version, grab the version in this case | 18:45 | ||
| I'm hoping "used" is as simple as ".svk exists in the current user's home directory" | 18:46 | ||
| particl1 | the two main questions are: "am i in a working copy?" and "what vc tool am i using?" | ||
| Infinoid | right. those are easy to answer for everything except svk | 18:47 | |
| kid51 | particl1: Where 'working copy' is the opposite of working from, say, a release tarball -- correct? | ||
| particl1 | isn't there a depotmap somewhere (or whatever it's called) | ||
| kid51: working copy is somewhere you can perform vc commands | 18:48 | ||
| so, not tarball or svn export | |||
| Infinoid | the "DEVELOPING" file doesn't exist in release tarballs, right? how about daily snapshot tarballs? | ||
| kid51 | Infinoid: Correct on the release tarballs | 18:49 | |
| kid51 knows nothing about daily snapshot tarballs | |||
| particl1 | DEVELOPING is missing from releases only | ||
| Infinoid checks | |||
| DEVELOPING exists in snapshots :( | |||
| kid51 | That's a PITA: YA variation to be maintained. | 18:50 | |
| particl1 | it's okay to say "i don't know what revision this is" | 18:51 | |
| and set it to zero. | |||
| kid51 | I already account for the presence/absence of DEVELOPING in the tests I've written for Parrot::Revision. | ||
| particl1 | yes. as long as you use that only to determine whether it's a release tarball vs anything else that's fine | ||
| Infinoid | disambiguating snapshots from svk checkouts basically requires checking ~/.svk | ||
| nopaste | "kid51" at 216.138.231.37 pasted "Parrot::Revision: excerpt handling SVK" (20 lines) at nopaste.snit.ch/12577 | 18:54 | |
| Coke | Um... does the version test check for svn first? | ||
| if so, why am I failing that and checking svk? | |||
|
18:54
chromatic joined
|
|||
| chromatic | I think you're all asking the wrong question. | 18:54 | |
| The right question is "Why do we need to know which VCS someone is using?" | 18:55 | ||
|
18:55
barney joined
|
|||
| particl1 | some tests, like metadata | 18:55 | |
| Coke | what is the test testing? | ||
| particl1 | so, if i tcan't determine which vcs, it should just fail | ||
| svn:keywords etc | 18:56 | ||
| Coke | "why do we even have this lever." | ||
| kid51 | svn:keywords are checked, I believe by Parrot::Distribution, to determine what should be updated in MANIFEST | ||
|
18:57
Psyche^ joined
|
|||
| particl1 | basically, if we can determine that you're a developer, we can run the development tests | 18:57 | |
| chromatic | if -e 'DEVELOPING' | ||
| particl1 | NO | ||
| Coke | "why not" | ||
| purl | i heard "why not" was never sufficient justification. | ||
| particl1 | i could be a user that exports HEAD from svn | 18:58 | |
| Coke | developers don't always have a working copy. | ||
| particl1 | then i get DEVELOPING | ||
| Infinoid | snapshots have a DEVELOPING, but how many people here use snapshot tarballs for development? | ||
| Coke | so why are we running developer tests without being told to? | ||
| Andy | Plus I might not WANT to do developer tests. | ||
| Coke | why don't we, by default, just run feature tests. | ||
| Infinoid | another goal is to figure out what revision a build was built from (and we need to know which VCS, to determine which command to run for that). | 18:59 | |
| chromatic | All this is worth the faffing about trying to detect the VCS from all the potentially installed VCSes now and forever is active for the current checkout but which won't cause smokes to fail? | ||
| Infinoid | I'd say it's worth checking the easily checkable cases, at least | 19:00 | |
| Coke | I'd say it's not, given how much time we've spent trying to get even the easy case right. =-) | ||
| particl1 | at the moment, parrot is optimized for developers | ||
| Coke | for very small values of optimized. =-) | ||
| Infinoid | developers are the common case. :) | ||
| particl1 | at some point, probably nearer to 0.99, this will change | ||
| chromatic | Okay, let me ask a different question. | ||
| Do the SVN metadata tests tell us anything interesting when they fail? | |||
| Coke | I don't think running the codingstd tests every day is "optimized for developers". Nor the config tests. nor ... | 19:01 | |
| kid51 | It's certainly not optimized for maintenance developers ;-) | ||
| It's optimized for developers in the sense that anyone with a commit bit who wants to add a feature more or less can. | |||
| particl1 | i'd be very happy not to run the config tests if i'm not modifing config | 19:02 | |
| kid51 | Witness: recent addition of two new config steps without prior discussion. | ||
| particl1 | ...and not to run the codingstd/distro/etc tests if i'm not creating a distro | ||
| IF we have procedures in place that allow us to clean up the mess every month before release | |||
| otherwise release is too big a burden | |||
| hell, i'm planning to release on tax day, while i'm in hawaii | 19:03 | ||
| (and will have arrived hours beforehand) | |||
| chromatic Warnocks himself in the head | |||
| particl1 | chromatic: they tell us if our coding standard is being enforced | 19:04 | |
| sometimes, that's important | |||
| Coke | not on every commit. | ||
| chromatic | When is it important? | ||
| Coke | That's a maintenance issue. | ||
| particl1 | yep, maint. | 19:05 | |
| Coke | so, "for a release" would be an excellent time. Not during the "I'm about to commit something, run make test to make sure I didn't break the build". | ||
| chromatic | I mean, if it's so important that we make sure that all files being checked into the repository have the same three SVN properties set, we could enforce it at the one place where we know we're using SVN. | ||
| ... and we know that no human will ever forget. | 19:06 | ||
| Infinoid | don't forget the other uses: is having a svn revision number for "./parrot --version" important? if so, when? | ||
| nopaste | "kid51" at 216.138.231.37 pasted "lib/Parrot/*.pm files mentioning 'svn'" (19 lines) at nopaste.snit.ch/12578 | ||
| chromatic | ... and we can always update a REVISION file. | ||
| ... without human intervention. | |||
| PerlJam | those pesky humans ... always getting in the way | 19:07 | |
| particl1 | chromatic: that means two commits for every commit | ||
| chromatic | Does a server-side pre-commit hook require two commits? | ||
| Coke | when is phone, btw? | ||
| chromatic | one hour | 19:08 | |
| Coke | danke. | ||
| I figured if you were here, it was soon. :P | |||
| particl1 | if it's safe to do pre-commit, it's only one commit | ||
| i would really like to make the technology work for us | |||
| Coke | this raises the question, though: is having the revision really necessary? | ||
| kid51 | The codingstd tests that are currently in 'make test' are those where we already have a high degree of conformity to the standards. Those where we are a long way off (such as the pdd_format.t I added this week) are not in 'make test'. | ||
| chromatic | That's a good question. | ||
| Coke | if the only place we really need it is ./parrot --version ... why? why is that necessary. | 19:09 | |
| chromatic | codingstd tests are fine at the moment; it's just the VCS ones that bother me now. | ||
| Coke | ... one thing at a time, sure. =-) | ||
| chromatic | make coretest improved my productivity. | 19:10 | |
| Coke | ditto. | ||
| particl1 | what do we need? 'devtest mainttest distrotest fulltest' | 19:11 | |
| Coke | test and fulltest are sufficient for me. | ||
| chromatic | I think we have some of the others. | ||
| Coke | if you want to test something specifically... run the specific test. otherwise you're either making sure you broke no features, or that parrot is ready for a release. | 19:12 | |
| kid51 | particl1: Do you still believe ./parrot --revision must be available? | ||
| IIRC, several months ago we, um, discussed this. | 19:13 | ||
| particl1 | i believe that if we can determine which revision the parrot you're running was built from, it'll make debugging/maintenance easier | ||
| i don't care how. | |||
| Coke | presumably, in the *wild*, people will not be running an svn-version. | ||
| particl1 | but it should Just Work. | ||
| Coke | presumably, if they are developers, they know how to work their VCS and can tell us. | ||
| particl1 | but they'll be running from some distro that is associated with an svn revision | ||
| chromatic | ... then distro needs to work with upstream. | 19:14 | |
| Coke | no, they'll be running from some distro that is associated with a release. | ||
| chromatic | And I've revealed myself as an idealist. | ||
| particl1 | i'm not a p5p, but i occasionally run blead | ||
| i never get it from a release | |||
| Coke | yes. and when you run bleed, do you typically install it for some user who doesn't know where it came from? | 19:15 | |
| PerlJam | particl1: you get a tarball of bleadperl? | ||
| particl1 | no, not a tarball | ||
| Coke | presumably, you know where you got that file from, neh? | ||
| PerlJam | particl1: Do you run a bleadperl that someone else installed? | 19:16 | |
| chromatic | bleadperl has a file called .patch which contains only the revision number of the patchlevel. | ||
| particl1 | it's an extract from the repo | ||
| no metadata | |||
| purl | no metadata is, like, recoreded, the "is this a copy/rename" algorithm is run at merge-time | ||
| particl1 | no possibliity to update | ||
| just re-extract | |||
| it doesn't matter. | |||
| PerlJam | particl1: it mattered enough for you to mention it, so it's something worth looking into. | 19:17 | |
| IMHO | |||
| Coke | It seems that if we added something to the rsync/tarballs to have the version number they were extracted from, that would address your issue. | ||
| and then the *repo* wouldn't need to deal with any of this. | |||
| particl1 | sure | 19:18 | |
| Infinoid | it would solve a lot of problems | ||
| particl1 | if "this is parrot, 0.6.0-devel" is sufficient for us to debug, drop revision entirely | ||
| Coke | s/solve/avoid/ is even better. =-) | ||
| particl1 | *if the concensus is that | ||
| PerlJam does not concense :) | 19:19 | ||
| Coke | we're doing monthly releases. if someone says 'I have 0.6.0-devel' and we're on 0.6.1, step one is going to be 'get a new copy' | ||
| chromatic | +1 to that | ||
| Coke | "eyes to the future" or whatever chip said. # chip++ | ||
| seen Robrt? | 19:20 | ||
| purl | Robrt was last seen on #p5p 1 day and 3 hours ago, saying: I'll go shower. [Mar 25 09:12:43 2008] | ||
| Coke | humanity thanks you, Robrt. | ||
| chromatic | I suppose clueful developers who really want to use something other than SVN can create a hidden file on their own that *one* thing can check. | 19:21 | |
| Coke | which reminds me, any bugs that are reported on anything older than 0.5.0 should probably be closed out of RT with a 'please retest this against a current version and reopen this ticket if necessary' | ||
| chromatic | ... but I'm not going to tell them that. | ||
| particl1 | this is why i stopped worrying and learned to love the bomb. | 19:25 | |
| chromatic | Let's talk conclusions then. | 19:28 | |
| particl1 | 1. software sucks. | ||
| chromatic | +1 | 19:29 | |
| purl | 1 | ||
| Coke thought he was the suck-monger. | |||
| ... that didn't sound quite so bad in my mind. | |||
| particl1 | :) | ||
| Coke | conclusion: it would be nice to have a plan to deal with bug reports from odd versions of parrot... but this doesn't necessarily involve tracking the svn revision with each build. | 19:30 | |
| If can avoid dealing with tracking the parrot revision, we can rip out some code and tests. | |||
| kid51 | If we no longer need to determine a revision number once we invoke 'make', then lib/Parrot/Revision.pm can be simplified. Can we live with that? | ||
| chromatic | +1 | 19:31 | |
| purl | 1 | ||
| chromatic | purl, you don't get to vote | ||
| purl | chromatic: what? | ||
| Coke | purl, be nixon. | ||
| purl | Coke: huh? | ||
| kid51 | particl1: Can you live with that? | ||
| chromatic | YOW | ||
| purl | I'm shaving!! I'M SHAVING!! | ||
| jjuran | purl, I don't believe we've been formally introduced. | 19:32 | |
| purl | jjuran: i'm not following you... | ||
| Coke | purl, purl? | ||
| purl | rumour has it i am going alone. or almost an anagram of Donaudampfschiffahrtskapitaensmuetzenkordel or a perv or an auto-triage bot or a she or so stupid or a smartass or the sixth beatle. or www.infobot.org or dumb | ||
| cotto_work | status | ||
| purl | Since Fri Mar 21 21:28:03 2008, there have been 774 modifications and 550 questions. I have been awake for 4 days, 15 hours, 4 minutes, 47 seconds this session, and currently reference 692194 factoids. Addressing is in optional mode. | ||
| Coke AIGHS as allison's blog resets again. | 19:33 | ||
| particl1 | kid51: yes. | ||
| kid51 | Thanks (sigh of relief). | 19:34 | |
| Then that means that the remaining ugly code in Parrot::Revision is SVK-related -- correct? | |||
| Infinoid | I don't think we need that ugly code, either | 19:35 | |
| kid51 | ... or that our problems are SVK-related. | ||
| particl1 | if we don't care about the revision, then we don't care about svk | ||
| actually, i'm not sure that follows. hrmm. | |||
| Infinoid | as I see it, the only thing we do care about is whether to tack on the -devel suffix, and existence of DEVELOPING is sufficient for that | ||
| kid51 | Well, as I understand it, we *do* care about revision for "developers", ie. when you're working in a working copy. | 19:36 | |
| particl1 | maintenance developers must use svn to clean up metadata | ||
| Coke | kid51: no we don't. | ||
| because thee developer knows what version they are using. | |||
| regardless of their VCS. | |||
| Tene | but *developers* already know what vcs theyr'e using and can get it from there | ||
| Infinoid | if you're in a working copy, you are responsible for using the VCS tool of your choice | ||
| particl1 | we're dropping revision info entirely from the distro. | ||
| Infinoid | parrot doesn't care :) | ||
| Coke | .. from the build. | ||
| ah. yes, distro but not repo, right. | 19:37 | ||
| kid51 | Okay, so who's going to be in charge of which aspects of this? | ||
| Coke volunteers, as he loves ripping out code. | |||
| Infinoid | if anything remains to be done by this weekend, I'll have some time for this | ||
| Coke | I will open a ticket with a patch, allowing for some discussion in case we missed something. (which I hope we did not.) | 19:38 | |
| kid51 | Coke: Can you open an RT which states what needs to be done and subdivides tasks? | ||
| Question anticipated and answered. | |||
| Tene | Coke: can you open a ticket asking yourself to open a ticket asking you to subdivide tasks? | ||
| Coke | tene: fix lolcode. | 19:39 | |
| :P | 19:40 | ||
| Tene | Coke: fix my laptop. :P | ||
| Coke | ... what's your geo? | ||
| kid51 | At this time do we plan to change any of the Parrot::Distribution, etc., code which uses svn properties to determine what should be in MANIFEST? (If answer is No, then our job is more focused. If Yes, someone needs to examine those modules.) | ||
| Tene | SF atm, Houston next week | 19:41 | |
| Coke | not yet. we were just talking about versions. | ||
| ... svn properties to determine what should be in manifest? hurm? | |||
| kid51 | Yes. Currently, you need to do svn add and svn propset to get make_manifest_and_skip.pl to recognize a newly added file. | 19:42 | |
| Coke | no, just an svn add. | ||
| SFAIK. | |||
| kid51 | Well, we can check on that. | ||
| Coke | Let's burn this bridge first. | ||
| barney | svn add is enough for gen_manifest_and_skip.pl | 19:43 | |
| kid51 | k | ||
| barney | But there are useful SVN properties that should be checked IMHO | 19:44 | |
| chromatic | That's a secondary discussion. | 19:45 | |
| kid51 | Yes, and the t/codingstd/*.t tests do that. | ||
| chromatic | (Mostly because I'm trying to figure out what a failure in the SVN properties tell us about Parrot.) | ||
| barney | svn:eol-style for example | ||
| Coke | chromatic: those tests are not feature driven. That's a completely different type of test. altogether. | 19:46 | |
| particl1 | there are some io files in examples/ iirc that need eol-style=LF | ||
| Coke | </airplane> | ||
| particl1 heads to the hotel to get set up for sixperl & | |||
| Coke | the feature test would fail if those eol-styles are not set properly. This is a secondary test. Much like the config tests. | ||
| barney | The question is whether a (codingstd,config,distro) test saves more work than it causes | 19:48 | |
| kid51 | If we're not going to be looking at the revision number during or after 'make', then we can probably eliminate tools/build/revision_c.pl -- which in turn would permit revisiting lib/Parrot/Revision/Utils.pm, which in turn would permit looking at lib/Parrot/Revision.pm, which would imply changes in pre- and postconfiguration tests. | 19:49 | |
| chromatic | I agree that those IO tests need specific linefeeds. | ||
| kid51 | Does that seem reasonable? (Though it would not address the SVK-related problems.) | ||
| chromatic | kid51, +1 | 19:50 | |
| kid51 | Okay, so how about this for a plan: Coke posts RT. Infinoid looks at SVK-related problems. kid51 looks at other Parrot::Revision-related problems, working backwards from revision_c.pl. | 19:51 | |
| Infinoid | thought the plan was to toss all the svk-checking code out the window... | 19:52 | |
| Coke thought so too. | |||
| Infinoid | if that's what you're asking me to do, I am quite happy to :) | ||
| Coke | let me post what I think is the summary of our discussion and we'll go from there. | ||
| kid51 | okay, but I'll let you (Infinoid and Coke) do the tossing. | 19:53 | |
| ... and take the heat ;-) | |||
| Infinoid | what heat? no svk == no problem :) | 19:54 | |
| kid51 | Infinoid++ | ||
| Coke | we're not saying you can't use svk to hack on parrot. | ||
| we're just avoiding caring. Everybody wins. | |||
| Infinoid | and if someone is using a svn->mercurial gateway and doesn't understand it, it's their fault! :) | 19:57 | |
| TimToady | phone | 20:01 | |
|
20:03
particl1 joined
|
|||
| Coke | ... someone is EATING their phone. | 20:07 | |
| confound | I do that sometimes | 20:09 | |
| not anymore though, I have a treo | |||
| too big | |||
| Coke | ... you could not hear me? | 20:20 | |
| chromatic | Nope. | 20:21 | |
|
20:22
cosimo_ joined
20:33
ruoso joined
|
|||
| Coke | -> offline | 20:35 | |
|
20:44
cosimo_ left
|
|||
| barney frooze Firefox, by running Javascript HQ9+ | 20:55 | ||
| davidfetter | oi, ruoso :) | 20:57 | |
| ruoso | davidfetter, hi david... | 20:58 | |
| I've been thinking about you this days... :P... having to work with MySQL ;) ;) | |||
| heh | |||
| davidfetter | i can help you fix that problem :) | ||
| ruoso | heh | ||
| it seems that the project will be moved to oracle... (the customer only seems to know this two options) | 20:59 | ||
| davidfetter | for a very small fraction of oracle's costs for the first year, i can get it to postgres :) | ||
| ruoso | heh... that's one thing I don't like in working for big companies... it's very hard to bend their rules | 21:01 | |
| doesn't matter how stupid they are | |||
| davidfetter specializes in helping big companies with new things :) | 21:02 | ||
|
21:19
slightlyoff joined
21:35
particl1 joined
21:58
buchet joined
22:03
wknight8111 joined
22:23
spez joined
22:48
mire joined
22:59
ewilhelm joined
23:01
Limbic_Region joined
|
|||
| darbelo | Coke: what sort of specifics? | 23:12 | |
| ewilhelm | darbelo: have you read parts of svn.perl.org/parrot/trunk/languages/c99/ ? | 23:17 | |
| darbelo | Yes, but it looks like some of the files there are unused. I'm guessing it's part of its recent conversion to PCT. | 23:19 | |
| chromatic | I think that's right. | ||
| ewilhelm | chromatic: darbelo is here for SoC | 23:20 | |
| darbelo | Right now I'm trying to find out why the parser chokes on "main()" and "main( void )" | ||
| chromatic | Welcome. | ||
| purl | Heh, not likely around here you won't be. | ||
| darbelo | Thanks. | 23:21 | |
| ewilhelm | purl: bad purl | ||
| purl | Bad ewilhelm! | ||
| Coke | silly bot. | 23:23 | |
| purl | *giggle* | ||
| darbelo | it looks like they fail for different reasons. | 23:24 | |
| Coke | So, as you've found, the c99 grammar isn't quite right. Getting it to parse C99 properly is one step. Getting it to compile C99 is, I think, a lofty dream goal that one person probably isn't going to do in one summer. | ||
| There was talk about using it to replace our simplistic c-parsing codingstd tests, for example. | 23:25 | ||
| chromatic | Parsing -- especially with regard to macros -- is probably doable in a summer. | ||
| Coke | (e.g. have a set of actions that, when it found a bad construct, emitted a warning) | ||
| chromatic | Once we have a C99 parse tree, we can perform actions against that. | ||
| Coke | chromatic: I would agree. I would start with parsing (and tests to back it up.) A stretch goal would be to replace some of the codingstd tests, I think. | ||
| chromatic | If I had the spare time to make XPath work on ASTs, we could use that. | 23:26 | |
| Coke | ooooh. | ||
| chromatic | I know. | ||
| Coke | I'm now imaginging using jquery to manipulate asts. =-) | ||
| chromatic | I don't know about jquery, but something. | ||
| ewilhelm | can it be stated in a timeline which has running code before the halfway point? | ||
| chromatic | We could express error patterns and potential optimization patterns in terms of XPath expressions. | ||
| Coke | but this is off track for darbelo. | 23:27 | |
| chromatic | In terms of running code, I'm sure we could make milestones of C99 features. | 23:28 | |
| Tests could correspond to milestones. | |||
| ewilhelm nudges darbelo to join in the planning | |||
| darbelo | I like the tests == milestones idea. | 23:29 | |
| Coke | excellent. I need to go spend time with family: feel free to ping chromatic while he's around, and particle if he shows up, and feel free to email me. | 23:30 | |
| coke? | |||
| purl | i heard coke was pondering converting tcl to use it, but have some concerns. | ||
| Coke | purl, me? | ||
| purl | hmmm... Coke is pondering converting tcl to use it, but have some concerns. | ||
| Coke | no, coke is will@coleda.com | ||
| purl | okay, Coke. | ||
| Coke pats purl onna head. | |||
| darbelo | Idea: make the preprocessor a separate grammar/compiler. | 23:31 | |
| chromatic | I could see dividing C99 support into lists of related features. | ||
| ewilhelm recalls en.wikipedia.org/wiki/Sparse | 23:33 | ||
| maybe a good source of tests? | 23:34 | ||
| darbelo | More tests for c99 compilers are listed in pcc.ludd.ltu.se/standards_and_regre...n_testing/ | 23:36 | |
| some of that could be adapted, and maybe categorized by feature. | 23:40 | ||
| Limbic_Region | last two days I have had to make realclean before building - is this expected? | 23:41 | |
| chromatic | Coke invalidated the bytecode once. | ||
|
23:43
cotto_work joined
|
|||
| Limbic_Region | hrm, ok | 23:44 | |
| chromatic | That means you have to regenerate all PBC files. | ||
| Limbic_Region | yes, I know | ||
| but that doesn't explain why I had to do it yesterday when I got home from work | |||
| and then again today | |||
| *shrug* | 23:45 | ||
| chromatic | Good question. | ||
|
23:45
ratmice joined
|
|||
| purl | Yeah, it is. I'm stumped. | 23:45 | |
| Limbic_Region | next question - I recently saw something on the list about questioning if parrot built on cygwin out of the box. For a very long time, I built daily on cygwin to ensure it continued to work. Is Cygwin one of the tinder boxes? | 23:48 | |
| If not, should I be building daily again? | |||
| ewilhelm gives easy answer: yes! :-D | 23:49 | ||
| Limbic_Region assumes ewilhelm is answering the first question (tindered) and doesn't go fix his cygwin install | 23:50 | ||
| ratmice | is there some example of using nmi with parrot classes? | ||
| chromatic | nmi? | ||
| purl | somebody said nmi was non-maskable interupt | ||
| chromatic | somebody can't spell interrupt; maybe someone from the w3c? | 23:51 | |
| ewilhelm | Limbic_Region: where do the tinder boxes appear? | ||
| ratmice | sorry nci | ||
| jonathan | ratmice: What are you looking to do? | 23:52 | |
| Limbic_Region | heh, I just checked my cygwin's parrot - 0.6.0-devel | ||
| ewilhelm - I don't know. I do remember it being discussed and people offering boxes | 23:53 | ||
| this should be a fun svn up | |||
| there must be a corrupt path somewhere | 23:54 | ||
| ratmice | jonathan: well i was pondering hooking into the objc runtime if you look at this info -n 'Type encoding' -f gcc it seems fairly easy to build parrot nci strings at runtime from the various type encodings | ||
| chromatic | I don't seem to have that info page. | 23:55 | |
| ratmice | hmm may require installation of the objc compiler? | ||
| PerlJam | Limbic_Region: I just tried to build out-of-the-box on cygwin a little while ago and it failed because it doesn't find libcrypto (apparently) | 23:56 | |
| ratmice | gcc.gnu.org/onlinedocs/gcc/Type-encoding.html | ||
| PerlJam | (out of the svn box that is) | ||
| Limbic_Region | PerlJam - well, I figured out what my problem was - PATH conflict | ||
| chromatic | PerlJam, that shouldn't be the case; maybe the detection of crypto libraries is wrong. | 23:57 | |
| Limbic_Region | PerlJam - last built Parrot on Cygwin back on November 24th | ||
| PerlJam - svn up'ing now | |||
| ewilhelm - google suggests tinderbox.perl.org/tinderbox/showbu...ree=parrot | |||
| shorten | Limbic_Region's url is at xrl.us/bia7m | ||
| ewilhelm | yeah, I get 503 there though | 23:59 | |
| PerlJam tries a cygwin build again. | |||