|
www.parrotcode.org | Last Release: 0.7.0 "Severe Macaw" Set by moderator on 3 September 2008. |
|||
| dalek | r30843 | tene++ | trunk: | 00:03 | |
| : Add hll_map method to parrotinterpreter.pmc | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30843 | |||
| nopaste | "tene" at 67.166.109.77 pasted "Someone should make a test out of this for interp.hll_map" (19 lines) at nopaste.snit.ch/13982 | 00:04 | |
| NotFound | Can @INC be modified at runtime? | ||
| chromatic | In Perl 6 or Parrot? | ||
| NotFound | rakudo | 00:05 | |
| Scope not found for PAST::Var '@INC' | |||
| chromatic | Isn't it a superglobal? @*INC? | ||
| NotFound | That was :) | 00:06 | |
| > use Xlib; | 00:08 | ||
| Can't find ./Xlib in @INC | |||
| > @*INC.push('/home/julian/parrot/examples/nci/'); | |||
| > use Xlib; | |||
| > say Xlib::DisplayName(); | |||
| :0.0 | |||
| > | |||
| Very nice the rakudo command prompt :) | |||
|
00:10
AndyA joined
|
|||
| pmichaud | cotto_home: one can get the current LexPaid by querying the interpreter object | 00:11 | |
| *LexPad | |||
| NotFound | Who pays Lax? | ||
| Lex | |||
| pmichaud | $P0 = getinterp; lexpad = $P0['lexpad'] | ||
| cotto_home | pmichaud++ | 00:13 | |
| now the fun part is making it iterable, which it isn't atm | 00:14 | ||
|
00:24
cognominal joined
|
|||
| dalek | r30844 | cotto++ | trunk: | 00:54 | |
| : [dynpmc] add a TODO'd iterator test for DynLexPads | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30844 | |||
| r30845 | cotto++ | trunk: | 00:59 | ||
| : [dynpmc] shift code and docs so functions are closer to their POD documentation | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30845 | |||
| r30846 | chromatic++ | trunk: | 01:24 | ||
| : [PMC] Fixed coding standards nits. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30846 | |||
| r30847 | chromatic++ | trunk: | 02:23 | ||
| : [src] Work around potential infinite loop when mapping Integer to a | |||
| : HLL-specific type (reported in RT #30843, elaborated in RT #58636). | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30847 | |||
|
03:27
Andy joined
03:39
Theory joined
|
|||
| dalek | r30848 | tene++ | trunk: | 03:40 | |
| : [cardinal] | |||
| : * Map RPA to CardinalArray | |||
| : * Support slurpies a bit better | |||
| : * Still some weird bugs here... | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30848 | |||
| Tene | Ah, that doesn't quite work yet because I don't have a .HLL statement. | 03:45 | |
|
03:55
tetragon joined
04:26
Zaba joined
04:33
Zaba_ joined
04:44
apannu_ joined
05:32
tetragon joined
05:54
Ademan joined
|
|||
| dalek | r30849 | cotto++ | trunk: | 06:02 | |
| : [config] mark the Config hash as read-only, plus a test | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30849 | |||
|
06:28
Ademan joined
|
|||
| cotto_home | jonathan, pign | 06:39 | |
| *ping | |||
| jonathan, nm. found it | 06:43 | ||
|
06:55
Zaba joined
07:42
Anandeep joined
08:10
rurban joined
08:12
Zaba_ joined
08:15
rurban joined
08:17
rurban joined
08:20
iblechbot joined
08:27
bacek joined
|
|||
| rurban | seen jonathan | 08:29 | |
| purl | jonathan was last seen on #parrot 21 hours, 39 minutes and 47 seconds ago, saying: And I'm off to Vienna...cu | ||
|
08:46
barney joined
09:13
rurban_ joined
|
|||
| rurban | jonathan: This is for you use.perl.org/~rurban/journal/37380 | 09:16 | |
| dalek | r30850 | julianalbo++ | trunk: | 09:17 | |
| : Mysql example module: rename method result to store_result, add method use_result and update example programs | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30850 | |||
| bacek | moritz: ping | 09:44 | |
| moritz | bacek: pong | 09:45 | |
| bacek | moritz: I've got initial patch for slurpy params | ||
| #58278 | 09:46 | ||
| But my spectest regression run complains multiple times about "Use of uninitialized variable" | |||
| moritz | yes, that's known | 09:47 | |
| bacek | is it my fault, or latest rakudo broken somehow? | ||
| moritz | pmichaud++ added that warning the other day | ||
| bacek | ah, ok | ||
| moritz | it's only a warning | ||
| bacek | purl: nopaste? | 09:48 | |
| purl | nopaste is, like, at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ | ||
| NotFound | Someone can test the latest mysqltest.p6 with a short table and confirm that the --- Stored copy --- part is wrong? | ||
| nopaste | "bacek" at 58.111.4.150 pasted "Initial patch for slurpy params for moritz" (29 lines) at nopaste.snit.ch/13985 | 09:49 | |
| moritz | NotFound: just a sec | ||
| NotFound | Wrong data, forget my formatting errors. | 09:50 | |
| moritz | NotFound: yes, it's wrong | ||
| NotFound | Is a unmanagedstruct.pmc fault, I'll fix it now. | ||
| moritz | NotFound: it seems to repeat the same dataset all over again, with smalll variations | ||
| bacek | moritz: this patch brakes some tests... | 09:51 | |
| NotFound | But wanted some confirmation first. | ||
| moritz | bacek: testing now... | 09:52 | |
| bacek: it makes the first 6 tests of t/spec/S06-signature/slurpy-params.t pass at least | 09:53 | ||
| and dies on the one with a type declaration, which is probably still a TODO | 09:54 | ||
| dalek | r30851 | julianalbo++ | trunk: | ||
| : drop the external flag in strings created from UnManagedStruct | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30851 | |||
| NotFound | moritz: can you update and test again? | 09:55 | |
| bacek | moritz: yes. Type check is not implement yet (AFAIK) | ||
| moritz | NotFound: when my other test has run through, yes | ||
| bacek: in general it is, but it would have to be done on each item of the slurpy array, not on the array itself | 09:56 | ||
| NotFound: seems to work fine now, from a quick visual inspection | 09:57 | ||
| NotFound++ | |||
| NotFound | Please take a look at the TODO added with the fix. | 09:58 | |
| moritz | NotFound: I would write the last inner loop in mysqltest.p6 as say map({"'$_'"}, $rc).join(', '); | 10:01 | |
| NotFound | moritz: I was looking at that part. Don't understand why the for flattens the array. | ||
| moritz | basically rakudo is borked wrt list flattening | 10:02 | |
| rakudo: my %h = ( a => [[1, 2], [3, 4]], b => 5); say %h<a>.perl | 10:03 | ||
| polyglotbot | OUTPUT[[1, 2, 3, 4]ā¤] | ||
| moritz | see what I mean? | ||
| NotFound | I'm a poor C guy, that syntax overload my brain %-) | ||
| moritz | it's a nested list that I put into the hash, and a flat lists falls out | 10:04 | |
| NotFound | Your suggestion also flattens. | 10:05 | |
| moritz | uhm right, I missed that | ||
| bacek: maybe add that patch to rt, and ask for comments? | 10:06 | ||
| bacek: I think jonathan is working on the signature part | |||
| NotFound | I'll use a while like the first loop for anow. | ||
| bacek | moritz: yes, I'll add it to RT. I just want confirmation that it works on someone else box. And "use of uninitialized var" is not my fault ;) | 10:07 | |
| moritz | btw the C style for loop is called 'loop' in Perl 6, so you can write loop(my $row = $r.fetch_row; defined $row; $row = $r.fetch_row()) { ... } | 10:08 | |
| bacek: yes, confirmed ;) | 10:09 | ||
| anyway, that's just stylistic nonsense, good work ;) | |||
| NotFound | moritz: I avoided that way for fear of errors or misfeatures %-) | 10:10 | |
| dalek | r30852 | julianalbo++ | trunk: | 10:12 | |
| : avoid flattening in example mysqltest.p6 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30852 | |||
| NotFound | I have a nice idea: store the error reports for the Mysql module in a Mysql database accessed with parrot X-) | 10:15 | |
| moritz | and then use this database for testing ;) | ||
| NotFound | At my work they said one time that reports of broken fax machines must be sended by fax. | 10:16 | |
| moritz remebers the hwresnet helpdesk he tried to contact because of his broken phone... it was only reachable by phone, of course | 10:17 | ||
| NotFound | I said: nice, and reports about forgotten mail passwords and such must be sended by mail. | ||
| moritz | NotFound, Tene: could you please take a look at RT #58308? | 10:24 | |
| I'm not familiar with the core, so I'm hesitant to apply it | 10:25 | ||
| and a rakudo ticket depends on that | |||
| bacek | moritz: hey! This is my patch! ;) | ||
| moritz | bacek: yes. | 10:26 | |
| bacek: I want to get patches applied as soon as possible, but only those which make sense, which is hard for me to judge outside my area of expertise | |||
| NotFound | moritz: The string.pmc part? | 10:27 | |
| moritz | NotFound: yes, and the tests in the last comment | 10:28 | |
| NotFound | Last comment in the list or in the ticket? | 10:30 | |
| moritz | in the ticket | 10:31 | |
| NotFound | string_reverse_index_test.t ? | ||
| moritz | yes | ||
| bacek still don't understand how to reply to ticket with CC to list... | 10:32 | ||
| NotFound | There is a button to add it from some weeks ago. | ||
| The CHARSET_RINDEX thing already exists, or need some other patch? | 10:34 | ||
| bacek | NotFound: already exists. | 10:35 | |
|
10:38
bacek_ joined
|
|||
| NotFound | Patches applied locally, doing a full test. | 10:42 | |
| moritz | NotFound: if you think it's fine, and the tests pass, please commit | 10:43 | |
| NotFound | I'll do, but I left the rakudo part for you. | ||
| s/left/let | |||
| moritz | ok | 10:44 | |
| NotFound | moritz: Did you read my comment here abot unfair comparaison? | 10:47 | |
| Run xlibtest.pir and xlibtest.p6, draw some lines on each, and compare redraw speed. | 10:48 | ||
| dalek | r30853 | julianalbo++ | trunk: | 10:52 | |
| : add reverse_index method to string.pmc and a test for it, RT#58308, bacek++ moritz++ | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30853 | |||
|
10:56
bacek_ joined
|
|||
| bacek_ | purl: STD.pm? | 11:01 | |
| purl | i heard STD.pm was svn.pugscode.org/pugs/src/perl6/STD.pm | ||
| moritz | msg bacek the rakudo patch for rindex doesn't build ... | 11:26 | |
| purl | Message for bacek stored. | ||
|
11:26
bacek_ joined
|
|||
| bacek | moritz: I found my 3-month old patch for List.uniq. #55484. Please commit (or reject). | 11:37 | |
| hey, how I can read messages stored by purl? | |||
|
11:38
tetragon joined
|
|||
| NotFound | bacek tell 'messages' in a query | 11:43 | |
| bacek | NotFound: thanks | ||
| moritz | bacek: is uniq specced? | 11:46 | |
| bacek | moritz: probably. Checking spec | ||
| dalek | r30854 | julianalbo++ | trunk: | ||
| : some cleaning and comments in example Mysql module | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30854 | |||
| bacek checking spec | 11:47 | ||
| moritz: no. It's unspecced. But spectested ;) | 11:48 | ||
| moritz | we should change that to eval_dies_ok('(1, 2, 3).uniqe', 'List.uniq not specced'); | 11:49 | |
| bacek | moritz: hmm... At least we should change 'List.uniq' to use '!EXPORT'. | 11:51 | |
| git svn rebase is very-very slow... I don't know why... | 11:52 | ||
| moritz | if it's not specced it's not going in | 11:54 | |
| I'll ask @Larry | |||
| bacek | moritz: check S29-list/uniq.t | ||
| There is some comments. | 11:55 | ||
| moritz | bacek: yes. Seems a bit out-of-dateish | 11:57 | |
| bacek: I sent a mail to p6l asking for clarification | 12:06 | ||
| nopaste | "bacek" at 122.110.89.49 pasted "Str.rindex for moritz" (60 lines) at nopaste.snit.ch/13986 | 12:09 | |
| bacek | moritz: this version builds on my box. | 12:10 | |
| And S29-list/rindex passes | |||
| moritz | bacek: I'll take a look later, lunch now; thanks | ||
| bacek | moritz: bone appetite ;) | 12:12 | |
| moritz | mercy | ||
|
12:18
Whiteknight joined
|
|||
| dalek | r30855 | Whiteknight++ | pdd09gc: | 12:29 | |
| : [pdd09gc] updating to trunk from r30672 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30855 | |||
|
12:30
jan joined
|
|||
| rurban | jonathan: net2pbc crashes with c/Programme/Mono-1.9.1/lib/mono/2.0/mscorlib.dll | 12:43 | |
| jonathan | Crashes in what sense? | ||
| rurban | Segmentation fault (core dumped) | ||
| jonathan | Likely Parrot regression. | 12:44 | |
| rurban | Interesting | ||
| The smaller examples works mostly | |||
| jonathan | OK | ||
| I've not looked at it for quite a while. | |||
| rurban | I just finished the refactoring of SRM into a seperate compilers/SRM and put out the dotnet specific pieces | ||
| So that I can go on with WMLScript and jvm | 12:45 | ||
| jonathan: This is for you use.perl.org/~rurban/journal/37380 | |||
| How should code access to a stack-private temporary index 1, e.g. | 12:46 | ||
| I guess similar to the load/store ops | 12:48 | ||
| jonathan | rurban: It just increments a local? | ||
| rurban | yes. | 12:49 | |
| jonathan | Rather than loading it onto the stack first? | ||
| OK. | |||
| rurban | Yes, immediate | ||
| purl | i guess immediate is running as soon as possible, which should give the wanted effect for both cases | ||
| jonathan | I don't think you need to class that as a load instruction. All of the locals get allocated registers. | ||
| rurban | Similar to [ldlarga] I thought | ||
| jonathan | Yes | ||
| Well, not that one | |||
| That loads the address | |||
| rurban | DEST0 = net_reg_ptr arg ARG1 ? | 12:50 | |
| jonathan | Look at ldloc instructions to see how instructions reference local variables | ||
| But you don't want it to be of load class | |||
| rurban | Like [ldind.i1] ${STACK0}.load_int | ||
| Ah, I see: ${LTYPES}[0] | 12:51 | ||
| jonathan | I tink it'd look something like | 12:52 | |
| rurban | instruction = ${LTYPES}[${ARG0}] = ${LTYPES}[${ARG0}] + ${ARG1} | 12:53 | |
| arguments = uint8, int8 | |||
| That should be it. | |||
| jonathan | [ldloc] | ||
| code = | |||
| class = op | |||
| pop = 0 | |||
| push = 0 | |||
| arguments = uint32 | |||
| pir = <<PIR | |||
| ${STEMP0} = ${ARG0} | 12:54 | ||
| ${INS} = concat "inc local" | |||
| ${INS} = concat ${STEMP0} | |||
| PIR | |||
| Apart from replace ldloc with inc | |||
| After code put the opcode number in hex | |||
| And change unit32 to whatever the type of value in the bytecode is. | |||
| purl | jonathan: that doesn't look right | ||
| jonathan | (e.g. which says which number local it is) | ||
| Oh, you probably want after concating the number of the local a newline | 12:55 | ||
| ${INS} = concat "\\n" | |||
| rurban | Do I really need to stringify it? | 12:57 | |
| But looks good. | |||
| purl | O_O | ||
| bacek | msg moritz my patch for slurpy args shouldn't be applied. It's useless... Args passing should be refactored. | 12:58 | |
| purl | Message for moritz stored. | ||
| jonathan | rurban: Yes, because it goes in an I register | ||
| But it's an int type | |||
| s/but/because/ | |||
| And there's no concat_s_i op | 12:59 | ||
| rurban | jonathan: May I make it to accept lowercase opcode hex also? | ||
| jonathan | So you can write code = 7f as well as code = 7F? | ||
| rurban | Whow, with jvm: Currently able to translate 217 out of 213 instructions | ||
| yes | 13:00 | ||
| jonathan | The 213 was hardcoded! | ||
| Yes, you can do that. | |||
| rurban | I have a mixup of dotnet and jvm currently, so I got duplicates. | ||
| jonathan | Ah. :-) | ||
| rurban | error:imcc:Label 'PRE_OP_66_LAZY_MOVE_0' already defined | ||
| jonathan | Are you actually translating anything successfully yet? :-) | ||
| Ouch. | 13:01 | ||
| rurban | Not yet. I have to finish the assembly <=> class file differences. (No PE header, no tables, ...) | ||
| jonathan | Aha, OK. | ||
| rurban | just simple class bytecode, and for jar files unzip it and do it recursively | ||
| jonathan | Hmm. I wonder if that is because it doesn't know how to handle ops that don't push or pop anything. | ||
| rurban | the javap disassembler is helpful | 13:02 | |
| jonathan | Ah, it does know...nop does that | ||
| Try removing the pop and push lines entirely. | |||
| rurban | You mean the number of stack args from all ops? | 13:03 | |
| jonathan | No, no | ||
| I mean for the inc op | |||
| Or is the error you just pasted not related to that? | |||
| rurban | not sure. | 13:04 | |
| jonathan | I pasted in my suggestion "pop = 0" and "push = 0", but you can delete those two lines | ||
| OK. It's hard without knowing where that error is coming from. | |||
| rurban | sure. did it. I need some more hours cleaning up the mess | ||
| jonathan | :-) | ||
| I spent a long, long time developing the toolchain for this. | |||
| rurban | The error is because code 66 is defined multiply | ||
| jonathan | Aha. | 13:05 | |
| That'd do it. | |||
| rurban | Your hours are appreciated. | ||
| jonathan | The tools are probably not the most user-friendly. | ||
| rurban | well, B::C is similar | ||
| or the perl5 bytecode compiler/loader | |||
| jonathan | It was my degree project. So while I certainly was trying to produce good, exensible code that others could hack on or base other trnaslators on, there was a lot of "make it work in time" too. | 13:06 | |
| rurban | Just PIR is causing me headaches. The target format | ||
| jonathan | :-) | ||
| Yes, and here you have PIR that produces...PIR. | |||
| Interestingly, it is fast. | |||
| rurban | Eventually I want to convert perl5 bytecode or madprops to pir: B::PIR | 13:07 | |
| jonathan | When I did implement this, if I translated some big .Net assembly, the translator produces PIR faster than Parrot turns that into PBC. :-) | ||
| rurban | really, you could translate mscorlib.dll ? | ||
| jonathan | Not all of it. | ||
| purl | not all of it is fast, but much of it is | ||
| jonathan | It skipped classes that it could not do. | ||
| But it actually could make it all the way through mscorlib.dll. | 13:08 | ||
| rurban | good to hear | ||
| jonathan | And get a fair number of classes. Main issue in that library were methods that were built into the VM. | ||
| rurban | So I'll go through it with gdb | ||
| jonathan | Which would need hand-coding. | ||
| But in the past, I used to make it run through a load of the .Net assemblies provided by Mono. | |||
| There's some stats in the paper. | |||
| rurban | InternalGetHashCode, MemberwiseClone and those? | 13:09 | |
| jonathan | Those, yes. And plenty of others. | ||
| IIRC, I had some tool that gave a list of them. | |||
| Maybe I did. | |||
| There is some way to get a verbose "why we failed to translate a class" for each class it can't translate. | 13:10 | ||
| rurban | tools/analysis.pl | ||
| dalek | r30856 | moritz++ | trunk: | ||
| : [rakudo] implement Str.rindex, bacek++. Closes RT #58308 | |||
| : Patch courtesy by Vasily Chekalkin <bacek at bacek.com> | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30856 | |||
| jonathan | See section 4.1.2 in the paper. | ||
| rurban | maybe it's andrew's new tri-color gc | ||
| jonathan | I don't think that's made it into trunk yet? | 13:11 | |
| rurban | It did, rigth after 0.7.0 | ||
| did it? hmm | 13:12 | ||
| moritz | don't think so | ||
| nci did it | |||
| jonathan | OK, NCI was merged in then. | ||
| rurban | yes, indeed | ||
| jonathan | But I don't think I really use NCI. | 13:13 | |
| rurban | I mixed it up. | ||
| just ncigen | |||
| When should I start adding it to my branch? When 20% is finished or 50%? | |||
|
13:14
rdice joined
|
|||
| rurban | I mean languages/jvm | 13:14 | |
| I'm at 30% I guess | 13:15 | ||
| jonathan | When should you put languages/jvm in trunk, you mean? | ||
| rurban | No, just to my cygwin070 branch | ||
| jonathan | Commit early, commit often... :-) | 13:16 | |
| rurban | I think I wait just for my CLA being clreared then I go on. | ||
| jonathan | OK, sounds good. | ||
| jonathan is excited to see someone working on this stuff | |||
| rurban | WMLScript also needs some treatment | ||
| NotFound | If you have some recent problem with nci and (Un)ManagedStruct, look at my last change of UnManagedStruct.pmc | 13:17 | |
| rurban | I rather want to work on a compacting GC, but jvm is nice too. | ||
| NotFound | (drop the capitals) | ||
| rurban | I could compile clisp or perl5 to jvm also then | ||
| jonathan | I did try to see if I could translate much of IronPython with net2pbc. But too much missing stuff. | 13:19 | |
| rurban | Dynamic Language Runtime (DLR) what is this? | 13:21 | |
| A CLR extension for dynamic languages from MS? | |||
| jonathan | Yes. | 13:25 | |
| Not had chance to look at it much. :-( | |||
| rurban | Does this have extra bytecodes? | 13:26 | |
| maybe they had to extend code=FE more :) | 13:27 | ||
| So it should be named multi-bytecode | |||
| I see. JVM needs the new invokedynamic, the DLR wants to do without new ops. They added objects to the AST tree, to do dynamic method lookup. | 13:30 | ||
| CLOS does this with an extra CLASS tag for each variable. | 13:34 | ||
| jonathan | Yes, I think they did no VM extensions. | ||
| Unlike Parrot, they didn't have dynops support in .Net. | |||
| rurban | The JVM is also a bit crippled | 13:35 | |
| purl | okay, rurban. | ||
| rurban | I'm just reading blogs.sun.com/jrose/entry/bravo_for...ic_runtime | ||
| Interesting to read how sun bashes the CLR internals | 13:38 | ||
| dalek | r30857 | julianalbo++ | trunk: | 13:39 | |
| : add free result method and throwing on errors to Mysql examples | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30857 | |||
|
13:52
Zaba joined
13:54
Whiteknight joined
14:11
rhr joined
14:12
wknight8111 joined
|
|||
| dalek | r30858 | julianalbo++ | trunk: | 14:46 | |
| : add creation and check of prepared statements to example Mysql module | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30858 | |||
|
15:10
particle joined
15:24
tetragon joined
15:25
gmansi joined
15:33
nopaste joined
15:39
tetragon joined
15:48
grim_fandango joined
16:02
tetragon joined
16:09
jan joined
|
|||
| dalek | r30859 | julianalbo++ | trunk: | 16:40 | |
| : add an assertion for RT#42693 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30859 | |||
|
16:48
paco joined
|
|||
| Tene | moritz: what do you want me to do with rt #58308? | 16:54 | |
|
16:57
Zaba_ joined
|
|||
| moritz | Tene: I wanted a review, but NotFound++ already did that | 17:09 | |
| Tene | Orite, review. That thing people do to patches. | 17:10 | |
| Really, I'm awake. I promise. | |||
| pmichaud | moritz: did you see RT #58644? | 17:11 | |
| moritz | pmichaud: yes, I already added a test to rindex.t | ||
| pmichaud | okay, good. Let's get bacek to take a look at it. | ||
| I could probably fix it, but it'd be better if he did it. :-) | |||
| moritz | aye | 17:12 | |
|
17:12
rurban_ joined
|
|||
| NotFound | There is a way in rakudo to declare an integer array? | 17:14 | |
| moritz | my Int @x; | ||
| pmichaud | Rakudo doesn't enforce that, though. | 17:15 | |
| right now my Int @x; probably does the same as my @x; | |||
| NotFound | I'm worried about the big difference in speed between xlibtest.pir and xlibtest.p6 | ||
| pmichaud | NotFound: speed hasn't been our focus yet | ||
| NotFound | pmichaud: I know, but is sooooooo big. | 17:16 | |
| dalek | r30860 | pmichaud++ | trunk: | ||
| : [rakudo]: spectest-progress.csv update: 158 files, 3287 passing tests | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30860 | |||
| pmichaud | it's worth checking if the issue is execution speed or compilation speed | ||
| we know that compilation speed is low | |||
| NotFound | Execution. | ||
| purl | execution is probably immoral | ||
| pmichaud | and if your question is "is there a way in Rakudo to declare something that is a ResizableIntegerArray or FixedIntegerArray" -- no, there's not at present and may not be for some time. | 17:17 | |
| closest would be "my int @a"; | |||
| NotFound | Is a simple drawing program. It has an array of arrays to save the lines drawed. The difference is when redrawing. | ||
| moritz | which is NYI | ||
| or even my int @a[10] | 17:18 | ||
| pmichaud | lists and arrays in rakudo are definitely slow at the moment -- things should speed up when we have the lazy list implementation | ||
| there's a lot of copying taking place | |||
| NotFound | Is an array of references to arrays, better said. | 17:19 | |
| pmichaud | at present rakudo does a lot of copying even in that case | 17:20 | |
| it's something that I'm aiming to fix (like, in the next few days) | |||
| I'm finally getting my jfdi-energy back :-) | |||
| NotFound | I was not blaming, justo curious ;) | 17:21 | |
| Anyway, those that have an X-server can use the program as a quick benchmark tool for the progress in this thing. | 17:22 | ||
| dalek | r30861 | pmichaud++ | trunk: | ||
| : [rakudo]: Add 'fail' function. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30861 | |||
| pmichaud | I tried running it on my system but it didn't work. It appears to be looking for xlib in a specific place | 17:23 | |
| (this was a day or two ago) | |||
| NotFound | pmichaud: it just uses: loadlib 'libX11', blame the dynaloader. | 17:24 | |
| pmichaud | okay, I'll check into it. | ||
| NotFound | Or maybe you don't have a symbolic link from libX11.so to libX11.so.xx | 17:25 | |
| pmichaud | lrwxrwxrwx 1 root root 15 2008-07-18 16:28 libX11.so.6 -> libX11.so.6.2.0 | ||
| but that's about it. | 17:26 | ||
| anyway, I have to head to a soccer game, so I'll look into it later. | |||
| NotFound | You need another one without the .6 | 17:27 | |
| dalek | r30862 | kjs++ | trunk: | 17:30 | |
| : [pirc/new] add linkage to libparrot | |||
| : + refactoring of code | |||
| : + added 2 files for better code organization | |||
| : + updated MANIFEST. | |||
| : + updated README on how to build and link. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30862 | |||
|
17:47
paco joined
17:52
spreiter joined
|
|||
| spreiter | hi. I'm new to parrot. Is there any reference on how to write PIR? Just doing the tutorial and there is an exercises that asks me to modify the squaak.pir so it prints Squaak for Parrot VM. I found the solution through google and made a grep search in the docs directory for "commandline_banner" but no luck. | 18:05 | |
| NotFound | spreiter: start by taking a look at docs/imcc/imcfaq.pod | 18:07 | |
| moritz | spreiter: have you seen www.parrotcode.org/examples/pir.html already? | ||
| NotFound | The last part, that starts with: PIR PROGRAMMING | 18:08 | |
| spreiter | Thanks for the link. haven't seen that | ||
| cotto_home | spreiter, the tests in t/pmc/*.t should also be an abundant source of fairly simple example code | 18:09 | |
| NotFound | cotto_home: IMO .t files are not easy to understand for beginners. | 18:10 | |
|
18:10
Ademan joined
|
|||
| spreiter | thanks for the hints :-) | 18:12 | |
| I think I should first finish the tutorial series | |||
| NotFound | And of course, imcfaq.pod points you to: examples/tutorials | 18:13 | |
| tutorial | |||
| purl | rumour has it tutorial is search.cpan.org/dist/Catalyst-Manua...torial.pod | ||
| spreiter | I'll check it out. Thanks for the pointers | 18:16 | |
| sorry for sounding dumb, but where is example/tutorial? | 18:20 | ||
| NotFound | spreiter: in the parrot source tree. | ||
| spreiter | ah ok | ||
| NotFound | examples, not example | 18:21 | |
| spreiter | found it | 18:23 | |
|
18:27
Ademan joined,
Zaba joined
18:45
Ademan joined
19:21
Ademan joined
|
|||
| Tene | pmichaud: HLLCompiler.pir tries to call new with the result of split(), but new_p_p expects a String pmc, not an Array | 19:21 | |
|
19:22
Andy joined
19:48
gmansi joined
|
|||
| Tene | Hmm. | 19:52 | |
| PGE needs a way to specify the HLL we're inheriting from in: | |||
| grammar cardinal::Grammar is PCT::Grammar; | |||
| Right now that generates: $P0 = subclass 'PCT::Grammar', 'cardinal::Grammar' | |||
| That dies in an HLL world, but this works: | 19:53 | ||
| $P1 = get_root_global ['parrot'], 'PCT::Grammar' | |||
| $P0 = subclass $P1, 'cardinal::Grammar' | |||
| With that manual change in gen_grammar.pir, I now have --target=parse working with .HLL | 19:54 | ||
| --target=past is still failing though, hmm... | |||
|
20:05
Whiteknight joined
|
|||
| pmichaud | Tene: all of the PCT classes are in the 'parrot' HLL | 20:17 | |
| so they have to be imported into whatever HLL you're planning to use for the action grammar | |||
|
20:17
Theory joined
|
|||
| pmichaud | also, 'PCT::Grammar' probably needs to become ['PCT';'Grammar'] | 20:18 | |
|
20:19
wknight8111 joined
|
|||
| Tene | Oh, I should be importing things instead of grabbing them from 'parrot'? | 20:21 | |
| Interesting. | |||
| pmichaud | well, that's the way I expect things to generally work. It's basically the equivalent of saying "use PCT;" | ||
| i.e., it imports the symbols into the namespace | |||
| Tene | Huh, okay. | ||
| Should PCT also do the same thing, or should pct get_root_global [ hllname ; ... ] ...? | |||
| pmichaud | well, PCT is already in the parrot hll so it doesn't have to worry about it. | 20:22 | |
| Tene | When it's getting namespaces and classes for the language it's compiling | ||
| pmichaud | when does PCT do that? | ||
| Tene | top = get_hll_global parsegrammar_name, 'TOP' | 20:23 | |
| HLLCompiler.pir:350 | |||
| pmichaud | that's likely to become a method call. | ||
| Tene | 35#, I guess. | ||
| A method call on what? | |||
| pmichaud | the parsegrammar | ||
| Tene | Huh. Okay. | 20:24 | |
| dalek | r30863 | julianalbo++ | trunk: | ||
| : add a dirty implementation of escape_string to Mysql example module | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30863 | |||
| pmichaud | several things in HLLCompiler need a big refactor | ||
| it was written before we had action grammars, and uses a design I disagree with | |||
| (it was written before we had protoobjects, too) | 20:25 | ||
| so, the "real" way it should work is that you provide the HLLCompiler with the protoobjects for the grammar and action grammar that you want to use, instead of string names. | 20:26 | ||
| (In general I find using strings to identify classes to be highly suspect.) | |||
| Tene | Rather. | ||
| Looks like gen_grammar just uses subclass instead of P6metastuff | 20:29 | ||
| pmichaud | right, that needs to change also. | 20:30 | |
| some items haven't converted to P6object yet :-) | |||
| Tene | So does all of this need to come before HLL refactors? | 20:34 | |
| pmichaud | a lot of it does, yes. or in conjunction with them. | ||
| it's probably close to time to do some intensive work in a branch for this | 20:35 | ||
| I worked on it on the plane to YAPC::EU, but found that I needed hll_map and a few other items like this first | |||
| moritz | rakudo's docs/STATUS list anonymous classes as To do - is there a good reason not to move it to implemented? | 20:36 | |
| pmichaud | I think STATUS is out of date. Yes, feel free to move it to "implemented" | ||
| (as well as any other items you may happen to notice) | 20:37 | ||
| afk, lunch | 20:38 | ||
| nopaste | "tene" at 24.10.199.37 pasted "This seems to work for using P6object for PGE grammars" (15 lines) at nopaste.snit.ch/13989 | 20:43 | |
| pmichaud | better is to get_root_global the P6meta object. | 21:31 | |
| jonathan | pmichaud: Any preference on days I Rakudo hack next week? | 21:32 | |
| pmichaud | any day should be good | ||
| jonathan | (as in, during the next week) | ||
| OK. | |||
| pmichaud | fridays (morning) tend to be a little on the busy side for me | 21:33 | |
| jonathan | I was thinking earlier in the week than that. | ||
| The RT queue has...so much stuff. | |||
| pmichaud | yes, it does | ||
| jonathan | Which isn't a bad thing. | ||
| pmichaud | certainly plenty for us to work on. | ||
| I'm expecting to do inline PIR in the next day or so | 21:34 | ||
| jonathan | I'll probably divide my time between lazy lists branch and trying to resolve some of the RT tickets. | ||
| Oh, great. :-) | |||
| pmichaud | that sounds like a good idea | ||
| (phone call brb) | |||
| moritz | nopaste.snit.ch/13991 | 21:35 | |
| this implements parsing (and matching) of m/.../ | |||
| any objections? | |||
| pmichaud | I see that it does parsing, but matching? | ||
| also, does 'm' have to be followed by a slash? | |||
| moritz | well, I could add an alternative | 'm' <quote_expression: :regex> | 21:36 | |
| but that would allow mbab as a regex | |||
| which is not quite allowed | |||
| (maching is automatically done right ;) | |||
| pmichaud | m <.ws> <quote_expression: :regex> | ||
| NotFound | I think a lot of tickets can be resumed in one: "Argument passing code is bad" | ||
| Tene | pmichaud: right now HLLCompiler gets TOP, which is a method, and calls it with the source as the first param, which goes into self in TOP. Should I assign the source to a new Grammar object constructed from the protoobject, and call TOP on that, then? | 21:37 | |
| moritz | pmichaud: doesn't your version allow m bab as a regex then? | ||
| pmichaud | I think <quote_expression> won't accept just any ol character as a delimiter | 21:38 | |
| Tene | It won't. | ||
| moritz tries | |||
| pmichaud | Tene: the syntax/semantics for constructing a new grammar match are still being worked out a little bit | ||
| I don't know what TimToady has this week :-) | |||
| moritz | with pmichaud's version: /rakudo -e '"a" ~~ m bab && say $/' | 21:39 | |
| output: a | |||
| Tene | Oh, right. | ||
| moritz: add a <before <[/[({]>> | |||
| ocelot | |||
| pmichaud | I'm not sure that "m bab" is incorrect syntax. | 21:40 | |
| moritz is sure that if it's allowed, it's very weird ;) | |||
| pmichaud | does q:regex have any restrictions on the delimiter? | 21:41 | |
| er, Q:regex | |||
| moritz | I don't see any restriction in the specs | 21:44 | |
| STD.pm parses m bab as some kind of quote | 21:45 | ||
| pmichaud | sure, since m is a quote construct | ||
| quote:m in STD.pm | 21:46 | ||
| moritz | so, should I use m <.ws> <quote_expression> then? | ||
| (with :regex, that is) | |||
| pmichaud | sure. | 21:47 | |
| moritz runs spectest_regression, and commits if successful | |||
| pmichaud | and we need two separate alternatives -- one for <.before '/'> and one for 'm' <.ws> | 21:48 | |
| moritz | that's how I have it now | ||
| pmichaud | I also wonder if unicode has advanced enough that we can remove the FIXME:unicode line above. Might be worth a try. | ||
| s/remove/uncomment/ | 21:49 | ||
| moritz tries | |||
| pmichaud | I'd do them in separate steps, though. one for 'm' and another for >> | ||
| er, << | |||
| moritz | ok | ||
| NotFound | pmichaud: I think unicode progress is waiting for the string pdd work. | ||
| pmichaud | NotFound: PGE can handle unicode, though, as can Rakudo | 21:50 | |
| NotFound | pmichaud: and parrot... but not very well ATM. | ||
| pmichaud | I think the blocker before was a minor issue in HLLCompiler or in PGE that may have been fixed | ||
| NotFound | pmichaud: did you refer to an item I closed some two months ago? | 21:51 | |
| pmichaud tests xmodmap mappings: « » ¢ | |||
| NotFound: no. | 21:54 | ||
| I'm referring to some changes I made to PGE and HLLCompiler a couple of months ago. :-) | |||
| dalek | r30864 | moritz++ | trunk: | 21:56 | |
| : [rakudo] parse m/.../ and similar regex forms. Closes RT #57346 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30864 | |||
| moritz | it doesn't compile when I uncomment the Ā« line | ||
| Illegal escape sequence no '}' | |||
| on the perl6.pir -> perl6.pbc step | |||
| pmichaud | okay, I'll look into it. | ||
|
21:57
kid51 joined
|
|||
| kid51 | cotto_home ping | 22:14 | |
|
22:21
bacek joined
22:23
Whiteknight joined
|
|||
| dalek | r30865 | moritz++ | trunk: | 22:28 | |
| : [cage] make codetest a bit happier (copyright notice, coda) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30865 | |||
| r30866 | moritz++ | trunk: | 22:30 | ||
| : [cage] correct svn Id tag | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30866 | |||
| r30867 | moritz++ | trunk: | 22:38 | ||
| : [rakudo] tools/autounfudge.pl: add --exclude options and exclude long running | |||
| : and looping tests by default | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30867 | |||
| cotto_home | kid51: pong, even though you won't see it | 22:43 | |
| summon kid51 | 22:56 | ||
|
22:56
rdice joined
|
|||
| dalek | r30868 | tene++ | trunk: | 22:59 | |
| : Use P6object to create the class for PGE Grammar classes. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30868 | 23:00 | ||
| r30869 | tene++ | trunk: | |||
| : [cardinal] | |||
| : * Fix a grammar bug | |||
| : * One more passing test file | |||
| : * Update a couple of tests to use test.rb | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30869 | |||
|
23:09
TonyC joined
|
|||
| cotto_home | NotFound, ping | 23:10 | |
| nopaste | "cotto_home" at 96.26.202.243 pasted "trying to compile Xlib.pir - im doin it rong" (3 lines) at nopaste.snit.ch/13995 | ||
|
23:11
tetragon joined
|
|||
| cotto_home | what's the right way to do that? | 23:11 | |
| purl | i heard the right way to do that was on my gateway device, be it a router, a foonix firewall, etc. If my client is also my gateway... | ||
| cotto_home | no, the right way is <reply> | ||
| purl | okay, cotto_home. | ||
| cotto_home | botsnack | ||
| purl | thanks cotto_home :) | ||
| cotto_home | no, the right way to do that is <reply> | 23:12 | |
| purl | okay, cotto_home. | ||
| NotFound | cotto_home: pong | 23:13 | |
| cotto_home | what's the right way to compile Xlib.pir? | 23:15 | |
| NotFound | cotto_home: looks like the -o option must be before the source. | ||
| I tried your way, and gives me same error. | 23:16 | ||
| cotto_home | of course | ||
| otherwise parrot thinks I'm trying to pass something to Xlib.pir | |||
| do you mind if I add that to xlibtest.pir? | 23:18 | ||
| NotFound | The command to compile the lib? Not a bad idea. | 23:21 | |
| cotto_home | done | 23:26 | |
| dalek | r30870 | julianalbo++ | trunk: | 23:27 | |
| : applied a modified version of mhelix patch in RT#58030 that solves several parameter passing problems | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30870 | |||
| r30871 | cotto++ | trunk: | |||
| : [t] update t/pmc/hash.t to avoid deprecated non-$ register names | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30871 | |||
| r30872 | cotto++ | trunk: | |||
| : [examples] add compilation instructions to xlibtest.pir | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30872 | |||
| NotFound | If someone have in mind some optional parameter problem, please check with r30870 | 23:32 | |
| (or later) | 23:33 | ||
| cotto_home | NotFound, should #58030 be closed now that you've applied the patch, or is it just a temporary workaround? | 23:40 | |
| NotFound | cotto_home: must be temporary, but who knows... ;) | 23:41 | |
| But don't close yet, wait at least to tomorrow. | |||
| I want to do some checks, and must go to bed now. | 23:42 | ||
| cotto_home | It's yours to close. I was just checking. | 23:43 | |
| NotFound | I like that patch, even if ugly :) | ||
| dalek | r30873 | cotto++ | trunk: | 23:45 | |
| : [credits] add mhelix++ for #54860 fix | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=30873 | |||
|
23:53
kid51 joined
|
|||
| kid51 | cotto_home ping | 23:55 | |
|
23:56
TiMBuS joined
|
|||